DMD compilation speed

Daniel Murphy via Digitalmars-d digitalmars-d at puremagic.com
Tue Mar 31 03:03:26 PDT 2015


"Vladimir Panteleev"  wrote in message 
news:remgknxogqlfwfnsubce at forum.dlang.org...

> Recording the information necessary to free memory costs performance (and 
> more memory) itself. With a basic bump-the-pointer scheme, you don't need 
> to worry about page sizes or free lists or heap fragmentation - all 
> allocated data is contiguous, there is no metadata, and you can't back out 
> of that.

It's possible that we could use a hybrid approach, where a GB or so is 
allocated from the GC in one chunk, then filled up using a bump-pointer 
allocator.  When that's exhausted, the GC can start being used as normal for 
the rest of the compilation.  The big chunk will obviously never be freed, 
but the GC still has a good chance to keep memory usage under control.  (on 
64-bit at least) 



More information about the Digitalmars-d mailing list