diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-10-27 11:50:34 +0100 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-10-28 13:57:50 +0100 |
commit | 89e07bb07642f77739f7d85c032c9739718d7b9d (patch) | |
tree | 3db9774d50ec3874afbb4ddfc0312d3ba618634b /doc | |
parent | bd9133b1b12c4fa481ff9dd9d0572f363e7bfb59 (diff) |
Add an initial decompression benchmark
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/benchmark.ods | bin | 53760 -> 60946 bytes | |||
-rw-r--r-- | doc/benchmark.txt | 70 |
2 files changed, 70 insertions, 0 deletions
diff --git a/doc/benchmark.ods b/doc/benchmark.ods Binary files differindex 62ee480..9335389 100644 --- a/doc/benchmark.ods +++ b/doc/benchmark.ods diff --git a/doc/benchmark.txt b/doc/benchmark.txt index ed44cb3..9098fa2 100644 --- a/doc/benchmark.txt +++ b/doc/benchmark.txt @@ -135,3 +135,73 @@ Repeating the benchmark without tail-end-packing and with fragments completely disabled would also show the effectiveness of tail-end-packing and fragment packing as a side effect. + + + 2) Reference Decompression Benchmark + ************************************ + + 2.1) How was the Benchmark Performed? + + An optimized build of squashfs-tools-ng was compiled and installed to a tmpfs: + + $ mkdir /dev/shm/temp + $ ln -s /dev/shm/temp out + $ ./autogen.sh + $ ./configure CFLAGS="-O3 -Ofast -march=native -mtune=native" \ + LDFLAGS="-O3 -Ofast" --prefix=$(pwd)/out + $ make -j install + $ cd out + + A SquashFS image to be tested was repacked with a desired compressor in + this directory: + + $ ./bin/sqfs2tar <IMAGE> | ./bin/tar2sqfs -c <COMPRESSOR> test.sqfs + + And then unpacked as follows: + + $ time ./bin/sqfs2tar test.sqfs > /dev/null + + + Out of 4 runs, the worst wall-clock time ("real") was used for comparison. + + + 2.2) What Image was Tested? + + A Debian image extracted from the Debian 10.2 LiveDVD for AMD64 with XFCE + was used. + + The input size and resulting output sizes turned out to be as follows: + + - As LZ4 compressed SquashFS image: ~3.1GiB (3,381,751,808) + - As LZO compressed SquashFS image: ~2.5GiB (2,732,015,616) + - As zstd compressed SquashFS image: ~2.1GiB (2,295,017,472) + - As gzip compressed SquashFS image: ~2.3GiB (2,471,276,544) + - As lzma compressed SquashFS image: ~2.0GiB (2,102,169,600) + - As XZ compressed SquashFS image: ~2.0GiB (2,098,466,816) + - As uncompressed tarball: ~6.5GiB (7,008,118,272) + + + The Debian image is expected to contain realistic input data for a Linux + file system and also provide enough data for an interesting benchmark. + + + 2.3) What Test System was used? + + AMD Ryzen 7 3700X + 32GiB DDR4 RAM + Fedora 32 + + + 2.4) What software version was used? + + squashfs-tools-ng commit cc1141984a03da003e15ff229d3b417f8e5a24ad + + + 2.5) Results + + gzip 20.466s + lz4 2.519s + lzma 1m58.455s + lzo 10.521s + xz 1m59.451s + zstd 7.833s |