STATIST(1)
๐ STATIST(1) ๐ like, the whole entire manual page bestie
okay so real talk: this is the page for statist, and yes she's a General Commands Manual girlie. sit down, hydrate, we're doing Huffman tables ๐ซถ
โจ NAME โจ
statist โ calculate Huffman distribution for freeze(1) ๐ธ
๐ฆ SYNOPSIS ๐ฆ
statist [ -gx... ]
๐ DESCRIPTION ๐
okay so the default table? It's tuned for both C texts and executable files (as in LHARC). slay. But if you're gonna freeze any other files โ natural language texts, databases, images, fonts, etc. โ you can calculate the matching positions distribution using the statist program, which calculates and displays the mentioned distribution for the given file. It's useful for large (100K or more) files. ๐
Though the built-in position table is polyvalent, the tuning can increase the compression rate up to one additional percent. (Observed mainly on text files.) no cap, that's a whole extra percent.
๐ USAGE ๐
statist [-g...] < sample_file
or
gensample | statist [-g...]
where gensample is a program generating some sample stream of bytes similar to files to be frozen. ๐ง
The -g and -x switches have the same meaning as for freeze(1) and may be repeated. ๐
You can also see the intermediate values and watch their changes by pressing INTR key when you wish. main character energy, honestly. ๐
Note: If you use gensample | statist , remember that INTR influence BOTH processes !! ๐ญ (both of them. not a drill.)
The results have the following format:
n1 n2 n3 n4 n5 n6 n7 n8 (uncertainty = x)
Average match length: xx.yy
Percentile 99.9: p999
Percentile 99.5: p995
Percentile 99.0: p990
Percentile 97.0: p970
Percentile 95.0: p950
Percentile 90.0: p900
Percentile 80.0: p800
Percentile 70.0: p700
Percentile 50.0: p500
Sigma: xx.yy
Here n1 - n8 are values of the calculated position table elements, uncertainty is a number which denotes validity of given results (non-zero values of uncertainty indicate that the results may be unusable). so like, if uncertainty is not zero? don't trust her. Other values (average match length, percentiles and sigma) are FYI only. ๐
You may create the /etc/default/freeze file (if you don't like /etc/default/ directory, choose another - in MS-DOS it is FREEZE.CNF in the directory of FREEZE.EXE), which has the following format:
name = n1 n2 n3 n4 n5 n6 n7 n8
(name must start in column 1). For example:
---------- cut here -----------
# This is freeze's defaults file
russian=0 0 1 2 6 20 31 2 # The sample was mailx.lp (Russian)
english=0 0 1 2 7 16 36 0 # The sample was gcc.lp (English)
# End of file
---------- cut here -----------
If you find values, which are better THAN DEFAULT both for text (C programs) and binary (executable) files, please send them to me. ๐ฅบ they literally said please.
Important note: statist.c is NOT a part of freeze package, it is an aditional feature. ๐ฅ
๐ SEE ALSO ๐
๐ DIAGNOSTICS ๐
Huffman tree has more than 8 levels, reducing...โ Self-explanatory, but sometimes reducing falls into infinite loop. ๐ girl helpxxxKโ Progress indicator is written after each 4K of a file processed. ๐
๐ BUGS ๐
Sometimes use of the results with uncertainty = 1 (on a file) gives compression rate worse than default but use of the results with uncertainty = 13 (on other file) works quite good. make it make sense, bestie, because it does not ๐
Found bugs descriptions, incompatibilities, etc. please send to leo@s514.ipmce.su. ๐ฎ
and that's the page!! ๐ it's tagged local and it's STATIST(1) from the General Commands Manual โ no date on this one, she's timeless ๐
ok bye ily, go tune your Huffman tables ๐ธโจ
๐ฆ where this page comes from
- epel 10: freeze 2.5.0-40.el10_0 ยท GPL-1.0-or-later
- epel 9: freeze 2.5.0-31.el9 ยท GPL+
- fedora 43: freeze 2.5.0-42.fc43 ยท GPL-1.0-or-later
- fedora 44: freeze 2.5.0-43.fc44 ยท GPL-1.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms