-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tweak GC #5982
tweak GC #5982
Conversation
@@ -294,7 +294,8 @@ static struct custom_operations Z3_ast_plus_custom_ops = { | |||
Z3_ast_compare_ext | |||
}; | |||
|
|||
MK_CTX_OF(ast, 16) // let's say 16 bytes per ast | |||
// FUDGE | |||
MK_CTX_OF(ast, 8) // let's say 16 bytes per ast |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"let's say?" 8 is the new 16?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah, need to remove the comment :). These are size estimations, that the GC uses to guestimate how heavy a foreign value is. Seems like giving OCaml smaller estimations makes it faster here, it might be that it started garbage collecting like crazy with the previous change.
MK_PLUS_OBJ(ast_vector, 128) | ||
MK_PLUS_OBJ(fixedpoint, 20 * 1000 * 1000) | ||
MK_PLUS_OBJ(optimize, 20 * 1000 * 1000) | ||
// FUDGE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vanilla size?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's something I stole from Jasmin B, it's just to indicate a potential tweaking point for heuristics :).
Hi! Thank you very much for looking into this! |
Related to #5970. This improves times for us (backported on an older version); I haven't checked the memory usage yet. @giltho would you be interested in trying this branch?