How to use the command xxhsum (with examples)
- Linux
- December 25, 2023
xxhsum is a command-line utility that allows users to calculate or verify checksums using the fast non-cryptographic algorithm xxHash. It can be used to quickly generate checksums for files or benchmark the performance of the xxHash algorithm.
Use case 1: Calculate the checksum for a file using a specific algorithm
Code:
xxhsum -H0|32|64|128 path/to/file
Motivation: Calculating checksums for files is a common practice in data integrity checks and file verification. By using a specific algorithm with xxhsum, users can choose the hash length that suits their needs, whether it’s 0, 32, 64, or 128 bits.
Explanation:
-H
: Specifies the hash length to use. It can be 0 (default), 32, 64, or 128.path/to/file
: The path to the file for which the checksum will be calculated.
Example output:
xxhsum -H64 /path/to/file
0d8deaa5e3c8c7b2 /path/to/file
In this example, we calculate the checksum for the file located at /path/to/file
using a 64-bit hash length. The output shows the checksum 0d8deaa5e3c8c7b2
followed by the path to the file.
Use case 2: Run benchmark
Code:
xxhsum -b
Motivation: Running a benchmark allows users to evaluate the performance of the xxHash algorithm on their system. This can be useful when comparing the algorithm’s speed against other hash functions or when fine-tuning the application’s performance.
Explanation:
-b
: Runs a benchmark to measure the performance of the xxHash algorithm.
Example output:
xxhsum -b
xxh32 1073741824 bytes -> 15.06 MB/s in 0.07 ms ( 1 test)
xxh64 1073741824 bytes -> 28.60 MB/s in 0.05 ms ( 1 test)
xxh128 1073741824 bytes -> 48.00 MB/s in 0.03 ms ( 1 test)
In this example, the benchmark was run, and the performance of the xxHash algorithm for hash lengths 32, 64, and 128 bits was measured. The output shows the speed in MB/s, execution time in milliseconds, and the number of tests performed.
Conclusion:
Using xxhsum, users can easily calculate checksums for files and benchmark the performance of the xxHash algorithm. By understanding the provided use cases and their respective arguments, users can apply this command in various scenarios, such as data integrity checks and performance optimizations.