facebook / zstd

Zstandard - Fast real-time compression algorithm
http://www.zstd.net
Other
23.17k stars 2.06k forks source link

All modes of ZSTD & LZ5 benchmarked vs LZSSE2 vs Nakamichi #823

Closed Sanmayce closed 6 years ago

Sanmayce commented 7 years ago

Hi Yann, wonderful console tool, thanks a lot. Will use it in my insane 200+GB textual archives next month.

In order to have the ability to evaluate the [de]compression performance of some new computer here comes one quick benchmark: Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan.zip 24.7 MB (25,920,446 bytes): https://drive.google.com/file/d/0BzKgu_YpO6uZYkRQM01yU2JoYmM/view?usp=sharing

Testmachine: Laptop 'Compressionette' Lenovo Ideapad 310; i5-7200u @2.5GHz; 8GB DDR4 @1066MHz (2133MHz) CL15 CR2T; L2 cache: 2x256KB; L3 cache: 3MB

Quick roster:

07,051,332 -> 40,303,104 at 0,601 MB/s zstd 22 64-bits v1.3.1
08,061,821 -> 40,303,104 at 0,919 MB/s LZ5 49 64-bit 2.0.0
08,498,802 -> 40,303,104 at 0,743 MB/s zstd 15 64-bits v1.3.1
08,528,922 -> 40,303,104 at 1,017 MB/s LZ5 48 64-bit 2.0.0
09,027,267 -> 40,303,104 at 1,077 MB/s Nakamichi 'Ryuugan+'
09,438,742 -> 40,303,104 at 1,221 MB/s LZ5 29 64-bit 2.0.0
10,064,398 -> 40,303,104 at 1,843 MB/s LZ5 39 64-bit 2.0.0
10,359,314 -> 40,303,104 at 4,248 MB/s LZSSE2 17
11,812,204 -> 40,303,104 at 2,635 MB/s LZ5 19 64-bit 2.0.0
16,823,815 -> 40,303,104 at 1,991 MB/s Nakamichi 'Kaidanji'

The console log:

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>dir
 Volume in drive D is Sanmayce_Hitachi-298GB
 Volume Serial Number is 7C30-3455

 Directory of D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan

