Categories: Ubuntu

How to Install xxHash for faster hash check in Ubuntu

This simple tutorial shows how to install the most recent xxHash for faster hash checking in Ubuntu Linux.

xxHash is extremely fast non-cryptographic hash algorithm, working at RAM speed limit. It can be useful to check integrity for large amounts of data, index data, and/or used in cryptographic applications like digital signatures.

The library includes the following algorithms:

  • XXH32 : generates 32-bit hashes.
  • XXH64 : generates 64-bit hashes.
  • XXH3/XXH128 (since v0.8.0): generates 64 or 128-bit hashes, using vectorized arithmetic.

I’m new to hash algorithm, but doing hash check regularly when trying out different Linux distributions. And I use sha256, since the most sites provide sha256sum files for the hash code of their disco images.

It’s OK for me to run sha256sum for file in SSD, which takes around 20 seconds to print hash code for a 4 GB iso image. But after moving to USB stick (to boot via Ventoy), and hashing again it can take up to 2 minutes!

I was feeling stupid, until met xxHash. Hash checking can be so fast!

For advanced users, see the benchmarks (system uses an Intel i7-9700K cpu, and runs Ubuntu x64 20.04).

Hash Name Width Bandwidth (GB/s) Small Data Velocity Quality Comment
XXH3 (SSE2) 64 31.5 GB/s 133.1 10
XXH128 (SSE2) 128 29.6 GB/s 118.1 10
memcpy N/A 28.0 GB/s N/A N/A for reference
City64 64 22.0 GB/s 76.6 10
T1ha2 64 22.0 GB/s 99.0 9 Slightly worse collisions
City128 128 21.7 GB/s 57.7 10
XXH64 64 19.4 GB/s 71.0 10
SpookyHash 64 19.3 GB/s 53.2 10
Mum 64 18.0 GB/s 67.0 9 Slightly worse collisions
XXH32 32 9.7 GB/s 71.9 10
City32 32 9.1 GB/s 66.0 10
Murmur3 32 3.9 GB/s 56.1 10
SipHash 64 3.0 GB/s 43.2 10
FNV64 64 1.2 GB/s 62.7 5 Poor avalanche properties
Blake2 256 1.1 GB/s 5.1 10 Cryptographic
SHA1 160 0.8 GB/s 5.6 10 Cryptographic but broken
MD5 128 0.6 GB/s 7.8 10 Cryptographic but broken

How to Install xxHash in Ubuntu

xxHash is available in Ubuntu repository, but is (or will be) old since the software keeps moving with newer releases.

To install xxHash from system repository, open terminal (Ctrl+Alt+T) and run command:

sudo apt install xxhash

For the latest version (so far v0.8.2), there are some third-party PPA repositories. And, I use the one from Adam Reviczky, which so far supports Ubuntu 20.04, Ubuntu 22.04, Ubuntu 23.04, and Ubuntu 23.10

  • First, press Ctrl+Alt+T on keyboard to open terminal. When it opens, run command to add the PPA:
    sudo add-apt-repository ppa:reviczky/xxhash

    Type user password when it asks (no asterisk feedback) for sudo authentication. Then, hit Enter to continue.

  • Then, either launch Software Updater to upgrade the tool from version installed from system repository. Or, run command :
    sudo apt install xxhash

    For Linux Mint, run sudo apt update first to refresh system package cache.

After installing the tool, use one of xxh128sum, xxh32sum, xxh64sum, xxhsum commands to do hash checks.

Uninstall xxHash

To uninstall xxHash, open terminal (Ctrl+Alt+T) and run command:

sudo apt remove --autoremove xxhash

Also remove the PPA (if added), by either “Software & Updates” under “Other Software” tab, or running command:

sudo add-apt-repository --remove ppa:reviczky/xxhash

The post How to Install xxHash for faster hash check in Ubuntu appeared first on Osgrove.

Ubuntu Server Admin

Recent Posts

How to Fix VMware’s “Could not open /dev/vmmon” Error on Ubuntu

You’ve recently installed VMware Workstation on your Ubuntu system and encountered the frustrating “Could not…

5 hours ago

How to Fix Ubuntu 404 Errors While Fetching Dependencies

Have you ever found yourself staring at a terminal full of 404 errors while trying…

5 hours ago

How to Fix ‘Please Install All Available Updates’ Error When Upgrading Ubuntu 18.04 to 20.04 LTS

One particularly frustrating error that many users face when trying to upgrade from Ubuntu 18.04 …

5 hours ago

How to fix “Release is not valid yet” Error in Docker Containers

In the world of containerization, time synchronization issues can create unexpected roadblocks when working with…

5 hours ago

How to fix “Externally Managed Environment” Pip Errors on Ubuntu

If you’ve recently upgraded to Ubuntu 23.04 or newer, you might have encountered a frustrating…

5 hours ago

Ubuntu now officially supports NVIDIA Jetson: powering the future of AI at the edge

Canonical announces the General Availability of Ubuntu for the NVIDIA® Jetson Orin™ for edge AI…

12 hours ago