cyan4973/xxhash

Extremely fast non-cryptographic hash algorithm

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 24 minutes ago
Added to GitGenius on September 5th, 2026
Created on April 30th, 2014
Open Issues & Pull Requests: 44 (+0)
GitHub issues: Enabled
Number of forks: 914
Total Stargazers: 11,242 (+0)
Total Subscribers: 180 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 8.2 hours
Mean response time: 29.4 days
90th percentile: 110.0 days
Tracked items: 63

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 97% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 3% of issues opened in the past year have been closed. Three people close 88% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 29
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 419 days
Stale 30+ days: 22
Stale 90+ days: 16

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • question (8)
  • announcement (6)
  • build (3)
  • portability (2)
  • Long-term (1)
  • documentation (1)
  • enhancement (1)
  • feature request (1)

Detailed Description

xxHash is an extremely fast non-cryptographic hash algorithm that processes data at RAM speed limits. The library provides three main algorithms: XXH32 for 32-bit hashes, XXH64 for 64-bit hashes, and XXH3 for 64 or 128-bit hashes using vectorized arithmetic. All variants pass the SMHasher test suite, which evaluates collision, dispersion, and randomness properties.

The tool solves the problem of needing high-speed hashing for applications where cryptographic security is not required. It achieves its performance by using highly optimized code that operates at memory bandwidth limits and by employing vectorized arithmetic in XXH3. The implementation is portable across platforms and produces identical hashes regardless of endianness, making it suitable for cross-platform consistency.

Developers should choose xxHash when building systems that require fast hashing for non-security purposes, such as hash tables, bloom filters, checksums, or data deduplication. It excels at both large data processing and small data scenarios, with XXH3 specifically designed to maintain strong performance across input sizes. The tool is particularly valuable when hashing small amounts of data frequently, where initialization and finalization overhead typically becomes a bottleneck in other algorithms.

The project maintains active continuous integration across both release and development branches. The codebase includes comprehensive test suites beyond standard benchmarking, with additional tests specifically evaluating speed and collision properties of 64-bit hashes. The tool is written in C with a focus on portability and has a documented reference implementation available for benchmarking purposes.