perf between tbb::concurrent_unordered_map and std::unordered_map

perf between tbb::concurrent_unordered_map and std::unordered_map


Hi experts,

I did a little update to the official perf tool in https://github.com/intel/tbb/blob/tbb_2020/src/perf/time_hash_map.cpp, (my updated code is attached.)

and aim to compare the perf between tbb::concurrent_unordered_map and std::unordered_map. 

the result i got is a little weird to me, it shows the ave latency for single find/update operation drops a lot after the table size grow larger than a certain value, (it's around 2000000 in my side)

So is this result expected? anyone know why the perf drops worse than std::unordered_map when table size grow larger?

i tried to pre-allocate the capacity of hash table, but the result are still the same.

 

axial x means element count in table,  axial y means latency in nano sec.

AdjuntoTamaño
Descargartext/x-c++src time_hash_map.cpp8.33 KB
1 envío / 0 nuevos