08/30/2017  10:03 PM    <DIR>          .
08/30/2017  10:03 PM    <DIR>          ..
08/30/2017  08:09 AM        10,359,314 Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar.L17.LZSSE2
08/30/2017  08:08 AM         9,027,267 Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar.Nakamichi
07/25/2017  05:22 AM           384,827 lz5.exe
08/27/2017  11:51 PM               372 MakeEXEs_Kaidanji.bat
07/17/2017  12:17 AM             1,632 MokujIN GREEN 224 prompt.lnk
08/28/2017  12:02 AM           170,490 Nakamichi_Kaidanji.c
08/28/2017  12:06 AM           117,248 Nakamichi_Kaidanji_Intel_64bit_YMM.exe
08/27/2017  06:01 AM           175,104 Nakamichi_Ryuugan+_(1xQWORD+1xXMM)_Intel_15.0_64bit_AVX.exe
08/27/2017  07:48 AM         6,160,495 Nakamichi_Ryuugan+_(32bit_64bit_executables_source).zip
07/25/2017  05:22 AM             6,144 timer64.exe
08/20/2017  01:19 PM           801,763 zstd.exe
08/30/2017  10:05 PM               598 _BENCH.BAT
              12 File(s)     27,205,254 bytes
               2 Dir(s)  59,031,474,176 bytes free

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>_BENCH.BAT

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>"Nakamichi_Ryuugan+_(1xQWORD+1xXMM)_Intel_15.0_64bit_AVX.exe" Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar.Nakamichi /bench
Nakamichi 'Ryuugan+', written by Kaze, based on Nobuo Ito's LZSS source, babealicious suggestion by m^2 enforced, muffinesque suggestion by Jim Dempsey enforced.
Note0: Nakamichi 'Dragoneye' is 100% FREE, licenseless that is.
Note1: Hamid Buzidi's LzTurbo ([a] FASTEST [Textual] Decompressor, Levels 19/29/39) retains kingship, his TurboBench (2017-Apr-07) proves the supremacy of LzTurbo, Turbo-Amazing!
Note2: Conor Stokes' LZSSE2 ([a] FASTEST Textual Decompressor, Level 17) is embedded, all credits along with many thanks go to him.
Note3: 'Ryuugan' predecessors are Washigan, Okamigan, Zato, Tsubame, Tengu-Tsuyo, Tengu, Rakka, Kokuen, Kinroba, Yoko, Kinutora, Jiten, Butsuhira, Suiken, Keigan, Kumataka, Washi, Aratama, Hitomi, Nekomata, Kitsune, Kinezumi
, Sanbashi, Kaiko, Inazuma, Zangetsu, Hanabi, Hanazakari, Sanshi and Kaidanji.
Note4: This compile can handle files up to 5120MB.
Note5: The matchfinder/memmem() is 'Railgun_Trolldom'.
Note6: Instead of '_mm_loadu_si128' '_mm_lddqu_si128' is used.
Note7: The lookahead 'Tsuyo' heuristic which looks one char ahead is applied thrice, still not strengthened, though.
Note8: The compile made 2017-May-04, the decompression time measuring is done in 16x8 passes choosing the top score from 64 back-to-back runs - the goal - to enter [maximal] Turbo Mode.
Note9: Just to reduce the codesize, the 3xQWORD become (in this compile) 1xQWORD+1xXMMWORD.
NoteA: Please send me (at sanmayce@sanmayce.com) decompression results obtained on machines with fast CPU-RAM subsystems.
Current priority class is REALTIME_PRIORITY_CLASS.
Allocating Source-Buffer 8 MB ...
Allocating Target-Buffer 5,120 MB ...
Decompressing 9,027,267 bytes (being the compressed stream) ...
Warming up ...
RAM-to-RAM performance:
1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1070 MB/s; 1070 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1077 MB/s; 1077 MB/s; 1077 MB/s; 1069 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1074 MB/s; 1077 MB/s; 1070 MB/s; 1063 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1070 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1077 MB/s; 1069 MB/s; 1077 MB/s; 1070 MB/s; 1072 MB/s
Enforcing 17 seconds idling to avoid throttling ...
1063 MB/s; 1063 MB/s; 1077 MB/s; 1077 MB/s; 1077 MB/s; 1070 MB/s; 1063 MB/s; 1069 MB/s; 1077 MB/s; 1077 MB/s; 1069 MB/s; 1077 MB/s; 1077 MB/s; 1069 MB/s; 1077 MB/s; 1076 MB/s
Enforcing 17 seconds idling to avoid throttling ...
This CPU seems to be working at 2,711 MHz, or more due to ensleeping.
RAM-to-RAM (peak) performance: 1077 MB/s.
Source-file-Hash(FNV1A_YoshimitsuTRIAD) = 0x6a8d,def5
Target-file-Hash(FNV1A_YoshimitsuTRIAD) = 0xcd46,fbc3
Allocating Source-Buffer 9 MB ...
Allocating Target-Buffer 5,120 MB ...
Decompressing 'Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar.L17.LZSSE2' (10,359,314 bytes, being the compressed stream) ...
Warming up ...
RAM-to-RAM performance:
4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s
Enforcing 17 seconds idling to avoid throttling ...
4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4248 MB/s; 4241 MB/s
Enforcing 17 seconds idling to avoid throttling ...
This CPU seems to be working at 2,711 MHz, or more due to ensleeping.
RAM-to-RAM (peak) performance: 4248 MB/s.
Nakamichi 'Ryuugan' vs LZSSE2 17, c.size: 0.87x
LZSSE2 17 vs Nakamichi 'Ryuugan', d.rate: 3.94x
Bottomline:
Nakamichi 'Ryuugan' expanding 4.46x to 40,303,104 at 1077 MB/s.

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>zstd -h
*** zstd command line interface 64-bits v1.3.1, by Yann Collet ***
Usage :
      zstd [args] [FILE(s)] [-o file]

FILE    : a filename
          with no FILE, or when FILE is - , read standard input
Arguments :
 -#     : # compression level (1-19, default:3)
 -d     : decompression
 -D file: use `file` as Dictionary
 -o file: result stored into `file` (only if 1 input file)
 -f     : overwrite output without prompting and (de)compress links
--rm    : remove source file(s) after successful de/compression
 -k     : preserve source file(s) (default)
 -h/-H  : display help/long help and exit

Advanced arguments :
 -V     : display Version number and exit
 -v     : verbose mode; specify multiple times to increase verbosity
 -q     : suppress warnings; specify twice to suppress errors too
 -c     : force write to standard output, even if it is the console
 -l     : print information about zstd compressed files
--ultra : enable levels beyond 19, up to 22 (requires more memory)
 -T#    : use # threads for compression (default:1)
 -B#    : select size of each job (default:0==automatic)
--no-dictID : don't write dictID into header (dictionary compression)
--[no-]check : integrity check (default:enabled)
 -r     : operate recursively on directories
--format=gzip : compress files to the .gz format
--test  : test compressed file integrity
--[no-]sparse : sparse mode (default:enabled on file, disabled on stdout)
 -M#    : Set a memory usage limit for decompression
--      : All arguments after "--" are treated as files

Dictionary builder :
--train ## : create a dictionary from a training set of files
--train-cover[=k=#,d=#,steps=#] : use the cover algorithm with optional args
--train-legacy[=s=#] : use the legacy algorithm with selectivity (default: 9)
 -o file : `file` is dictionary name (default: dictionary)
--maxdict=# : limit dictionary to specified size (default : 112640)
--dictID=# : force dictionary ID to specified value (default: random)

Benchmark arguments :
 -b#    : benchmark file(s), using # compression level (default : 1)
 -e#    : test all compression levels from -bX to # (default: 1)
 -i#    : minimum evaluation time in seconds (default : 3s)
 -B#    : cut file into independent blocks of size # (default: no block)
--priority=rt : set process priority to real-time

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>zstd -b1 -e22 --ultra --priority=rt --no-check "Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar"
Benchmarking levels from 1 to 22
Note : switching to a real-time priority
 1#mes_(Russian).tar :  40303104 ->  12322584 (3.271), 192.1 MB/s , 640.5 MB/s
 2#mes_(Russian).tar :  40303104 ->  12466532 (3.233), 179.1 MB/s , 562.7 MB/s
 3#mes_(Russian).tar :  40303104 ->  11239090 (3.586), 154.6 MB/s , 631.7 MB/s
 4#mes_(Russian).tar :  40303104 ->  11166556 (3.609), 148.5 MB/s , 633.0 MB/s
 5#mes_(Russian).tar :  40303104 ->  11361353 (3.547),  94.7 MB/s , 569.4 MB/s
 6#mes_(Russian).tar :  40303104 ->  10832974 (3.720),  63.5 MB/s , 622.6 MB/s
 7#mes_(Russian).tar :  40303104 ->  10330994 (3.901),  43.4 MB/s , 663.7 MB/s
 8#mes_(Russian).tar :  40303104 ->  10134919 (3.977),  33.1 MB/s , 692.6 MB/s
 9#mes_(Russian).tar :  40303104 ->  10083316 (3.997),  30.1 MB/s , 692.9 MB/s
10#mes_(Russian).tar :  40303104 ->   9706212 (4.152),  17.3 MB/s , 721.9 MB/s
11#mes_(Russian).tar :  40303104 ->   9616538 (4.191),  14.8 MB/s , 712.3 MB/s
12#mes_(Russian).tar :  40303104 ->   9298166 (4.335),   7.6 MB/s , 732.1 MB/s
13#mes_(Russian).tar :  40303104 ->   9218521 (4.372),   6.6 MB/s , 719.4 MB/s
14#mes_(Russian).tar :  40303104 ->   8944246 (4.506),   3.1 MB/s , 728.1 MB/s
15#mes_(Russian).tar :  40303104 ->   8498802 (4.742),   3.3 MB/s , 743.7 MB/s
16#mes_(Russian).tar :  40303104 ->   8242616 (4.890),   2.8 MB/s , 624.0 MB/s
17#mes_(Russian).tar :  40303104 ->   7949967 (5.070),   2.3 MB/s , 690.9 MB/s
18#mes_(Russian).tar :  40303104 ->   7640936 (5.275),   1.9 MB/s , 700.6 MB/s
19#mes_(Russian).tar :  40303104 ->   7410740 (5.438),   1.6 MB/s , 622.2 MB/s
20#mes_(Russian).tar :  40303104 ->   7089976 (5.685),   1.4 MB/s , 600.8 MB/s
21#mes_(Russian).tar :  40303104 ->   7053677 (5.714),   1.3 MB/s , 602.6 MB/s
22#mes_(Russian).tar :  40303104 ->   7051332 (5.716),   1.3 MB/s , 601.3 MB/s

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>lz5 -h
LZ5 command line interface 64-bit 2.0.0 by Y.Collet & P.Skibinski (Feb  5 2017)
Usage :
      lz5 [arg] [input] [output]

input   : a filename
          with no FILE, or when FILE is - or stdin, read standard input
Arguments :
 -10...-19 : compression method fastLZ4 = 16-bit bytewise codewords
             higher number == more compression but slower
 -20...-29 : compression method LZ5v2 = 24-bit bytewise codewords
 -30...-39 : compression method fastLZ4 + Huffman
 -40...-49 : compression method LZ5v2 + Huffman
 -d     : decompression (default for .lz5 extension)
 -z     : force compression
 -f     : overwrite output without prompting
--rm    : remove source file(s) after successful de/compression
 -h/-H  : display help/long help and exit

Advanced arguments :
 -V     : display Version number and exit
 -v     : verbose mode
 -q     : suppress warnings; specify twice to suppress errors too
 -c     : force write to standard output, even if it is the console
 -t     : test compressed file integrity
 -m     : multiple input files (implies automatic output filenames)
 -r     : operate recursively on directories (sets also -m)
 -B#    : Block size [1-7] = 128KB, 256KB, 1MB, 4MB, 16MB, 64MB, 256MB (default : 4)
 -BD    : Block dependency (improve compression ratio)
--no-frame-crc : disable stream checksum (default:enabled)
--content-size : compressed frame includes original size (default:not present)
--[no-]sparse  : sparse mode (default:enabled on file, disabled on stdout)
Benchmark arguments :
 -b#    : benchmark file(s), using # compression level (default : 1)
 -e#    : test all compression levels from -bX to # (default : 1)
 -i#    : minimum evaluation time in seconds (default : 3s)
 -B#    : cut file into independent blocks of size # bytes [32+]
                      or predefined block size [1-7] (default: 4)

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>lz5.exe -b10 -e49 --no-frame-crc "Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar"
Benchmarking levels from 10 to 49
10#mes_(Russian).tar :  40303104 ->  19312194 (2.087), 294.3 MB/s ,2263.1 MB/s
11#mes_(Russian).tar :  40303104 ->  18353758 (2.196), 247.3 MB/s ,2118.2 MB/s
12#mes_(Russian).tar :  40303104 ->  16162460 (2.494), 102.1 MB/s ,2460.2 MB/s
13#mes_(Russian).tar :  40303104 ->  14915061 (2.702),  67.6 MB/s ,2539.4 MB/s
14#mes_(Russian).tar :  40303104 ->  13921898 (2.895),  52.9 MB/s ,2592.8 MB/s
15#mes_(Russian).tar :  40303104 ->  13186721 (3.056),  40.3 MB/s ,2623.0 MB/s
16#mes_(Russian).tar :  40303104 ->  13527595 (2.979),  26.7 MB/s ,2590.2 MB/s
17#mes_(Russian).tar :  40303104 ->  12094290 (3.332),   7.2 MB/s ,2642.3 MB/s
18#mes_(Russian).tar :  40303104 ->  11823938 (3.409),   4.6 MB/s ,2637.3 MB/s
19#mes_(Russian).tar :  40303104 ->  11812204 (3.412),   4.4 MB/s ,2635.4 MB/s
20#mes_(Russian).tar :  40303104 ->  18588918 (2.168), 281.8 MB/s ,1386.2 MB/s
21#mes_(Russian).tar :  40303104 ->  16881737 (2.387), 155.4 MB/s ,1564.3 MB/s
22#mes_(Russian).tar :  40303104 ->  16457213 (2.449), 126.7 MB/s ,1546.8 MB/s
23#mes_(Russian).tar :  40303104 ->  16080894 (2.506),  43.8 MB/s ,1793.8 MB/s
24#mes_(Russian).tar :  40303104 ->  14756161 (2.731),  29.9 MB/s ,1822.8 MB/s
25#mes_(Russian).tar :  40303104 ->  14198639 (2.839),  18.4 MB/s ,1790.5 MB/s
26#mes_(Russian).tar :  40303104 ->  12028365 (3.351),   3.7 MB/s ,1793.3 MB/s
27#mes_(Russian).tar :  40303104 ->   9885775 (4.077),   1.7 MB/s ,1424.0 MB/s
28#mes_(Russian).tar :  40303104 ->   9865137 (4.085),   1.6 MB/s ,1421.1 MB/s
29#mes_(Russian).tar :  40303104 ->   9438742 (4.270),   1.4 MB/s ,1221.5 MB/s
30#mes_(Russian).tar :  40303104 ->  16734937 (2.408),  12.4 MB/s ,1571.5 MB/s
31#mes_(Russian).tar :  40303104 ->  15057591 (2.677), 202.5 MB/s ,1486.3 MB/s
32#mes_(Russian).tar :  40303104 ->  14954513 (2.695), 106.3 MB/s ,1693.9 MB/s
33#mes_(Russian).tar :  40303104 ->  14279240 (2.822),  92.9 MB/s ,1700.7 MB/s
34#mes_(Russian).tar :  40303104 ->  13245166 (3.043),  62.6 MB/s ,1755.2 MB/s
35#mes_(Russian).tar :  40303104 ->  12406099 (3.249),  50.0 MB/s ,1803.4 MB/s
36#mes_(Russian).tar :  40303104 ->  11773624 (3.423),  38.5 MB/s ,1833.9 MB/s
37#mes_(Russian).tar :  40303104 ->  12049644 (3.345),  25.9 MB/s ,1806.8 MB/s
38#mes_(Russian).tar :  40303104 ->  10760764 (3.745),   7.2 MB/s ,1863.1 MB/s
39#mes_(Russian).tar :  40303104 ->  10064398 (4.005),   4.4 MB/s ,1843.3 MB/s
40#mes_(Russian).tar :  40303104 ->  14979388 (2.691), 243.5 MB/s , 976.2 MB/s
41#mes_(Russian).tar :  40303104 ->  14003906 (2.878), 134.2 MB/s ,1009.0 MB/s
42#mes_(Russian).tar :  40303104 ->  13671501 (2.948), 111.8 MB/s ,1008.3 MB/s
43#mes_(Russian).tar :  40303104 ->  13236931 (3.045),  40.7 MB/s ,1091.6 MB/s
44#mes_(Russian).tar :  40303104 ->  12317045 (3.272),  28.5 MB/s ,1115.7 MB/s
45#mes_(Russian).tar :  40303104 ->  12002742 (3.358),  17.7 MB/s ,1113.9 MB/s
46#mes_(Russian).tar :  40303104 ->  11514413 (3.500),   7.1 MB/s ,1050.0 MB/s
47#mes_(Russian).tar :  40303104 ->  10225012 (3.942),   3.5 MB/s ,1163.1 MB/s
48#mes_(Russian).tar :  40303104 ->   8528922 (4.725),   1.7 MB/s ,1017.5 MB/s
49#mes_(Russian).tar :  40303104 ->   8061821 (4.999),   1.4 MB/s , 919.7 MB/s

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>Nakamichi_Kaidanji_Intel_64bit_YMM.exe Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar
Nakamichi 'Kaidanji', written by Kaze, based on Nobuo Ito's LZSS source, babealicious suggestion by m^2 enforced.
Current priority class is REALTIME_PRIORITY_CLASS.
Compressing 40303104 bytes ...
-; Each rotation means 64KB are encoded; Done 100%
NumberOfFullLiterals (lower-the-better): 5025
RAM-to-RAM performance: 152 KB/s.

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>Nakamichi_Kaidanji_Intel_64bit_YMM.exe Complete_works_of_Fyodor_Dostoyevsky_in_15_volumes_(Russian).tar.Nakamichi
Nakamichi 'Kaidanji', written by Kaze, based on Nobuo Ito's LZSS source, babealicious suggestion by m^2 enforced.
Current priority class is REALTIME_PRIORITY_CLASS.
Decompressing 128 times 16823815 bytes ...
RAM-to-RAM performance: 1991 MB/s.

D:\_KAZE_workfield\more\Benchmark_Dostoyevsky_zstd_vs_lz5_vs_Ryuugan>

What difference 3200MHz CL14 could make, anyone?

Cyan4973 commented 6 years ago

Thanks for feedback @Sanmayce !