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.
signature.asc
Description: PGP signature
