Attaching dynamic usage graphs for 5 testcases: default: gc-stress-parallel.exe --parallel 5 --size 2500 --count 5000 --total 100000 default2: gc-stress-parallel.exe --parallel 5 --size 2500 --count 5000 --total 10000 with-extra-gc: gc-stress-parallel.exe --parallel 5 --size 2500 --count 5000 --with-extra-gc t with-extra-sleep: gc-stress-parallel.exe --parallel 5 --size 2500 --count 5000 --with-extra-sleep 0.01 without-clear-cells: gc-stress-parallel.exe --parallel 5 --size 2500 --count 5000 --with-clear-cells nil
Note that clearing out the list cells referencing the garbage makes a huge difference: without it, the heap exhaustion occurs already after <1000 iterations:
#iterations until out-of-heap 1666 default/dynamic-space-usage__parallel-5__size-2500__count-5000.csv 2289 default2/dynamic-space-usage__parallel-5__size-2500__count-5000.csv 2505 with-extra-gc/dynamic-space-usage__parallel-5__size-2500__count-5000__gc-T.csv 2528 with-extra-sleep/dynamic-space-usage__parallel-5__size-2500__count-5000__sleep-0.01.csv 544 without-clear-cells/dynamic-space-usage__parallel-5__size-2500__count-5000.csv
Attaching dynamic usage graphs for 5 testcases: parallel. exe --parallel 5 --size 2500 --count 5000 --total 100000 parallel. exe --parallel 5 --size 2500 --count 5000 --total 10000 parallel. exe --parallel 5 --size 2500 --count 5000 --with-extra-gc t parallel. exe --parallel 5 --size 2500 --count 5000 --with-extra-sleep 0.01 clear-cells: gc-stress- parallel. exe --parallel 5 --size 2500 --count 5000 --with-clear-cells nil
default: gc-stress-
default2: gc-stress-
with-extra-gc: gc-stress-
with-extra-sleep: gc-stress-
without-
Note that clearing out the list cells referencing the garbage makes a huge difference:
without it, the heap exhaustion occurs already after <1000 iterations:
#iterations until out-of-heap dynamic- space-usage_ _parallel- 5__size- 2500__count- 5000.csv dynamic- space-usage_ _parallel- 5__size- 2500__count- 5000.csv gc/dynamic- space-usage_ _parallel- 5__size- 2500__count- 5000__gc- T.csv sleep/dynamic- space-usage_ _parallel- 5__size- 2500__count- 5000__sleep- 0.01.csv clear-cells/ dynamic- space-usage_ _parallel- 5__size- 2500__count- 5000.csv
1666 default/
2289 default2/
2505 with-extra-
2528 with-extra-
544 without-