One thing I found missing was support to initialize thread-local variables of a data structure once OMP threads are created in benchmark_t::run. Maybe an optional method can be added to the base class tree_api which at least takes an int tid as input (this is returned by omp_get_thread_num() in the run method).
One thing I found missing was support to initialize thread-local variables of a data structure once OMP threads are created in
benchmark_t::run
. Maybe an optional method can be added to the base classtree_api
which at least takes anint tid
as input (this is returned byomp_get_thread_num()
in the run method).For eg, adding the following method to https://github.com/sfu-dis/pibench/blob/master/include/tree_api.hpp, which can be optionally implemented by wrapper classes: