Zstd Compression

This test measures the time needed to compress/decompress a sample file (a FreeBSD disk image - FreeBSD-12.2-RELEASE-amd64-memstick.img) using Zstd compression with options for different compression levels / settings.

To run this test with the Phoronix Test Suite, the basic command is: phoronix-test-suite benchmark compress-zstd.

Project Site

github.com

Test Created

24 May 2018

Last Updated

14 May 2021

Test Maintainer

Michael Larabel 

Test Type

Processor

Average Install Time

1 Minute, 8 Seconds

Average Run Time

7 Minutes, 19 Seconds

Test Dependencies

C/C++ Compiler Toolchain

Accolades

60k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page Views ***OpenBenchmarking.orgEventsZstd Compression Popularity Statisticspts/compress-zstd2018.052018.072018.092018.112019.012019.032019.052019.072019.092019.112020.012020.032020.052020.072020.092020.112021.012021.032021.052021.072021.092021.112022.016K12K18K24K30K
* Uploading of benchmark result data to OpenBenchmarking.org is always optional (opt-in) via the Phoronix Test Suite for users wishing to share their results publicly.
** Data based on those opting to upload their test results to OpenBenchmarking.org and users enabling the opt-in anonymous statistics reporting while running benchmarks from an Internet-connected platform.
*** Test profile page view reporting began March 2021.
Data current as of 25 January 2022.
3, Long Mode13.8%19, Long Mode18.9%817.4%8, Long Mode15.7%314.7%1919.5%Compression Level Option PopularityOpenBenchmarking.org

Revision History

pts/compress-zstd-1.5.0   [View Source]   Fri, 14 May 2021 13:28:48 GMT
Update against upstream Zstd 1.5.

pts/compress-zstd-1.3.0   [View Source]   Wed, 03 Mar 2021 16:48:52 GMT
Update against upstream Zstd 1.4.9, expose decompression speed, switch to FreeBSD img as input test, also add long mode options.

pts/compress-zstd-1.2.1   [View Source]   Fri, 04 Sep 2020 18:26:12 GMT
Zstd output parser fix per https://github.com/phoronix-test-suite/phoronix-test-suite/pull/467

pts/compress-zstd-1.2.0   [View Source]   Fri, 22 May 2020 07:18:54 GMT
Update against Zstd 1.4.5, transition to MB/s reporting with -b interface.

pts/compress-zstd-1.1.3   [View Source]   Fri, 03 Apr 2020 16:24:17 GMT
Update patch per https://github.com/phoronix-test-suite/test-profiles/issues/132

pts/compress-zstd-1.1.2   [View Source]   Mon, 02 Mar 2020 07:34:12 GMT
Build fix for some platforms via https://github.com/phoronix-test-suite/test-profiles/pull/128

pts/compress-zstd-1.1.1   [View Source]   Thu, 17 Jan 2019 10:59:33 GMT
Add Windows support.

pts/compress-zstd-1.1.0   [View Source]   Thu, 08 Nov 2018 20:33:01 GMT
Enforce threading for Zstd

pts/compress-zstd-1.0.0   [View Source]   Thu, 24 May 2018 10:22:41 GMT
Initial commit of a basic Zstandard compression benchmark.

Suites Using This Test

Compression Tests

C/C++ Compiler Tests

Multi-Core

CPU Massive

Server CPU Tests

Programmer / Developer System Benchmarks


Performance Metrics

Analyze Test Configuration:

Zstd Compression 1.5.0

Compression Level: 19 - Compression Speed

OpenBenchmarking.org metrics for this test profile configuration based on 984 public results since 14 May 2021 with the latest data as of 28 January 2022.

Below is an overview of the generalized performance for components where there is sufficient statistically significant data based upon user-uploaded results. It is important to keep in mind particularly in the Linux/open-source space there can be vastly different OS configurations, with this overview intended to offer just general guidance as to the performance expectations.

Component
Percentile Rank
# Compatible Public Results
MB/s (Average)
100th
7
92.0 +/- 2.0
99th
3
87.0 +/- 6.0
97th
6
83.0 +/- 3.0
92nd
5
70.0 +/- 2.0
91st
8
65.0 +/- 4.0
90th
3
63.0 +/- 2.0
90th
8
62.0 +/- 3.0
89th
9
61.0 +/- 1.0
89th
3
61.0 +/- 4.0
86th
6
56.9 +/- 0.4
85th
14
53.2 +/- 1.5
85th
62
52.7 +/- 3.6
78th
5
49.6 +/- 4.9
76th
3
44.4 +/- 5.3
Mid-Tier
75th
< 43.7
75th
18
43.5 +/- 2.6
71st
3
40.3 +/- 0.2
71st
5
40.3 +/- 0.3
71st
35
40.0 +/- 5.0
67th
4
37.7 +/- 1.0
65th
17
36.2 +/- 2.5
64th
27
35.8 +/- 2.3
60th
9
35.0 +/- 0.6
60th
28
34.9 +/- 1.0
58th
3
34.4 +/- 0.1
58th
6
34.4 +/- 2.8
58th
9
34.3 +/- 0.8
56th
5
33.2 +/- 3.7
54th
5
32.6 +/- 0.3
53rd
4
32.5 +/- 1.6
53rd
8
32.5 +/- 0.2
51st
8
31.4 +/- 0.8
51st
8
31.3 +/- 1.5
Median
50th
31.1
49th
4
30.5 +/- 0.5
49th
4
30.5 +/- 0.1
49th
14
30.5 +/- 0.9
46th
5
28.5 +/- 0.3
45th
4
27.8 +/- 2.3
45th
3
27.8 +/- 0.1
45th
3
27.5 +/- 0.1
44th
4
27.1 +/- 0.1
43rd
7
26.7 +/- 1.5
42nd
3
25.5 +/- 0.1
41st
19
23.9 +/- 0.7
39th
9
23.2 +/- 1.1
39th
8
23.1 +/- 0.1
38th
3
22.8 +/- 0.2
38th
5
22.7 +/- 1.5
37th
4
22.2 +/- 0.1
36th
4
21.2 +/- 0.2
35th
5
20.6 +/- 0.1
35th
3
20.3 +/- 0.3
34th
5
19.9 +/- 0.2
32nd
4
19.3 +/- 0.3
32nd
13
19.3 +/- 0.4
31st
6
18.6 +/- 0.1
30th
10
18.4 +/- 0.5
30th
3
18.3 +/- 0.1
27th
18
18.0 +/- 0.1
27th
10
18.0 +/- 0.1
Low-Tier
25th
< 17.8
25th
6
17.6 +/- 0.1
24th
11
17.4 +/- 1.2
24th
7
17.3 +/- 0.7
24th
3
17.2 +/- 0.1
22nd
7
16.6 +/- 0.5
22nd
5
16.5 +/- 0.3
21st
7
15.7 +/- 0.1
20th
3
15.4 +/- 0.1
19th
3
15.0 +/- 0.1
18th
5
14.7 +/- 0.2
18th
6
14.6 +/- 0.9
17th
3
14.4 +/- 0.2
17th
6
14.4 +/- 0.1
16th
7
14.3 +/- 1.0
16th
6
14.3 +/- 0.2
14th
8
13.1 +/- 0.1
14th
6
13.0 +/- 1.5
13th
6
12.9 +/- 0.3
12th
3
11.4 +/- 0.1
10th
6
10.2 +/- 0.1
10th
4
9.7 +/- 0.2
10th
3
9.7 +/- 0.1
8th
3
7.2 +/- 0.1
OpenBenchmarking.orgDistribution Of Public Results - Compression Level: 19 - Compression Speed984 Results Range From 0 To 107 MB/s09182736455463728190991084080120160200

Based on OpenBenchmarking.org data, the selected test / test configuration (Zstd Compression 1.5.0 - Compression Level: 19 - Compression Speed) has an average run-time of 5 minutes. By default this test profile is set to run at least 3 times but may increase if the standard deviation exceeds pre-defined defaults or other calculations deem additional runs necessary for greater statistical accuracy of the result.

OpenBenchmarking.orgMinutesTime Required To Complete BenchmarkCompression Level: 19 - Compression SpeedRun-Time612182430Min: 2 / Avg: 4.48 / Max: 28

Based on public OpenBenchmarking.org results, the selected test / test configuration has an average standard deviation of 0.5%.

OpenBenchmarking.orgPercent, Fewer Is BetterAverage Deviation Between RunsCompression Level: 19 - Compression SpeedDeviation246810Min: 0 / Avg: 0.52 / Max: 5

Does It Scale Well With Increasing Cores?

Yes, based on the automated analysis of the collected public benchmark data, this test / test settings does generally scale well with increasing CPU core counts. Data based on publicly available results for this test / test settings, separated by vendor, result divided by the reference CPU clock speed, grouped by matching physical CPU core count, and normalized against the smallest core count tested from each vendor for each CPU having a sufficient number of test samples and statistically significant data.

IntelAMDOpenBenchmarking.orgRelative Core Scaling To BaseZstd Compression CPU Core ScalingCompression Level: 19 - Compression Speed2468101216321.06882.13763.20644.27525.344

Notable Instruction Set Usage

Notable instruction set extensions supported by this test, based on an automatic analysis by the Phoronix Test Suite / OpenBenchmarking.org analytics engine.

Instruction Set
Support
Instructions Detected
SSE2 (SSE2)
Used by default on supported hardware.
 
