Some more numbers: I took guile22-experiment and removed the following:
 * GC_set_free_space_divisor,
 * GC_INITIAL_HEAP_SIZE=40M
 * heap growing in Score_engraver

This gives me: ~2m30s (although I saw one run in 1m55s?!?)
GC_INITIAL_HEAP_SIZE=40M: ~2m10s (one run in 1m40s)
GC_FREE_SPACE_DIVISOR=1: very diverse - from ~1m10s (2 executions) to
~2m40s (3 executions)
GC_NPROCS=1: from ~1m45s to ~2m10s

This variation makes any statement about performance impractical. I
tried
taskset -c 2 + GC_NPROCS=1: ~2m10s
and it seems stable, but I have yet to build a theory why OS thread
migration actually improves performance...

Han-Wen, did you see similar variations in your experiments?

https://codereview.appspot.com/561390043/

Reply via email to