-
Notifications
You must be signed in to change notification settings - Fork 2
jkataja/pompom
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Arithmetic Coding and PPM compression Janne J Kataja <[email protected]> Configure: $ $VISUAL common.pri Edit the -march=___ , -msse4.2 and -mcrc32 gcc options to match your target hardware (options in 'gcc --help=target'). Setting -DBUILTIN_CRC enables the use of CRC32c hardware intrisics. The instruction is added in SSE4.2 (available in i5/i7 or later). Otherwise, software hashing will be used. Using CRC32 instruction has a major impact on performance. Build: Minimum of gcc 4.4 is required to build. $ qmake $ make Usage: $ bin/pompom -h Usage: pompom [OPTION]... Compress or decompress input using fixed-order PPM compression. Reads from standard input and writes to standard output. Options: -c [ --stdout ] compress to stdout (default) -d [ --decompress ] decompress to stdout -h [ --help ] show this help -a [ --adapt ] compress: fast local adaptation -A [ --adaptsize ] arg (=22) compress: adaptation threshold in bits [8,32] -r [ --reset ] compress: full reset model on memory limit -b [ --bootsize ] arg (=32) compress: bootstrap buffer size in KiB [1,255] -n [ --count ] arg (=0) compress: stop after count bytes -o [ --order ] arg (=3) compress: model order [1,6] -m [ --mem ] arg (=32) compress: memory use in MiB [8,2048] Benchmarking: Place a text corpus in directory ex. calgary/ , largetext/ or pizzachili/ . Benchmarking script runtest.pl takes a path containing a test corpus as an argument, and 1) compresses data using gzip, bzip2, 7zip and pompom, 2) uncompresses the data, 3) checks that md5sum of original and uncompressed files match and 4) outputs a LaTeX table of the results, with total compression and uncompression time and compressed file bpc ratio. $ data/runtest.pl data/calgary/
About
Arithmetic Coding and PPM compression
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published