Fast mutable non-concurrent HashMap
- Dominant language
- C#
- Stars
- 251
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
I want a fast, configurable for the small sizes and less-allocating variant of HashMap in comparison with Dictionary and [DictionarySlim](https://github.com/dotnet/corefxlab/blob/archive/src/Microsoft.Experimental.Collections/Microsoft/Collections/Extensions/DictionarySlim.cs).
Alternative implementation to look for and compare:
- https://github.com/Wsm2110/Faster.Map
- https://github.com/matthewcrews/FastDictionaryTest
Tasks:
- [X] Implementation, tests and documentation
- [x] Battle test in [FastExpressionCompiler](https://github.com/dadhi/FastExpressionCompiler)
- [ ] Benchmarks in readme
- [x] Establish a consistent naming across the other ImTools types, e.g. SmallMap vs FHashMap, EtcMap
- [ ] Add the variant to keep an items on stack for the small map and progressively expand to the heap if needed. Ensure there is no "significant" performance degradation comparing to the full-on heap version
Results:
- The new `SmallMap` hash table
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.