wingo pushed a commit to branch wip-whippet
in repository guile.

commit 67f9c89f2a96f1c4ea52dcec161554dcf921f692
Author: Andy Wingo <wi...@igalia.com>
AuthorDate: Thu Aug 4 11:32:06 2022 +0200

    Use fragmentation_low_threshold for venerable_threshold
    
    This way fragmentation from venerable blocks doesn't cause the collector
    to keep evacuating.
---
 whippet.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/whippet.h b/whippet.h
index 466f58778..f8232bf44 100644
--- a/whippet.h
+++ b/whippet.h
@@ -1968,7 +1968,7 @@ static int mark_space_init(struct mark_space *space, 
struct heap *heap) {
   space->next_block = 0;
   space->evacuation_minimum_reserve = 0.02;
   space->evacuation_reserve = space->evacuation_minimum_reserve;
-  space->venerable_threshold = 0.1;
+  space->venerable_threshold = heap->fragmentation_low_threshold;
   for (size_t slab = 0; slab < nslabs; slab++) {
     for (size_t block = 0; block < NONMETA_BLOCKS_PER_SLAB; block++) {
       uintptr_t addr = (uintptr_t)slabs[slab].blocks[block].data;

Reply via email to