Versions tested: 2, 3c
Optimal parameters: default
Authors: Matt Mahoney, Kenneth Oksanen
Algorithms: SR+ARI
Notable peformances: -


A 20-bit hashed order-4 context is mapped into the last 3 bytes seen in that context in a move-to-front queue, plus a consecutive hit count. Queue positions (hits) or literals (misses) are arithmetic coded using the count and an an order-1 context (order-0 if the count is more than 3) as secondary context. After a byte is coded, it is moved to the front of the queue. The hit count is updated as follows: incremented (max 63) if the first byte is matched, set to 1 if any other byte is matched, or set to 0 in case of a miss.
sr2 description from LTCB


sr 3C (aka SR3C) is a rewrite of sr 2 in C by Kenneth Oksanen. We use the version by Matt Mahoney which implements an interface for the SR3C.

The author of sr 3C describes the program.

email 2009, Oct 15


(Have info that should be added here? E-mail.)

Qualified configurations
Ver Rating CPR DPR S.E. R.E. Ratio C. kB/s D. kB/s
2 5 12 0 75 0 2.644 15371 12529
3c 7 + + -17% 2.768 +4.7% 9213 -40% 9947 -21%

Version info

2, tar: yes, mode: 32-bit, crc32: 6a7ac9ff, decoder: 4 kB
compression: sr2.exe <src> <cfile>
decompression: unsr2.exe <cfile> <src>
3c, tar: yes, mode: 32-bit, crc32: bf4e37cd, decoder: 7 kB
compression: sr3cw.exe c <src> <cfile>
decompression: sr3cw.exe d <cfile> <src>