COMISD MOVAPD CVTSI2SD MULSD DIVSD SUBSD CVTTSD2SI ADDSD MOVDQA MOVD PUNPCKLQDQ MOVDQU PSHUFD PMULUDQ PSRLDQ PADDQ SHUFPD PSUBQ PUNPCKHQDQ MINSD
Requires passing a supported compiler/build flag (verified with targets: sandybridge, skylake, tigerlake, cascadelake, sapphirerapids, alderlake, znver2, znver3).
Found on Intel processors since Sandy Bridge (2011).
Found on AMD processors since Bulldozer (2011).

 
VBROADCASTSD VEXTRACTF128 VZEROUPPER VINSERTF128
Requires passing a supported compiler/build flag (verified with targets: skylake, tigerlake, cascadelake, sapphirerapids, alderlake, znver2, znver3).
Found on Intel processors since Haswell (2013).
Found on AMD processors since Excavator (2016).

 
VPBROADCASTQ VPBROADCASTD VPSLLVD VEXTRACTI128 VPBROADCASTW VPERMQ VPBROADCASTB VINSERTI128 VPERM2I128 VPERMD VPBLENDD
FMA (FMA)
Requires passing a supported compiler/build flag (verified with targets: skylake, tigerlake, cascadelake, sapphirerapids, alderlake, znver2, znver3).
Found on Intel processors since Haswell (2013).
Found on AMD processors since Bulldozer (2011).

 
VFMADD132SD
Advanced Vector Extensions 512 (AVX512)
Requires passing a supported compiler/build flag (verified with targets: cascadelake, sapphirerapids).
 
(ZMM REGISTER USE)
The test / benchmark does honor compiler flag changes.
Last automated analysis: 17 January 2022

This test profile binary relies on the shared libraries libz.so.1, liblzma.so.5, libc.so.6.

Recent Test Results

OpenBenchmarking.org Results Compare

3 Systems - 167 Benchmark Results

Intel Celeron G6900 - ASRock B660M-HDV - Intel Device 7aa7

Fedora Linux 35 - 5.15.16-200.fc35.x86_64 - GNOME Shell 41.3

2 Systems - 167 Benchmark Results

Intel Celeron G6900 - ASRock B660M-HDV - Intel Device 7aa7

Ubuntu 22.04 - 5.15.0-17-generic - GNOME Shell 40.5

1 System - 167 Benchmark Results

Intel Celeron G6900 - ASRock B660M-HDV - Intel Device 7aa7

Ubuntu 22.04 - 5.15.0-17-generic - GNOME Shell 40.5

13 Systems - 229 Benchmark Results

AMD Ryzen 9 5900X 12-Core - ASUS ROG CROSSHAIR VIII HERO - AMD Starship

Ubuntu 20.04 - 5.9.0-050900-generic - GNOME Shell 3.36.4

2 Systems - 350 Benchmark Results

Ampere eMAG ARMv8 - AmpereComputing OSPREY - Applied Micro Circuits X-Gene

Ubuntu 20.04 - 5.7.0-050700-generic - GNOME Shell 3.36.4

4 Systems - 215 Benchmark Results

Intel Core i7-5775C - MSI Z97-G45 GAMING - Intel Broadwell-U DMI

Ubuntu 18.10 - 5.0.0-999-generic - GNOME Shell 3.30.2

4 Systems - 267 Benchmark Results

Intel Celeron G6900 - ASRock B660M-HDV - Intel Device 7aa7

Ubuntu 22.04 - 5.16.0-051600-generic - GNOME Shell 40.5

1 System - 325 Benchmark Results

2 x Intel Xeon Gold 6248R - TYAN S7106GM2NR-HOV-B - Intel Sky Lake-E DMI3 Registers

Ubuntu 20.04 - 5.4.0-96-generic - 1.0.2

4 Systems - 97 Benchmark Results

AMD Ryzen 3 3100 4-Core - Gigabyte A520M DS3H - AMD Starship

Ubuntu 21.04 - 5.11.0-31-generic - GNOME Shell 3.38.4

3 Systems - 192 Benchmark Results

Intel Core i3-10105 - ASUS PRIME H510M-A - Intel Device 43ef

Clear Linux OS 35550 - 5.15.12-1113.native - GNOME Shell 41.2

3 Systems - 23 Benchmark Results

Intel Core i7-7700T - TUXEDO N650DU - Intel Xeon E3-1200 v6

Fedora Linux 35 - 5.15.14-200.fc35.x86_64 - GNOME Shell 41.3

2 Systems - 73 Benchmark Results

Intel Core i3-10105 - ASUS PRIME H510M-A - Intel Device 43ef

Clear Linux OS 35550 - 5.15.12-1113.native - GNOME Shell 41.2

1 System - 41 Benchmark Results

Ampere ARMv8 Neoverse-N1 - FOXCONN Mt. Collins - Ampere Computing LLC Device e100

Ubuntu 20.04 - 5.4.0-94-generic - Xfce

2 Systems - 248 Benchmark Results

AMD Ryzen 7 5700G - Gigabyte B550I AORUS PRO AX - AMD Renoir

Ubuntu 21.10 - 5.13.0-25-generic - Xfce 4.16

1 System - 12 Benchmark Results

Intel Xeon Platinum 8374C - Tencent Cloud CVM v3.0 - Intel 440FX 82441FX PMC

TencentOS Server 3.1 - 5.4.119-19-0008 - GCC 8.4.1 20200928 + Clang 11.0.0

Most Popular Test Results

Find More Test Results