[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MIT-Scheme-devel] [commit f372dae] Don't call OS_free_pages after G

From: Taylor R Campbell
Subject: Re: [MIT-Scheme-devel] [commit f372dae] Don't call OS_free_pages after GC flip. We don't resize the heap and we will be reusing it.
Date: Thu, 6 Oct 2011 02:50:34 +0000
User-agent: IMAIL/1.21; Edwin/3.116; MIT-Scheme/9.1

   Date: Wed, 5 Oct 2011 17:24:28 -0700
   From: Joe Marshall <address@hidden>

   as you can see, it makes a big difference at the larger heap sizes.

Contrariwise, if I have six Scheme processes that have not freed their
unused pages and the OS is constantly swapping, then the whole world
gets much, much slower, especially at larger heap sizes.  That's why I
put it in there in the first place.

                      (it is linear in the number of pages and I suspect
   that the implementation provides guarantees of zeroing out the physical

It's not supposed to guarantee zeroing.  Maybe I misunderstood Linux's
MADV_DONTNEED -- which would not be surprising, because on Linux it is
a destructive operation whereas everywhere else it is non-destructive
(and not useful for this purpose).

In NetBSD and everywhere else I looked, MADV_FREE means that the VM
system is welcome to discard the backing for the pages if physical
memory is short, but is not required to do anything to them.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]