diff options
Diffstat (limited to '')
-rw-r--r-- | doc/plzip.1 | 7 | ||||
-rw-r--r-- | doc/plzip.info | 68 | ||||
-rw-r--r-- | doc/plzip.texinfo | 49 |
3 files changed, 87 insertions, 37 deletions
diff --git a/doc/plzip.1 b/doc/plzip.1 index c6a2e2d..bad484c 100644 --- a/doc/plzip.1 +++ b/doc/plzip.1 @@ -1,5 +1,5 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36. -.TH PLZIP "1" "February 2010" "Plzip 0.5" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. +.TH PLZIP "1" "March 2010" "Plzip 0.6" "User Commands" .SH NAME Plzip \- data compressor based on the LZMA algorithm .SH SYNOPSIS @@ -66,12 +66,13 @@ Numbers may be followed by a multiplier: k = kB = 10^3 = 1000, Ki = KiB = 2^10 = 1024, M = 10^6, Mi = 2^20, G = 10^9, Gi = 2^30, etc... .SH "REPORTING BUGS" Report bugs to lzip\-bug@nongnu.org +.br Plzip home page: http://www.nongnu.org/lzip/plzip.html .SH COPYRIGHT Copyright \(co 2009 Laszlo Ersek. .br Copyright \(co 2010 Antonio Diaz Diaz. -Using Lzlib 0.9-rc1 +Using Lzlib 1.0\-rc1 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> .br This is free software: you are free to change and redistribute it. diff --git a/doc/plzip.info b/doc/plzip.info index dc6526d..037a286 100644 --- a/doc/plzip.info +++ b/doc/plzip.info @@ -12,12 +12,13 @@ File: plzip.info, Node: Top, Next: Introduction, Up: (dir) Plzip Manual ************ -This manual is for Plzip (version 0.5, 10 February 2010). +This manual is for Plzip (version 0.6, 20 March 2010). * Menu: * Introduction:: Purpose and features of plzip * Invoking Plzip:: Command line interface +* Program Design:: Internal structure of plzip * File Format:: Detailed format of the compressed file * Problems:: Reporting bugs * Concept Index:: Index of concepts @@ -86,7 +87,7 @@ corrupt or invalid input file, 3 for an internal consistency error (eg, bug) which caused plzip to panic. -File: plzip.info, Node: Invoking Plzip, Next: File Format, Prev: Introduction, Up: Top +File: plzip.info, Node: Invoking Plzip, Next: Program Design, Prev: Introduction, Up: Top 2 Invoking Plzip **************** @@ -110,8 +111,8 @@ The format for running plzip is: Set the input data block size in bytes. The input file will be divided in chunks of this size before compression is performed. Valid values range from 8KiB to 1GiB. Default value is two times - the dictionary size. It is a waste of memory to choose a data - size smaller than the dictionary size. + the dictionary size. Plzip will reduce the dictionary size if it + is larger than the chosen data size. `--stdout' `-c' @@ -137,6 +138,13 @@ The format for running plzip is: 273. Larger values usually give better compression ratios but longer compression times. +`--threads=THREADS' +`-n THREADS' + Set the number of worker threads. Valid values range from 1 to "as + many as your system can support". If this option is not used, + plzip tries to detect the number of processors in the system and + use it as default value. + `--output=FILE' `-o FILE' When reading from standard input and `--stdout' has not been @@ -173,15 +181,15 @@ The format for running plzip is: slower than `-1'. These options have no effect when decompressing. Level Dictionary size Match length limit - -1 1MiB 10 bytes - -2 1MiB 12 bytes - -3 1MiB 17 bytes - -4 2MiB 26 bytes - -5 4MiB 44 bytes - -6 8MiB 80 bytes - -7 16MiB 108 bytes - -8 16MiB 163 bytes - -9 32MiB 273 bytes + -1 1 MiB 10 bytes + -2 1.5 MiB 12 bytes + -3 2 MiB 17 bytes + -4 3 MiB 26 bytes + -5 4 MiB 44 bytes + -6 8 MiB 80 bytes + -7 16 MiB 108 bytes + -8 24 MiB 163 bytes + -9 32 MiB 273 bytes `--fast' `--best' @@ -205,9 +213,25 @@ Z zettabyte (10^21) | Zi zebibyte (2^70) Y yottabyte (10^24) | Yi yobibyte (2^80) -File: plzip.info, Node: File Format, Next: Problems, Prev: Invoking Plzip, Up: Top +File: plzip.info, Node: Program Design, Next: File Format, Prev: Invoking Plzip, Up: Top + +3 Program Design +**************** + +For each input file, a splitter thread and several worker threads are +created, acting the main thread as muxer (multiplexer) thread. A "packet +courier" takes care of data transfers among threads and limits the +maximum number of data blocks (packets) being processed simultaneously. + + The splitter reads data blocks from the input file, and distributes +them to the workers. The workers (de)compress the blocks received from +the splitter. The muxer collects processed packets from the workers, and +writes them to the output file. + + +File: plzip.info, Node: File Format, Next: Problems, Prev: Program Design, Up: Top -3 File Format +4 File Format ************* In the diagram below, a box like this: @@ -269,7 +293,7 @@ additional information before, between, or after them. File: plzip.info, Node: Problems, Next: Concept Index, Prev: File Format, Up: Top -4 Reporting Bugs +5 Reporting Bugs **************** There are probably bugs in plzip. There are certainly errors and @@ -296,6 +320,7 @@ Concept Index * introduction: Introduction. (line 6) * invoking: Invoking Plzip. (line 6) * options: Invoking Plzip. (line 6) +* program design: Program Design. (line 6) * usage: Invoking Plzip. (line 6) * version: Invoking Plzip. (line 6) @@ -303,10 +328,11 @@ Concept Index Tag Table: Node: Top223 -Node: Introduction747 -Node: Invoking Plzip3489 -Node: File Format7178 -Node: Problems9134 -Node: Concept Index9663 +Node: Introduction791 +Node: Invoking Plzip3533 +Node: Program Design7499 +Node: File Format8161 +Node: Problems10117 +Node: Concept Index10646 End Tag Table diff --git a/doc/plzip.texinfo b/doc/plzip.texinfo index 5cae209..8867c7f 100644 --- a/doc/plzip.texinfo +++ b/doc/plzip.texinfo @@ -5,8 +5,8 @@ @finalout @c %**end of header -@set UPDATED 10 February 2010 -@set VERSION 0.5 +@set UPDATED 20 March 2010 +@set VERSION 0.6 @dircategory Data Compression @direntry @@ -34,6 +34,7 @@ This manual is for Plzip (version @value{VERSION}, @value{UPDATED}). @menu * Introduction:: Purpose and features of plzip * Invoking Plzip:: Command line interface +* Program Design:: Internal structure of plzip * File Format:: Detailed format of the compressed file * Problems:: Reporting bugs * Concept Index:: Index of concepts @@ -133,8 +134,8 @@ Print the version number of plzip on the standard output and exit. Set the input data block size in bytes. The input file will be divided in chunks of this size before compression is performed. Valid values range from 8KiB to 1GiB. Default value is two times the dictionary size. -It is a waste of memory to choose a data size smaller than the -dictionary size. +Plzip will reduce the dictionary size if it is larger than the chosen +data size. @item --stdout @itemx -c @@ -159,6 +160,13 @@ Set the match length limit in bytes. Valid values range from 5 to 273. Larger values usually give better compression ratios but longer compression times. +@item --threads=@var{threads} +@itemx -n @var{threads} +Set the number of worker threads. Valid values range from 1 to "as many +as your system can support". If this option is not used, plzip tries to +detect the number of processors in the system and use it as default +value. + @item --output=@var{file} @itemx -o @var{file} When reading from standard input and @samp{--stdout} has not been @@ -194,15 +202,15 @@ as shown in the table below. Note that @samp{-9} can be much slower than @multitable {Level} {Dictionary size} {Match length limit} @item Level @tab Dictionary size @tab Match length limit -@item -1 @tab 1MiB @tab 10 bytes -@item -2 @tab 1MiB @tab 12 bytes -@item -3 @tab 1MiB @tab 17 bytes -@item -4 @tab 2MiB @tab 26 bytes -@item -5 @tab 4MiB @tab 44 bytes -@item -6 @tab 8MiB @tab 80 bytes -@item -7 @tab 16MiB @tab 108 bytes -@item -8 @tab 16MiB @tab 163 bytes -@item -9 @tab 32MiB @tab 273 bytes +@item -1 @tab 1 MiB @tab 10 bytes +@item -2 @tab 1.5 MiB @tab 12 bytes +@item -3 @tab 2 MiB @tab 17 bytes +@item -4 @tab 3 MiB @tab 26 bytes +@item -5 @tab 4 MiB @tab 44 bytes +@item -6 @tab 8 MiB @tab 80 bytes +@item -7 @tab 16 MiB @tab 108 bytes +@item -8 @tab 24 MiB @tab 163 bytes +@item -9 @tab 32 MiB @tab 273 bytes @end multitable @item --fast @@ -230,6 +238,21 @@ Table of SI and binary prefixes (unit multipliers): @end multitable +@node Program Design +@chapter Program Design +@cindex program design + +For each input file, a splitter thread and several worker threads are +created, acting the main thread as muxer (multiplexer) thread. A "packet +courier" takes care of data transfers among threads and limits the +maximum number of data blocks (packets) being processed simultaneously. + +The splitter reads data blocks from the input file, and distributes them +to the workers. The workers (de)compress the blocks received from the +splitter. The muxer collects processed packets from the workers, and +writes them to the output file. + + @node File Format @chapter File Format @cindex file format |