I guess this request depends on how entity/chunk/shared data relationships work. From what I understand, setting shared component data on a per entity bases would move the individual entity in question to a different different archetype chunk. Would it be worth while from a performance standpoint to be able to set the shared data for the entire chunk at once and let the entity system manage moving/compacting entities amongst the affected archetypes? I imagine full chunks/chunks that move into empty archetypes would be very cheap to change as no moving or shifting of entities would be required, just some updates to chunk archetypes. This could make ISharedComponentData a more efficient alternative to managing certain types of entity state versus the current IComponentData tagging system. Of course I have no idea how this works internally so maybe I'm wrong.