Szip is a freeware portable general purpose lossless compression program. It has a high speed and compression, but high memory demands (up to 20MB) too. See the monthly Archive Comparison Test (A.C.T.) by Jeff Gilchrist for comparative results. Also check the Canterbury Corpus where szip is best compressor for large text files.
szip is not to be confused with the following:
Szip uses my blocksort variant (protected by US pat. 6,199,064 others pending) with a maximum blocksize of 4.1MB (default 1.7MB), which means compression is better for larger files. It uses a byte-oriented arithmetic coder (actually it is a range coder) for output (GNU GPL sourcecode available here) and a prediction model specifically developed for blocksort. The sourcecode for szip is here. There is a general public license for distribution and usage of szip included in the package, so no need to worry.
The core compression technology is well suited for hardware implementation, but surrounding modelling would be done differently in hardware. If interested email me for licence and assistance at email@example.com .
The current release is 1.12b, slightly better compression can be obtained with 1.05X (any letter). I had no bug reports except from VERY LONG (can be hours) runtimes for some files when using -o0. This is expected behavior of the public version.
Szip is available for several platforms, all platforms produce the same output with the same input. Other machines are available as well; which ones basically depend on where I can compile. If I can compile on your system there will be a new platform. Szip source is plain ANSI C-code and can be downloaded here
Speed for large files is enhanced in 1.12a if the memory management of the OS is stupid. For example a 250MB file compressed with -o4b41 compressed with 1.11 in 22 minutes, with 1.12a in 3.5 minutes - that is more than 6 times faster.
Inside szip there is no limitation to the file size, however your IO library or the one used for the compilation may fail on files larger than 2GB or 4GB. If you encounter this or other problems please contact firstname.lastname@example.org
1.11 and 1.12 still print 1.11BETA as version (with the -v option).
1.11 and 1.12 may take longer than necessary because the operating system memory management will punish cooperative programs. Fixed in 1.12a
With -o0 VERY LONG runtimes for some files can happen. This is expected behavior of the public version. Don't use -o0 if this hurts you.
A popular webbrowser that comes with one PC operating system downloads .tar.gz as _tar.tar files - please fix this "feature" when asked for the filename.
szip [-d] [options] [inputfile [outputfile]]
If you omit the outputfile the result is sent to stdout. If you omit the inputfile too it reads from stdin. Since DOS/Windows/OS2 does not support binary pipes I recommend using both arguments in DOS/Windows/OS2.
1.12 and 1.12a are identical to 1.11 except for some internal changes in one used module to make it compile when int is only 16 bit and some speedups. 1.12b and 1.12a are identical - except changes to avoid compiler warnings.If your OS is not supported or the release is old please contact email@example.com if you can compile C-code.
If you have any questions or suggestions regarding szip please mail firstname.lastname@example.org
(c) Michael Schindler, September 1999 to October 2002. If you locate a spelling error click here
szip and the >data</// logo are trademarks or registered trademarks
of Michael Schindler.
All other trademarks or registered trademarks are held by their owners.