libstdc++: [_Hashtable] Enhance performance benches
Add benches on insert with hint and before begin cache. libstdc++-v3/ChangeLog: * testsuite/performance/23_containers/insert/54075.cc: Add lookup on unknown entries w/o copy to see potential impact of memory fragmentation enhancements. * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc: Enhance hash functor to make it perfect, exactly 1 entry per bucket. Also use hash functor tagged as slow or not to bench w/o hash code cache. * testsuite/performance/23_containers/insert/unordered_set_hint.cc: New test case. Like previous one but using std::unordered_set. * testsuite/performance/23_containers/insert/unordered_set_range_insert.cc: New test case. Check performance of range-insertion compared to individual insertions. * testsuite/performance/23_containers/insert_erase/unordered_small_size.cc: Add same bench but after a copy to demonstrate impact of enhancements regarding memory fragmentation.
Showing
- libstdc++-v3/testsuite/performance/23_containers/insert/54075.cc 114 additions, 56 deletions...++-v3/testsuite/performance/23_containers/insert/54075.cc
- libstdc++-v3/testsuite/performance/23_containers/insert/unordered_multiset_hint.cc 132 additions, 265 deletions...rformance/23_containers/insert/unordered_multiset_hint.cc
- libstdc++-v3/testsuite/performance/23_containers/insert/unordered_set_hint.cc 186 additions, 0 deletions...te/performance/23_containers/insert/unordered_set_hint.cc
- libstdc++-v3/testsuite/performance/23_containers/insert/unordered_set_range_insert.cc 211 additions, 0 deletions...rmance/23_containers/insert/unordered_set_range_insert.cc
- libstdc++-v3/testsuite/performance/23_containers/insert_erase/unordered_small_size.cc 19 additions, 4 deletions...rmance/23_containers/insert_erase/unordered_small_size.cc
Loading
Please register or sign in to comment