More radical ideas about gc and reference counting

via Digitalmars-d digitalmars-d at puremagic.com
Mon May 12 11:14:28 PDT 2014


On Monday, 12 May 2014 at 17:52:18 UTC, Walter Bright wrote:
> On 5/12/2014 7:46 AM, Steven Schveighoffer wrote:
>> pointing at it is roughly 1/256. This problem is just about 
>> eliminated with
>> 64-bit pointers.

Not generally true. This presumes that the heap is not in the 
lower region of the address space and that you don't use 64 bit 
ints on the stack.

> Generally, it is a bad idea to allocate such large blocks on 
> the GC heap. GC's work best when the size of the objects being 
> allocated is very small relative to the size of the heap space.

Generally not true. This is a deficiency of not having a smart 
allocator / precise scanning that use available meta information 
properly (obtained statically or by profiling).

> Fortunately, it's a mathematical inevitability that large 
> allocations relative to the GC size are rare, and so it isn't 
> much of a pain to handle them manually.

Programmer pain is not measured in number of instances, but in 
terms of model complexity.

Ola.


More information about the Digitalmars-d mailing list