On Tue, May 31, 2016 at 16:12:32 +0100, Alex Bennée wrote: > Emilio G. Cota <c...@braap.org> writes: > > This serves as a performance benchmark as well as a stress test > > for QHT. We can tweak quite a number of things, including the > > number of resize threads and how frequently resizes are triggered. > > > > A performance comparison of QHT vs CLHT[1] and ck_hs[2] using > > this same benchmark program can be found here: > > http://imgur.com/a/0Bms4 > > > > The tests are run on a 64-core AMD Opteron 6376. > > It would be useful to include the template of the command line arguments > for these plots here. For example when I run it without any arguments I > get: > > > Results: > Read: 34.21 M (100.00% of 34.21M) > Inserted: 0.00 M (-nan% of 0.00M) > Removed: 0.00 M (-nan% of 0.00M) > Throughput: 34.21 MT/s > Throughput/thread: 34.21 MT/s/thread > > Looking at the graph it says 200k keys, so: > > $ ./tests/qht-bench -k 200000 > qht-bench: tests/qht-bench.c:309: htable_init: Assertion `init_size <= > init_range ` > > So I'm a little confused on how I'm running this benchmark.
./qht-bench -d $duration -n $n -u $u -k $range -K $range -l $range -r $range -s $range where $duration is in seconds, $n is the number of threads, $u is the update rate (0.0 to 100.0), and $range is the number of keys. Most people will want to set all of -k,K,l,r,s to the same value, so it might be a good idea to add another parameter to set them all at once. E.