bundles/org.tukani.xz/src/org/tukaani/xz/LZMA2Options.java
public void setPb(int pb) throws UnsupportedOptionsException {
        if (pb < 0 || pb > PB_MAX)
            throw new UnsupportedOptionsException(
                    "pb must not exceed " + PB_MAX + ": " + pb);

        this.pb = pb;
    }
public void setPb(int pb) throws UnsupportedOptionsException {
        if (pb < 0 || pb > PB_MAX)
            throw new UnsupportedOptionsException(
                    "pb must not exceed " + PB_MAX + ": " + pb);

        this.pb = pb;
    }
public void setPb ( int pb ) throws UnsupportedOptionsException { if ( pb < 0 || pb > PB_MAX ) throw new UnsupportedOptionsException ( "pb must not exceed " + PB_MAX + ": " + pb ) ; this . pb = pb ; }
Sets the number of position bits.
<p>
This affects what kind of alignment in the uncompressed data is
assumed in general. The default (2) means four-byte alignment
(2^<code>pb</code> = 2^2 = 4), which is often a good choice when
there's no better guess.
<p>
When the alignment is known, setting the number of position bits
accordingly may reduce the file size a little. For example with text
files having one-byte alignment (US-ASCII, ISO-8859-*, UTF-8), using
<code>setPb(0)</code> can improve compression slightly. For UTF-16
text, <code>setPb(1)</code> is a good choice. If the alignment is
an odd number like 3 bytes, <code>setPb(0)</code> might be the best
choice.
<p>
Even though the assumed alignment can be adjusted with
<code>setPb</code> and <code>setLp</code>, LZMA2 still slightly favors
16-byte alignment. It might be worth taking into account when designing
file formats that are likely to be often compressed with LZMA2.

@throws      UnsupportedOptionsException
<code>pb</code> is invalid
Sets the number of position bits . <p > This affects what kind of alignment in the uncompressed data is assumed in general . The default ( 2 ) means four - byte alignment ( 2^<code > pb< / code > = 2^2 = 4 ) which is often a good choice when there s no better guess . <p > When the alignment is known setting the number of position bits accordingly may reduce the file size a little . For example with text files having one - byte alignment ( US - ASCII ISO - 8859 - * UTF - 8 ) using <code > setPb ( 0 ) < / code > can improve compression slightly . For UTF - 16 text <code > setPb ( 1 ) < / code > is a good choice . If the alignment is an odd number like 3 bytes <code > setPb ( 0 ) < / code > might be the best choice . <p > Even though the assumed alignment can be adjusted with <code > setPb< / code > and <code > setLp< / code > LZMA2 still slightly favors 16 - byte alignment . It might be worth taking into account when designing file formats that are likely to be often compressed with LZMA2 .