TurboBench README

The project's README from github.com/powturbo/TurboBench. As one markdown file: README.md.

TurboBench:Compressor Benchmark

Build ubuntu

TurboBench Logo

TurboBench: The Ultimate Data Compression Benchmark

100+ Codecs. The Powerhouse in a Single Executable — The Compression Lie Detector

Tired of misleading benchmarks with I/O overhead, cache effects, and CPU throttling? TurboBench delivers high-precision, zero-overhead results you can actually trust.

Why TurboBench Stands Out

Broad Platform Support

Linux (amd/intel, ARM, RISC-V, PowerPC, s390x, loongson), macOS (Apple M1–M5), and Windows (MSYS2, MinGW, Visual C++).

Rich, Ready-to-Use Outputs

All-in-one executable — no Python, no extra graphic libraries, zero dependencies, zero installers, zero configuration, no hassle. Just download, run, and benchmark.

Perfect for developers, researchers, and performance enthusiasts who demand accurate, apples-to-apples comparisons.


TurboBench — Precision you can rely on. The gold standard for compression benchmarking. 🚀

Try it now:

Benchmark:

TurboBench vs LzBench

Feature TurboBench Lzbench
Benchmark
Large number of codecs (isa-l/zlib-ng/blosc,...) ✅ ⚠️
Control throttling via CPU frequency ✅ ❌
Automatic sorting, updating & merging of result files ✅ ❌
In-place progress display (compression/decompression speed) ✅ ❌
Separate results for each compressor set ✅ ❌
Data Handling
Concatenation of small files into one multiblock file ✅ ❌
Independent compression of many small files ✅ ❌
Multiple files & recursive directories ✅ ✅
Support for very large files (multi-GB) ✅ ⚠️
Dictionary support ✅ ❌
Codec parameter support ✅ ❌
Metrics
Rank aggregation & score with medals ✅ ❌
Pareto-front visualization ✅ ❌
Multiple output formats (HTML, Markdown, CSV, encode.su) ✅ ⚠️
SVG bar & scatter images ✅ ❌
Transfer-speed sheets (GPRS → 5G, HDD, SSD, RAM,...) ✅ ❌
Peak memory/Stack usage (compress + decompress) ✅ ❌
Codec & Configuration Coverage
Cross-platform support (x86, ARM, RISC-V, PowerPC…) ✅ ⚠️
Submodule architecture with automatic codec update ✅ ❌
Use codecs’ built-in tools, matching original builds & optimizations ✅ ❌
Advanced
Incremental benchmarking ✅ ❌
Simple integration of new codecs ✅ ❌
Nightly GitHub release w. executables ✅ ❌
- Groups FASTEST,FAST,EFFICIENT,MAX,OPTIMAL,BWT:
- Codecs:
- Print + Plot
- Bar/Scatter charts

Compile:

		git clone --depth=1 --recursive https://github.com/powturbo/TurboBench.git
    cd TurboBench
		make

Environment:

OS/Compiler (32 + 64 bits):

Plugins:

Compressor Lz77,Rolz,Bwt,zpaq:

Integer / Floating point:

Entropy coder:

bitwise range coder
bytewise range coder
ABS: Asymmetric binary systems
ANS: Asymmetric Numeral Systems
Huffman Coding
memcpy

Encoding:

Transform:

TurboBench Manual

Usage

turbobench [options] [file(s)]

General Options

Size Modifiers (s):

Benchmark Options

Check Options

Output & Plotting Options

Multiblock/Join

Predefined Groups: (see turbobench.ini file)

Examples

./turbobench enwik9 -eFAST/bzip2/lzma,5,9
./turbobench enwik9 -eFAST/OPTIMAL/bsc,0:e2 -i0
./turbobench eECODER -k"entropy coder test"
./turbobench enwik9 -elzma,9:fb273:lc2:lp2:t2
./turbobench enwik9 -eFAST -aFAST

Last update: 21 SEP 2026

TurboBench (powturbo/TurboBench)

Searching Database…

What is this?TurboBench is a data compression benchmark: a single executable that tests 100+ compressors in memory and shows which ones win on speed and compression ratio.
Is it a command-line tool or an app with a graphical interface?It is a command-line tool — one all-in-one executable with zero dependencies: no Python, no graphic libraries, no installers, no configuration.
How do I get it running?Download a ready executable from GitHub Releases (nightly builds), or build it: git clone --depth=1 --recursive, cd TurboBench, make; then run ./turbobench -h for help.
Is there a limit on how big the test files can be?Test blocks are capped at 1 GB and the default benchmark file size is 1 GB; raise it with -B (for example -B4G) for multi-GB files.
Which systems and CPUs does it run on?Linux (x86, ARM, RISC-V, PowerPC, s390x, loongson), macOS (Apple M1–M5) and Windows (MSYS2, MinGW or Visual C++), in 32 and 64-bit builds.
What is LzTurbo?The author's own compressor; TurboBench is the only benchmark that includes it alongside 100+ popular codecs, so you can compare it directly.
Does it benchmark anything besides regular file compressors?Yes — integer and float codecs (Blosc, OpnZL, Pcodec), raw entropy coders (ANS, range, Huffman), encodings like TurboRLE and Base64, and BWT/Schindler transforms.
Why does it control the CPU frequency during a benchmark?To reduce CPU throttling, which otherwise skews results on long runs; it can also sleep between long processing stretches (the -S option) to keep measurements accurate.
Where do the results go?Into .tbb result files, one per compressor set ([email protected] with the -a option); TurboBench automatically sorts, updates and merges them when you retest or add codecs.
What are similar projects?ripgrep, lz4, pyrowave, guetzli, simdjson, ttfx, spinel, ninja
Creator
powturbo
Size
53.7 MB
Stars
374
Age
10y
Commits · 90 Days