When you open a 7-Zip archive in a UI or with 7z l -slt
, you’ll see a “Method” field (e.g., LZMA2:24
) indicating
which method was used to compress the files in the archive.
Below are some of the most common ones and what they mean. While they do not uniquely identify all settings that were used, they are useful for trying to determine how the data was originally compressed.
General Information#
The most basic and universal method is simply having no compression at all.
Method | Comment | Relevant Preset |
---|---|---|
Copy | No compression | Store |
Otherwise, the method is typically composed of the name of the compression method and a sequence of parameters specific
to it, {MethodId}:{ParamName}{Value}:...
.
Often, the only parameter listed is the dictionary size, which is encoded as a power-of-two number of bytes when possible.
- For example,
LZMA2:24
uses the LZMA2 compression method with a dictionary size of \(2^{24} \text{ bytes} = 2^4 \cdot 2^{20} \text{ bytes} = 16 \text{ MiB}\). - If the size is not a perfect power of two, the number of MiB is used instead with an
m
suffix, e.g.,LZMA2:48m
means 48 MiB.
Methods can also be prefixed by the compression filters used in a similar format, (e.g., Delta LZMA2:24
or
Delta:4 LZMA2:24
) or suffixed with other method-specific parameters (e.g., LZMA2:24:lc1:lp2
).
The possible compression filters are Delta
, BCJ
, BCJ2
, ARM64
, ARMT
, ARM
, PPC
, SPARC
, IA64
, Swap2
and
Swap4
.
LZMA and LZMA2#
For the LZMA compression methods, the parameter is usually just the dictionary size. LZMA
and LZMA2
share the same
format.
Method | Dictionary Size | Preset |
---|---|---|
LZMA2:16 | 64 KiB | Fastest |
LZMA2:20 | 1 MiB | Fast |
LZMA2:21 | 2 MiB | |
LZMA2:3m | 3 MiB | |
LZMA2:22 | 4 MiB | |
LZMA2:6m | 6 MiB | |
LZMA2:23 | 8 MiB | |
LZMA2:12m | 12 MiB | |
LZMA2:24 | 16 MiB | Normal |
LZMA2:24m | 24 MiB | |
LZMA2:25 | 32 MiB | Maximum |
LZMA2:48m | 48 MiB | |
LZMA2:26 | 64 MiB | Ultra |
LZMA2:96m | 96 MiB | |
LZMA2:27 | 128 MiB | |
LZMA2:192m | 192 MiB | |
LZMA2:28 | 256 MiB | |
LZMA2:384m | 384 MiB | |
LZMA2:29 | 512 MiB | |
LZMA2:768m | 768 MiB | |
LZMA2:30 | 1024 MiB | |
LZMA2:1536m | 1536 MiB |
PPMd#
For PPMd, the parameters typically show both the word size and dictionary size. Examples are shown below.
Method | Word Size | Dictionary Size | Preset |
---|---|---|---|
PPMD:o2:mem20 | 2 | 1 MiB | |
PPMD:o3:mem21 | 3 | 2 MiB | |
PPMD:o4:mem3m | 4 | 3 MiB | |
PPMD:o4:mem22 | 4 | 4 MiB | Fastest and Fast |
PPMD:o4:mem6m | 4 | 6 MiB | |
PPMD:o5:mem23 | 5 | 8 MiB | |
PPMD:o5:mem12m | 5 | 12 MiB | |
PPMD:o6:mem24 | 6 | 16 MiB | Normal |
PPMD:o7:mem24m | 7 | 24 MiB | |
PPMD:o8:mem24m | 8 | 24 MiB | |
PPMD:o10:mem25 | 10 | 32 MiB | |
PPMD:o12:mem25 | 12 | 32 MiB | |
PPMD:o14:mem48m | 14 | 48 MiB | |
PPMD:o16:mem26 | 16 | 64 MiB | Maximum |
PPMD:o20:mem96m | 20 | 96 MiB | |
PPMD:o24:mem27 | 24 | 128 MiB | |
PPMD:o28:mem27 | 28 | 128 MiB | |
PPMD:o32:mem192m | 32 | 192 MiB | Ultra |
PPMD:o32:mem28 | 32 | 256 MiB | |
PPMD:o32:mem384m | 32 | 384 MiB | |
PPMD:o32:mem29 | 32 | 512 MiB | |
PPMD:o32:mem768m | 32 | 768 MiB | |
PPMD:o32:mem30 | 32 | 1024 MiB |
BZip2, Deflate, and Deflate64#
These compression methods often do not have any extra components unless filters or specific parameters were passed.
Method | Comments |
---|---|
BZip2 | BZip2 compression |
Deflate | Deflate compression (often a .zip file) |
Deflate64 | Deflate64 compression (often a .zip file) |
See also and references#
Please also refer to the documentation available at the main 7-Zip website and some basic details over on their Wikipedia page.