Martin Leitner-Ankerl

Results 102 comments of Martin Leitner-Ankerl

This only enables the ability to use `std::string_view` as key in a hashmap. So it's not a performance issue but one feature could be disabled

It's more or less a bug, it's not yet implemented for `emplace()`.

I use a marker that counts the distance to the original bucket. I currently throw an exception when that marker would overflow. Instead, I could give the maximum value of...

well, it's always robin hood hashing, even when there are lots of collisions. Collision handling is always a linear search. When you remove the colliding elements there will be less...

What hash are you using? With a reasonably good hash this should never happen. Can you post just the hash code?

Can you share a reproducer? What compiler are you using, and do you compiler for 64 or 32 bit?

Thanks for the reproducer! I could reproduce it, here's what's the issue: ```cpp for (const auto& entry : sourceNode.grid) { targetNode.grid[entry.first] = entry.second; } ``` You iterate a large hashmap,...

On second thought, this is really an issue of bad quality of the hash. If you replace robin_hood's hash_int with this code, this issue also doesn't happen (then there is...

You are of course right, a linear search fallback would be important to have. I don't have the time currently for this though. But I'm at least working on an...

I believe I've (finally) a simple & fast reproducer: ```cpp TEST_CASE("overflow_finder_simple") { robin_hood::unordered_set set; for (uint64_t i = 0; i < UINT64_C(1000000); ++i) { auto h = robin_hood::hash{}(i); if (UINT64_C(0)...