Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. xxHash

xxHash

NOASSERTIONCv0.8.4

An extremely fast non-cryptographic hash algorithm that processes data at RAM speed limits.

Visit WebsiteGitHubGitHub
11.4k stars935 forks0 contributors

What is xxHash?

xxHash is an extremely fast non-cryptographic hash algorithm that processes data at RAM speed limits. It provides high-performance hashing for applications requiring fast data integrity checks, hash tables, and bloom filters, with variants offering 32-bit, 64-bit, and 128-bit hash outputs. The algorithm is designed to be portable and produce identical results across different platforms.

Target Audience

Developers and engineers working on performance-critical applications such as databases, file systems, network protocols, and data processing pipelines that require fast hashing without cryptographic security.

Value Proposition

xxHash offers unparalleled speed, often exceeding RAM bandwidth, while maintaining high-quality hash properties verified by SMHasher tests. Its portability and optimization for both large and small data make it a superior choice over slower alternatives like CityHash, MurmurHash, or cryptographic hashes.

Overview

Extremely fast non-cryptographic hash algorithm

Use Cases

Best For

  • High-performance hash tables and bloom filters
  • Data deduplication and integrity checking in storage systems
  • Network protocol checksums where speed is critical
  • Database indexing and key hashing
  • Real-time data processing pipelines
  • Benchmarking and comparing hash algorithm performance

Not Ideal For

  • Cryptographic applications such as password hashing or digital signatures
  • Systems requiring formal security proofs or resistance to cryptographic attacks
  • Projects where hash function stability must be guaranteed across all future library versions without any breaking changes

Pros & Cons

Pros

Extreme Speed Performance

Benchmarks show XXH3 processing at 31.5 GB/s, exceeding RAM sequential read speeds, making it ideal for high-throughput data processing.

High Quality Hashes

Passes the SMHasher test suite ensuring excellent dispersion and minimal collisions, with additional massive collision tests verifying robustness.

Optimized for Small Data

Designed with low latency on small inputs, as evidenced by performance graphs, beneficial for hash tables and bloom filters.

Cross-Platform Portability

Produces identical hash values regardless of endianness, ensuring consistency across different systems without platform-specific adjustments.

Cons

Non-Cryptographic Limitations

Lacks cryptographic properties like resistance to preimage or collision attacks, making it unsuitable for security-sensitive applications.

Complex Build Configuration

Requires managing numerous macros such as XXH_VECTOR and XXH_INLINE_ALL for optimal performance, which can be overwhelming and error-prone.

Large Binary with XXH3

XXH3 significantly increases library size, necessitating the use of flags like XXH_NO_XXH3 for size-constrained environments, adding compilation overhead.

Frequently Asked Questions

Quick Stats

Stars11,354
Forks935
Contributors0
Open Issues9
Last commit1 day ago
CreatedSince 2014

Tags

#c-library#hash-tables#hash#high-performance#bloom-filters#portable#c#non-cryptographic#hash-algorithm#data-processing#benchmarking#xxhash#hash-functions

Built With

C
C++

Links & Resources

Website

Included in

C/C++70.6kCryptography6.8k
Auto-fetched 1 day ago

Related Projects

stbstb

stb single-file public domain libraries for C/C++

Stars34,873
Forks8,106
Last commit4 days ago
OpenSSLOpenSSL

General purpose TLS and crypto library

Stars31,010
Forks11,535
Last commit2 days ago
{fmt}{fmt}

A modern formatting library

Stars25,887
Forks3,089
Last commit5 days ago
libsodiumlibsodium

A modern, portable, easy to use crypto library.

Stars14,008
Forks1,887
Last commit8 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub