On Monday, 16 April 2012 at 11:30:52 UTC, deadalnix wrote:
Le 16/04/2012 11:25, Walter Bright a écrit :

As for data that has no pointers, something has to indicate that. Of course, another strategy is to allocate such data in separate pools. In fact, that might be an excellent idea, as such pools would never have to be read (i.e. swapped in, loaded into cache) during the mark/sweep process.

That is exactly what I meant. Metadata about the block shouldn't be stored anywhere near the block, because it will behave horribly wrong when swap come into play. Metadata must be read and written when GC does its job, but the block itself doesn't require it.

+1
Agree, the metadata should be stored in a allocator private pool for cache reasons.

Reply via email to