Skip to content

Instantly share code, notes, and snippets.

@LouisJenkinsCS
Forked from dgarvit/acq_release.txt
Last active February 7, 2020 22:22
Show Gist options
  • Save LouisJenkinsCS/af7da6ca7d0bb336d3a76c8291f34f2e to your computer and use it in GitHub Desktop.
Save LouisJenkinsCS/af7da6ca7d0bb336d3a76c8291f34f2e to your computer and use it in GitHub Desktop.
Benchmark results for atomic int and atomicobjects (strong scaling)
set terminal postscript enhanced color
set output 'atomic_object.ps'
set multiplot layout 1,2 title "AtomicObject vs atomic int" font ",14"
set xtics rotate
set bmargin 5
#
set title "Distributed Memory"
set logscale x 2
set logscale y 10
set xlabel "Locales"
set ylabel "Time (seconds)"
plot 'dist_atomics_combined.txt' using 1:2 t 'atomic int (none)' with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'atomic int (ugni)' with linespoints ls 4 lc rgb 'red', \
'' using 1:4 t 'AtomicObject (ABA)' with linespoints ls 5 lc rgb 'blue', \
'' using 1:5 t 'AtomicObject (none)' with linespoints ls 7 lc rgb 'green', \
'' using 1:6 t 'AtomicObject (ugni)' with linespoints ls 8 lc rgb 'green'
#
set title "Shared Memory"
set logscale x 2
set logscale y 10
set xlabel "Tasks"
set ylabel "Time (seconds)"
plot 'shared_memory.txt' using 1:2 t "atomic int" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'AtomicObject (ABA)' with linespoints ls 5 lc rgb 'blue', \
'' using 1:4 t 'AtomicObject' with linespoints ls 7 lc rgb 'green'
unset multiplot
# network_atomics=none
# 25% read, 25% write, 25% cas, 25% exchange
# atomic int (w/o network atomics), atomic int (w/ network atomics), AtomicObject w/ ABA, AtomicObject w/o ABA (w/o network atomics), AtomicObject w/o ABA (w/ network atomics)
1 0.0185367 0.018523 0.092457 0.018407 0.0183873
2 1.95719 0.192598 1.43005 1.90417 0.18238
4 4.85293 0.362432 4.49971 4.9263 0.35061
8 14.8705 0.670075 13.1667 15.2733 0.655051
16 22.2947 1.35869 28.15 21.887 1.3413
32 47.5409 2.59045 41.9057 46.1025 2.5551
64 92.0024 5.36364 86.7444 136.218 5.32405
# network_atomics=none
# 25% read, 25% write, 25% cas, 25% exchange
# atomic int, AtomicObject w/o ABA, AtomicObject w/ ABA
1 0.0185367 0.018407 0.092457
2 1.95719 1.90417 1.43005
4 4.85293 4.9263 4.49971
8 14.8705 15.2733 13.1667
16 22.2947 21.887 28.15
32 47.5409 46.1025 41.9057
64 92.0024 136.218 86.7444
# network_atomics=ugni
# 25% read, 25% write, 25% cas, 25% exchange
# atomic int, AtomicObject w/o ABA, AtomicObject w/ ABA
1 0.018523 0.0183873 0.0870547
2 0.192598 0.18238 1.50747
4 0.362432 0.35061 4.12241
8 0.670075 0.655051 10.189
16 1.35869 1.3413 20.7713
32 2.59045 2.5551 43.2426
64 5.36364 5.32405 88.583
# Raw pin/unpin only
# w/o network atomics, w/ network atomics
# 16 M objects allocated per locale
# numLocales, none, ugni
1 1.5583 0.020405
2 1.5739 0.02442
4 1.57621 0.027286
8 1.60641 0.031058
16 1.61897 0.034931
32 1.66524 0.037625
64 1.60011 0.034682
set terminal postscript enhanced color
set output 'pin_unpin_cleanup_at_end.ps'
set multiplot layout 1,3 title "Pin-Unpin w/ Deletion + Cleanup" font ",14"
set xtics rotate
set bmargin 5
set logscale x 2
set logscale y 10
set xlabel "Locales"
set ylabel "Time (seconds)"
#
set title "0% Remote Objects"
plot 'pin_unpin_cleanup_at_end_0.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "50% Remote Objects"
plot 'pin_unpin_cleanup_at_end_50.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "100% Remote Objects"
plot 'pin_unpin_cleanup_at_end_100.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
unset multiplot
# Scatter objects, reclaim only at the end
# 16 M objects, remote objects = 0%
# numLocales, none, ugni
1 3.01622 3.23368
2 1.73897 1.79263
4 0.949635 0.928954
8 0.494047 0.504681
16 0.240596 0.243599
32 0.118549 0.113414
64 0.071424 0.062002
# Scatter objects, reclaim only at the end
# 16 M objects, remote objects = 100%
# numLocales, none, ugni
2 3.00645 2.83844
4 1.314 1.31252
8 0.73029 0.715171
16 0.31973 0.312898
32 0.172545 0.16615
64 0.146659 0.143915
# Scatter objects, reclaim only at the end
# 16 M objects, remote objects = 50%
# numLocales, none, ugni
1 3.19511 2.89224
2 2.35302 3.14617
4 1.29514 1.43341
8 0.592913 0.574766
16 0.275421 0.262863
32 0.163127 0.165822
64 0.133604 0.125364
set terminal postscript enhanced color
set output 'pin_unpin_tryReclaim_dense.ps'
set multiplot layout 1,3 title "Pin-Unpin w/ Dense tryReclaim" font ",14"
set xtics rotate
set bmargin 5
set logscale x 2
set logscale y 10
set xlabel "Locales"
set ylabel "Time (seconds)"
#
set title "0% Remote Objects"
plot 'pin_unpin_tryReclaim_dense_0.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "50% Remote Objects"
plot 'pin_unpin_tryReclaim_dense_50.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "100% Remote Objects"
plot 'pin_unpin_tryReclaim_dense_100.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
unset multiplot
# tryReclaim called on each iteration. All objects reclaimed at the end
# 16 M objects, remote objects = 0%
# numLocales, none, ugni
2 24.3329 36.3917
4 16.9483 11.4566
8 8.16048 7.37764
16 1.86781 2.07477
32 1.33171 0.884615
64 2.12355 0.884615
# tryReclaim called on each iteration. All objects reclaimed at the end
# 16 M objects, remote objects = 50%
# numLocales, none, ugni
2 62.2337 65.542
4 46.3269 42.2798
8 12.9241 7.03221
16 3.49247 3.84031
32 0.978118 1.60883
64 1.42868 1.29031
# tryReclaim called on each iteration. All objects reclaimed at the end
# 16 M objects, remote objects = 50%
# numLocales, none, ugni
2 75.0014 74.9564
4 28.4006 39.8863
8 7.60779 8.75939
16 1.75963 0.92106
32 0.860927 1.03701
64 1.91016 1.38647
set terminal postscript enhanced color
set output 'pin_unpin_tryReclaim_sparse.ps'
set multiplot layout 1,3 title "Pin-Unpin w/ Sparse tryReclaim" font ",14"
set xtics rotate
set bmargin 5
set logscale x 2
set logscale y 10
set xlabel "Locales"
set ylabel "Time (seconds)"
#
set title "0% Remote Objects"
plot 'pin_unpin_tryReclaim_sparse_0.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "50% Remote Objects"
plot 'pin_unpin_tryReclaim_sparse_50.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
set title "100% Remote Objects"
plot 'pin_unpin_tryReclaim_sparse_100.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
#
unset multiplot
# tryReclaim called 1/1024 iterations. All memory reclaimed at the end.
# 16 M objects, remote objects = 0%
# numLocales, none, ugni
1 4.78635 4.81969
2 3.05447 2.90258
4 1.31221 1.44132
8 0.934623 0.777721
16 0.83715 0.378633
32 0.166274 0.171634
64 0.116134 0.094303
# tryReclaim called 1/1024 iterations. All memory reclaimed at the end.
# 16 M objects, remote objects = 0%
# numLocales, none, ugni
2 9.74631 13.2958
4 4.65984 4.54318
8 1.09008 1.02502
16 0.502708 1.52756
32 0.328833 0.773113
64 0.233762 0.236703
# tryReclaim called 1/1024 iterations. All memory reclaimed at the end.
# 16 M objects, remote objects = 0%
# numLocales, none, ugni
1 5.08817 5.11413
2 7.01981 9.78018
4 2.87718 3.55263
8 1.04423 0.842866
16 0.410427 0.467695
32 0.251934 0.280016
64 0.197843 0.165609
set terminal postscript enhanced color
set output 'raw_pin_unpin.ps'
set title "Pin-Unpin" font ",14"
set xtics rotate
set bmargin 5
set logscale x 2
set logscale y 10
set xlabel "Locales"
set ylabel "Time (seconds)"
plot 'pin_unpin.txt' using 1:2 t "none" with linespoints ls 3 lc rgb 'red', \
'' using 1:3 t 'ugni' with linespoints ls 5 lc rgb 'blue'
# Atomic Int, AtomicObject w/o ABA, Atomic w/ ABA
# 25% read, 25% write, 25% cas, 25% exchange
1 0.0330617 0.0472 0.0494153
2 0.0861463 0.088331 0.11394
4 0.186779 0.184917 0.256564
8 0.355418 0.388866 0.525748
16 0.724626 0.816834 1.23689
32 1.44616 1.69394 2.55617
44 2.32923 2.31256 3.54687
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment