|
From: Nikodemus S. <nik...@ra...> - 2010-02-27 15:59:19
|
On 27 February 2010 17:07, Brett van de Sande <bv...@as...> wrote: > >>If this is "just" a performance issue, then a bigger nursery and >>making higher GENERATION-BYTES-CONSED-BETWEEN-GCS for the top-few >>generations will probably help. > > Doesn't work, see bug https://bugs.launchpad.net/sbcl/+bug/529014 Huh. I seem to have committed the wrong version. The page structure definition on the lisp side is missing lutexes at its end, so every generation after the first is off by one word. Commit coming in after freeze, here's the diff in the meanwhile: Index: src/code/gc.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/gc.lisp,v retrieving revision 1.90 diff -u -r1.90 gc.lisp --- src/code/gc.lisp 14 Feb 2010 20:17:40 -0000 1.90 +++ src/code/gc.lisp 27 Feb 2010 15:58:25 -0000 @@ -346,7 +346,9 @@ (number-of-gcs int) (number-of-gcs-before-promotion int) (cum-sum-bytes-allocated unsigned-long) - (minimum-age-before-gc double))) + (minimum-age-before-gc double) + ;; The space for lutexes is reserved on non-lutex platforms as well. + (lutexes (* t)))) #!+gencgc (define-alien-variable generations Cheers, -- Nikodemus |