SuperREP 3.2: huge-dictionary LZ77 preprocessor
Homepage: http://freearc.org/research/SREP.aspx
Description
SuperREP is the first LZ77 compressor that supports dictionaries larger than RAM available.
Default settings (-l512) allow to process files that are 20x larger than RAM size.
Memory requirements are proportional to 1/L, so by increasing -l value it's possible to process even larger files.
Compression speed is about 100 mb/s and decompression runs at 250 mb/s on i3-2100.
Changelog
SREP 3.2 (April 6, 2013):
-m2 -lN now is the same as -m3 -lN -cN: compression ratio is average between -m1 and -m3, while speed is the same as in old versions
-a0: the same compresssion ratio as -a1, memory usage is smaller by 5-10%, but 1.5-2x slower
-a32/-a64: sometimes faster than -a16 (only with large pages), but needs even more memory
-slp[+/-/]: force/disable/try(default) large pages support
Minor changes:
-v[0..2]: verbosity level
-pcMAX_OFFSET: print performance counters for matches closer than MAX_OFFSET
-l64k/-c1mb syntax support (k/m/kb/mb suffixes for kilobytes/megabytes)
Both 32-bit and 64-bit default executables are compiled with GCC 4.7
32/64-bit dynamic/static linux builds
SREP 3.1 (February 23, 2013):
-m1f -a4 now is default compression mode, for quick and dirty compression. Use -m3f -a1 for maximum compression
32-bit version became 1.5x faster than in SREP 3.0
gcc64 version: srep64g.exe. srep32i/srep64i still are the fastest executables
bugfix: it was impossible to allocate more than 4 gb for bitarr[]
bugfix: 32-bit version now uses only 1.5 gb for future-lz decompression by default (instead of 4gb-1 that's too much)
Changes in the printed stats:
cpu time displayed now is the sum of times spent in *ALL* threads
cpu/global times and speeds are printed, with speeds measured in MiB/s
on future-lz decompression, I/O and VM stats are printed only when they are non-zero
-pc option displays performance counters
Unlike 32-bit SREP 3.01 that used one 32-bit hash resulting in degraded speed on huge files and in -m3 mode, now 32-bit version uses two 32-bit hashes,
making compression both fast and accurate. 64-bit version still employs single 64-bit hash, making it up to 1.5x faster than 32-bit code.
SREP 3.01 (March 4, 2012):
speed up the 32-bit executable by calculating 32-bit hash (instead of 64-bit one); it may hurt speed/compression on very large files