Skip to content

UT[bmqc]: get rid of libbenchmark, add benchmarks#1293

Open
678098 wants to merge 3 commits intobloomberg:mainfrom
678098:260410_bench_bmqc_hashmaps
Open

UT[bmqc]: get rid of libbenchmark, add benchmarks#1293
678098 wants to merge 3 commits intobloomberg:mainfrom
678098:260410_bench_bmqc_hashmaps

Conversation

@678098
Copy link
Copy Markdown
Collaborator

@678098 678098 commented Apr 10, 2026

Benchmarks (darwin)

                    Map::insert | Elements | Time (ns) | Per op (ns)
====================================================================
bmqc::OrderedHashMapWithHistory |  5000000 | 903171583 |         180
           bmqc::OrderedHashMap |  5000000 | 325063542 |          65
             bsl::unordered_map |  5000000 | 588688667 |         117

                     Map::erase | Elements | Time (ns) | Per op (ns)
====================================================================
bmqc::OrderedHashMapWithHistory |  5000000 | 410941709 |          82
           bmqc::OrderedHashMap |  5000000 | 217761750 |          43
             bsl::unordered_map |  5000000 | 319221833 |          63

                      Map::find | Elements | Time (ns) | Per op (ns)
====================================================================
bmqc::OrderedHashMapWithHistory |  5000000 | 116258417 |          23
           bmqc::OrderedHashMap |  5000000 |  68910958 |          13
             bsl::unordered_map |  5000000 | 174589125 |          34

Surprisingly, bmqc::OrderedHashMap greatly outperforms bsl::unordered_map.
bmqc::OrderedHashMapWithHistory is mostly slower than bsl::unordered_map.

@678098 678098 requested a review from a team as a code owner April 10, 2026 21:55
678098 added 3 commits April 24, 2026 18:01
Signed-off-by: Evgeny Malygin <emalygin@bloomberg.net>
Signed-off-by: Evgeny Malygin <emalygin@bloomberg.net>
Signed-off-by: Evgeny Malygin <emalygin@bloomberg.net>
@678098 678098 force-pushed the 260410_bench_bmqc_hashmaps branch from f63428a to 65c8068 Compare April 24, 2026 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant