unordered_dense
unordered_dense | boost_unordered_benchmarks | |
---|---|---|
12 | 5 | |
730 | 14 | |
- | - | |
7.1 | 1.3 | |
24 days ago | about 2 months ago | |
C++ | ||
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
unordered_dense
- unordered_dense: A Fast & Densely Stored Hashmap And Hashset Based On Robin-Hood Backward Shift Deletion
- unordered_dense: A fast, densely stored hashmap based on backward shift deletion
-
boost::unordered standalone
That's deprecated. Use https://github.com/martinus/unordered_dense instead And yes, tell use if it's any better(it should)
-
Is there an accepted way to order qualifiers?
No, I've deprecated it because the code has become a mess, I rewrote it quite differently and with much higher code quality and more features here: https://github.com/martinus/unordered_dense
-
Effortless Performance Improvements in C++: std::unordered_map
When no ordering is necessary and the number of elements is larger than 20, nothing beats https://github.com/martinus/unordered_dense (for general use).
-
Effortless Performance Improvements in C++: std:unordered_map
https://github.com/martinus/unordered_dense
Check this one out, it's a successor to this idea. Boost also introduced a very performant flat_hash_map in 1.81
-
Fuzzing is Cool, Actually
I have an API fuzz test for a hash map here: https://github.com/martinus/unordered_dense/blob/main/test/fuzz/api.cpp
-
A container with set interface based on std::vector
That sounds a bit like ankerl::unordered_dense::set: https://github.com/martinus/unordered_dense
- Inside boost::unordered_flat_map
- martinus/unordered_dense v1.4.0: A fast & densely stored hashmap, Now with heterogeneous overloads
boost_unordered_benchmarks
- Inside boost::concurrent_flat_map
-
[Using std::cpp] More than a rehash - Joaquín M López Muñoz
Why are the benchmarks using such old compilers?
-
Effortless Performance Improvements in C++: std::unordered_map
You can see the current results here.
-
Boost 1.81 will have boost::unordered_flat_map...
You can find some benchmarks here
What are some alternatives?
robin-map - C++ implementation of a fast hash map and hash set using robin hood hashing
think-cell-library - think-cell core library
STC - A modern, user friendly, generic, type-safe and fast C99 container library: String, Vector, Sorted and Unordered Map and Set, Deque, Forward List, Smart Pointers, Bitset and Random numbers.
robin-hood-hashing - Fast & memory efficient hashtable based on robin hood hashing for C++11/14/17/20
unordered - Boost.org unordered module
flat_hash_map - A very fast hashtable
parallel-hashmap - A family of header-only, very fast and memory-friendly hashmap and btree containers.
hashtable-benchmarks - An Evaluation of Linear Probing Hashtable Algorithms
Klib - A standalone and lightweight C library
Hopscotch map - C++ implementation of a fast hash map and hash set using hopscotch hashing
HashMap - An open addressing linear probing hash table, tuned for delete heavy workloads
map_benchmark - Comprehensive benchmarks of C++ maps