1.0.20.6: smaller allocation regions & reduced pinning
authorNikodemus Siivola <nikodemus@random-state.net>
Mon, 15 Sep 2008 14:09:56 +0000 (14:09 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Mon, 15 Sep 2008 14:09:56 +0000 (14:09 +0000)
commit5da75508b2aff50228b2d9492d6913d586e3b419
tree73d508a1e487440afb86bbe01e424ece26a99292
parent519b843c9d1af8138a5ec15516702249a71ffa92
1.0.20.6: smaller allocation regions & reduced pinning

 * Align objects at least one page in size on page boundaries.
   Previously only "large" objects (those at least 4 pages in size)
   were guaranteed page alignment.

 * Don't allow small objects to cross page boundaries.

 * The effect is to reduce the size of continuous allocation regions
   that start and stop on page boundaries. Since GENCGC conservativism
   operates on such regions, it's effects are reduced as well: for
   SBCL self build this reduces the number of pinned pages by ~45%.

 * Also report the amount of bytes found (in case of allocation
   failure) more accurately.
NEWS
src/runtime/gencgc.c
version.lisp-expr