]> gcc.gnu.org Git - gcc.git/commit
libstdc++: [_Hashtable] Enhance performance benches
authorFrançois Dumont <fdumont@gcc.gnu.org>
Wed, 3 May 2023 04:38:16 +0000 (06:38 +0200)
committerFrançois Dumont <fdumont@gcc.gnu.org>
Sun, 31 Dec 2023 16:53:27 +0000 (17:53 +0100)
commit91b334d02772d0864c168353ccf92287b6bfefe7
treef2a384c3d6ec1eb6df63b78ec07b42c2b3b7bce6
parent03fb8f274c29bfeb9a457e79c19be72e2e24e2d3
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.
libstdc++-v3/testsuite/performance/23_containers/insert/54075.cc
libstdc++-v3/testsuite/performance/23_containers/insert/unordered_multiset_hint.cc
libstdc++-v3/testsuite/performance/23_containers/insert/unordered_set_hint.cc [new file with mode: 0644]
libstdc++-v3/testsuite/performance/23_containers/insert/unordered_set_range_insert.cc [new file with mode: 0644]
libstdc++-v3/testsuite/performance/23_containers/insert_erase/unordered_small_size.cc
This page took 0.06221 seconds and 6 git commands to generate.