[Gc] Re: slowdown with USE_MUNMAP

Michal Moskal michal.moskal at gmail.com
Mon Aug 22 03:17:28 PDT 2005


On 8/21/05, Michal Moskal <michal.moskal at gmail.com> wrote:
> After some investigation I've managed to create a simple C testcase
> (as lupus suggested). It seems that -DUSE_MUNMAP makes garbage collection
> to be called twice as many times, -DUSE_MMAP
> doesn't seem to affect that. The question is: is it normal? How can it
> be avoided?

Lupus suggested I test the following patch:

Index: allchblk.c
===================================================================
--- allchblk.c  (revision 48620)
+++ allchblk.c  (working copy)
@@ -589,7 +589,7 @@
                && USED_HEAP_SIZE >= GC_requested_heapsize
                && !TRUE_INCREMENTAL && GC_should_collect()) {
 #              ifdef USE_MUNMAP
-                   continue;
+                   // continue;
 #              else
                    /* If we have enough large blocks left to cover any */
                    /* previous request for large blocks, we go ahead   */

It indeed helped -- the speed is back to normal, but the memory usage
is as without MUNMAP.

The question is now -- is it safe to remove this continue?

-- 
   Michal Moskal,
   http://nemerle.org/~malekith/



More information about the Gc mailing list