haxmap
Fastest and most memory efficient golang concurrent hashmap (by alphadose)
xxhash
A Go implementation of the 64-bit xxHash algorithm (XXH64) (by cespare)
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
haxmap
Posts with mentions or reviews of haxmap.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-08-28.
-
hash/maphash is slow
It depends on the architecture like amd64 it’s naturally fast but for amd and the rest is kinda of slow because Go uses AES hashing algorithm upcoming they’re planning to change the hashing alg either xxhash or swisstable I recommend you use 3rd party maphash like https://github.com/alphadose/haxmap or any
-
HaxMap v0.2.0 released, huge performance improvements and added support for 32-bit systems
This issue has been fixed with https://github.com/alphadose/haxmap/releases/tag/v0.3.0
- The fastest and most-memory efficient concurrent hashmap in Golang
-
HaxMap, a concurrent hashmap faster and more memory-efficient than golang's sync.Map
This behaviour is now fixed with https://github.com/alphadose/haxmap/commit/bc3b9a6adfc4600fd948124f5d9b74139dfe6d39
xxhash
Posts with mentions or reviews of xxhash.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-09.
-
SIMD in Go
For my zstd port I use https://github.com/cespare/xxhash - which has arm64/amd64 assembly. The point isn't to compare against Go code. The point is to compare against assembly. It is IMO close to pointless to write intrinsics, if it is slower than assembly - you might as well write assembly from the beginning.
-
GO tools for inspecting package usage
It would be nice to if there a cli tool built into go tooling that allows us to query the golang proxy where i can find all packages using "github.com/cespare/xxhash/v2" sorted by the highest number of "imported by".
-
Portal: a CLI file transfer utility from any computer to another
Croc uses https://github.com/cespare/xxhash, which happens to be used by CNCF Prometheus and InfuxDB.
-
HaxMap, a concurrent hashmap faster and more memory-efficient than golang's sync.Map
Nopes, the hashing algorithm was exclusively meant for 64 bit archs https://github.com/cespare/xxhash hence it will show invalid results on any 32 bit architectures.
-
Show Golang: dskDitto - Small go utility to find file duplicates rapidly
Have you considered using xxhash?
What are some alternatives?
When comparing haxmap and xxhash you can also consider the following projects:
hashmap - A Golang lock-free thread-safe HashMap optimized for fastest read access.
sonic - A blazingly fast JSON serializing & deserializing library
intrinsics - Experiment with Go intrinsics (NOT USABLE)
goqueue - Flexible Queue System for Go
go-simd - SIMD implementation in Go
ZenQ - A thread-safe queue faster and more resource efficient than golang's native channels
set - Thread(Safe/Unsafe) Set data structure for Go.
xxHash - Pure Go implementation of xxHash (32 and 64 bits versions)
go-blocking-dequeue - Thread safe, blocking, generic dequeue data structure for Go
xxh3 - XXH3 algorithm in Go