mirror of
https://github.com/boostorg/boost_unordered_benchmarks.git
synced 2026-01-19 04:02:13 +00:00
quadratic_range_copy_fix
boost::unordered_flat_map benchmarks
Automated benchmarks of boost::unordered_flat_map against boost::unordered_map and absl::flat_hash_map.
Benchmarks
running_insertion.cpp: insertion of n random entries into a map of (uint64_t,uint64_t) pairs, n ranging from 10,000 to 10M.running_erasure.cpp: traversal of a map withnelements filled as before and erasure of entries with odd key (50% on average).scattered_lookup.cpp- Successful: lookup of the
nkeys of the container in the same order as inserted. - Unsuccesful: lookup of
nrandom keys not related to those inserted (and thus not present in the container with probabilty ~100%).
- Successful: lookup of the
How to read the results
Folder
gcc-x64: GCC 11, x64clang-x64: Clang 12, x64vs-x64: Visual Studio 2019, x64clang-arm64: Clang 12 ARM64gcc-x86: GCC 11, x86clang-x86: Clang 12, x86vs-x86: Visual Studio 2019, x86
Excel file
Running insertion.xlsx: results ofrunning_insertion.cppRunning erasure.xlsx: results ofrunning_erasure.cppScattered successful looukp.xlsx: results ofscattered_lookup.cpp, successful caseScattered unsuccessful looukp.xlsx: results ofscattered_lookup.cpp, unsuccessful case
Graphs
GCC 11, x64
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Clang 12, x64
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Visual Studio 2019, x64
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Clang 12, ARM64
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
GCC 11, x86
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Clang 12, x86
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Visual Studio 2019, x86
| Running insertion | Running erasure | Successful lookup | Unsuccessful lookup |
Description