On Wed, 12 Nov 2014 16:13:39 +0000
via Digitalmars-d <[email protected]> wrote:

> On Wednesday, 12 November 2014 at 16:06:32 UTC, ketmar via 
> Digitalmars-d wrote:
> > if i'll use libc malloc() for allocating, everything works as i
> > expected: address space consumtion is on par with allocation 
> > size.
> 
> The gc uses C's calloc rather implementing memory handling itself 
> using the OS so you get fragmentation:
> 
> https://github.com/D-Programming-Language/druntime/blob/master/src/gc/gc.d#L2223
ah, and sorry once again, i was tired. ;-) the C program stops at
2,936,012,800, which is much more realistic. i checked three times and
it's really using libc `malloc()` now. so libc malloc is perfectly able
to merge segments, while D GC is not.

Attachment: signature.asc
Description: PGP signature

Reply via email to