1pbzip2(1) General Commands Manual pbzip2(1)
2
3
4
6 pbzip2 - parallel bzip2 file compressor, v1.1.10
7
9 pbzip2 [ -123456789 ] [ -b#cdfhklm#p#qrS#tvVz ] [ filenames ... ]
10
12 pbzip2 is a parallel implementation of the bzip2 block-sorting file
13 compressor that uses pthreads and achieves near-linear speedup on SMP
14 machines. The output of this version is fully compatible with bzip2
15 v1.0.2 or newer (ie: anything compressed with pbzip2 can be decom‐
16 pressed with bzip2).
17
18 pbzip2 should work on any system that has a pthreads compatible C++
19 compiler (such as gcc). It has been tested on: Linux, Windows (cygwin),
20 Solaris, Tru64/OSF1, HP-UX, and Irix.
21
22 The default settings for pbzip2 will work well in most cases. The only
23 switch you will likely need to use is -d to decompress files and -p to
24 set the # of processors for pbzip2 to use if autodetect is not sup‐
25 ported on your system, or you want to use a specific # of CPUs.
26
28 -b# Where # is block size in 100k steps (default 9 = 900k)
29
30 -c, --stdout
31 Output to standard out (stdout)
32
33 -d,--decompress
34 Decompress file
35
36 -f,--force
37 Force, overwrite existing output file
38
39 -h,--help
40 Print this help message
41
42 -k,--keep
43 Keep input file, do not delete
44
45 -l,--loadavg
46 Load average determines max number processors to use
47
48 -m# Where # is max memory usage in 1MB steps (default 100 = 100MB)
49
50 -p# Where # is the number of processors (default: autodetect)
51
52 -q,--quiet
53 Quiet mode (default)
54
55 -r,--read
56 Read entire input file into RAM and split between processors
57
58 -S# Child thread stack size in 1KB steps (default stack size if
59 unspecified)
60
61 -t,--test
62 Test compressed file integrity
63
64 -v,--verbose
65 Verbose mode
66
67 -V Display version info for pbzip2 then exit
68
69 -z,--compress
70 Compress file (default)
71
72 -1,--fast ... -9,--best
73 Set BWT block size to 100k .. 900k (default 900k).
74
75 --ignore-trailing-garbage=#
76 Ignore trailing garbage flag (1 - ignored; 0 - forbidden)
77
78 If no file names are given, pbzip2 compresses or decompresses from
79 standard input to standard output.
80
82 You should be able to compress files larger than 4GB with pbzip2.
83
84 Files that are compressed with pbzip2 are broken up into pieces and
85 each individual piece is compressed. This is how pbzip2 runs faster on
86 multiple CPUs since the pieces can be compressed simultaneously. The
87 final .bz2 file may be slightly larger than if it was compressed with
88 the regular bzip2 program due to this file splitting (usually less than
89 0.2% larger). Files that are compressed with pbzip2 will also gain
90 considerable speedup when decompressed using pbzip2.
91
92 Files that were compressed using bzip2 will not see speedup since bzip2
93 packages the data into a single chunk that cannot be split between pro‐
94 cessors.
95
97 Example 1: pbzip2 myfile.tar
98
99 This example will compress the file "myfile.tar" into the compressed
100 file "myfile.tar.bz2". It will use the autodetected # of processors (or
101 2 processors if autodetect not supported) with the default file block
102 size of 900k and default BWT block size of 900k.
103
104 Example 2: pbzip2 -b15k myfile.tar
105
106 This example will compress the file "myfile.tar" into the compressed
107 file "myfile.tar.bz2". It will use the autodetected # of processors (or
108 2 processors if autodetect not supported) with a file block size of
109 1500k and a BWT block size of 900k. The file "myfile.tar" will not be
110 deleted after compression is finished.
111
112 Example 3: pbzip2 -p4 -r -5 myfile.tar second*.txt
113
114 This example will compress the file "myfile.tar" into the compressed
115 file "myfile.tar.bz2". It will use 4 processors with a BWT block size
116 of 500k. The file block size will be the size of "myfile.tar" divided
117 by 4 (# of processors) so that the data will be split evenly among each
118 processor. This requires you have enough RAM for pbzip2 to read the
119 entire file into memory for compression. Pbzip2 will then use the same
120 options to compress all other files that match the wildcard "sec‐
121 ond*.txt" in that directory.
122
123 Example 4: tar cf myfile.tar.bz2 --use-compress-prog=pbzip2 dir_to_com‐
124 press/
125 Example 4: tar -c directory_to_compress/ | pbzip2 -c > myfile.tar.bz2
126
127 These examples will compress the data being given to pbzip2 via pipe
128 from TAR into the compressed file "myfile.tar.bz2". It will use the
129 autodetected # of processors (or 2 processors if autodetect not sup‐
130 ported) with the default file block size of 900k and default BWT block
131 size of 900k. TAR is collecting all of the files from the "direc‐
132 tory_to_compress/" directory and passing the data to pbzip2 as it
133 works.
134
135 Example 5: pbzip2 -d -m500 myfile.tar.bz2
136
137 This example will decompress the file "myfile.tar.bz2" into the decom‐
138 pressed file "myfile.tar". It will use the autodetected # of processors
139 (or 2 processors if autodetect not supported). It will use a maximum of
140 500MB of memory for decompression. The switches -b, -r, and -1..-9 are
141 not valid for decompression.
142
143 Example 6: pbzip2 -dc myfile.tar.bz2 | tar x
144
145 This example will decompress and untar the file "myfile.tar.bz2" piping
146 the output of the decompressing pbzip2 to tar.
147
148 Example 7: pbzip2 -c < myfile.txt > myfile.txt.bz2
149
150 This example will read myfile.txt from standard input compressing it to
151 standard output which is redirected to to myfile.txt.bz2.
152
154 bzip2(1) gzip(1) lzip(1) rzip(1) zip(1)
155
157 Jeff Gilchrist
158
159 http://compression.ca
160
161
162
163 pbzip2(1)