@@ -30,27 +30,39 @@ Usage: ${0##*/} [-h] [--type single_core|all_core|multi_thread]
3030EOF
3131}
3232
33- prod_benchmark_list_mem=" memcpy_benchmark bench-memcmp"
33+ prod_benchmark_list_mem=" memcpy_benchmark bench-memcmp memset_benchmark "
3434prod_benchmark_list_hash=" hash_hash_benchmark xxhash_benchmark"
3535prod_benchmark_compression=" lzbench"
3636prod_benchmark_crypto=" openssl libaegis_benchmark"
37- prod_benchmark_checksum=" hash_checksum_benchmark"
37+ prod_benchmark_checksum=" hash_checksum_benchmark erase_code_perf "
3838prod_benchmark_rng=" random_benchmark"
3939prod_benchmark_chm=" concurrency_concurrent_hash_map_bench"
4040prod_benchmark_thrift=" ProtocolBench VarintUtilsBench"
4141prod_benchmark_f14=" container_hash_maps_bench"
4242prod_benchmark_lock=" synchronization_small_locks_benchmark synchronization_lifo_sem_bench"
4343prod_benchmark_vdso=" vdso_bench"
4444
45- prod_benchmarks=" memcpy_benchmark bench-memcmp hash_hash_benchmark xxhash_benchmark lzbench openssl libaegis_benchmark hash_checksum_benchmark random_benchmark concurrency_concurrent_hash_map_bench ProtocolBench VarintUtilsBench container_hash_maps_bench synchronization_small_locks_benchmark synchronization_lifo_sem_bench vdso_bench"
45+ prod_benchmarks=" memcpy_benchmark memset_benchmark bench-memcmp hash_hash_benchmark xxhash_benchmark lzbench openssl libaegis_benchmark hash_checksum_benchmark random_benchmark concurrency_concurrent_hash_map_bench ProtocolBench VarintUtilsBench container_hash_maps_bench synchronization_small_locks_benchmark synchronization_lifo_sem_bench vdso_bench"
4646
47- benchmark_non_json_list=(" openssl" " libaegis_benchmark" " lzbench" " vdso_bench" " xxhash_benchmark" " concurrency_concurrent_hash_map_bench" " container_hash_maps_bench" )
47+ benchmark_non_json_list=(" openssl" " libaegis_benchmark" " lzbench" " vdso_bench" " xxhash_benchmark" " concurrency_concurrent_hash_map_bench" " container_hash_maps_bench" " erase_code_perf" )
48+
49+ exec_non_json () {
50+ local input=" $1 "
51+ for item in " ${benchmark_non_json_list[@]} " ; do
52+ if [[ " $item " == " $input " ]]; then
53+ return 0
54+ fi
55+ done
56+
57+ return 1
58+ }
4859
4960run_list=" "
5061
5162declare -A prod_benchmark_config=(
5263 [' random_benchmark' ]=" --bm_regex=xoshiro --json"
5364 [' memcpy_benchmark' ]=" --json"
65+ [' memset_benchmark' ]=" --json"
5466 [' hash_hash_benchmark' ]=" --bm_regex=RapidHash --json"
5567 [' hash_checksum_benchmark' ]=" --json"
5668 [' synchronization_lifo_sem_bench' ]=" --bm_min_iters=1000000 --json"
@@ -59,12 +71,13 @@ declare -A prod_benchmark_config=(
5971 [' ProtocolBench' ]=" --bm_regex=\" (^Binary)|(^Compact)Protocol\" --json"
6072 [' VarintUtilsBench' ]=" --json"
6173 [' concurrency_concurrent_hash_map_bench' ]=" "
62- [' lzbench' ]=" -v -ezstd1, 3 ${WDL_DATASETS} /${dataset} "
74+ [' lzbench' ]=" -v -ezstd,1, 3 ${WDL_DATASETS} /silesia.tar "
6375 [' openssl' ]=" speed -seconds 20 -evp aes-256-gcm"
6476 [' vdso_bench' ]=" -t 10 -p 20"
6577 [' libaegis_benchmark' ]=" "
6678 [' xxhash_benchmark' ]=" xxh3"
6779 [' bench-memcmp' ]=" "
80+ [' erase_code_perf' ]=" "
6881)
6982
7083main () {
@@ -123,12 +136,12 @@ main() {
123136 ldconfig
124137 fi
125138 out_file=" "
126- if [[ " $benchmark_non_json_list {[*]} " =~ " ${ benchmark} " ]] ; then
139+ if exec_non_json " ${ benchmark}" ; then
127140 out_file=" out_${benchmark} .txt"
128141 else
129142 out_file=" out_${benchmark} .json"
130143 fi
131- " ./${benchmark} " " ${prod_benchmark_config[$benchmark]} " 2>&1 | tee -a " ${out_file} "
144+ bash -c " ./${benchmark} ${prod_benchmark_config[$benchmark]} " 2>&1 | tee -a " ${out_file} "
132145 if [ " $benchmark " = " openssl" ]; then
133146 unset LD_LIBRARY_PATH
134147 ldconfig
@@ -142,7 +155,7 @@ main() {
142155 fi
143156
144157 for benchmark in $run_list ; do
145- if [[ " $benchmark_non_json_list {[*]} " =~ " ${ benchmark} " ]] ; then
158+ if exec_non_json " ${ benchmark}" ; then
146159 python3 ./convert.py " $benchmark "
147160 fi
148161 done
0 commit comments