pixz makes xz archives parallel and lets you reach inside them
Summary
A parallel, indexed compressor built on the xz format. It uses every core on the machine by default, keeps an index so a single file can be pulled out of a large archive without unpacking the rest, and handles tar files in one step. Open source under a BSD licence.
Recommend- Name
- pixz
- Version
- 1.0.7
- Pricing
- Free
- Open source
- Open source
- Operating system
- LinuxmacOS
- Website
- https://github.com/vasi/pixz
- Updated
- 2026-10-06 17:21
What pixz is
pixz, pronounced pixie, is a compressor for the xz format that is both parallel and indexed. It keeps the standard xz format and fixes two things that have bothered people for a long time. The first is that the traditional xz tool compresses on a single thread, while almost every machine built in the last decade has several cores sitting idle. The second is that the same tool produces one large block of compressed data, which makes it impossible to jump to a particular place in the original. pixz answers both at once by splitting the input into blocks and working on them in parallel. As of September 2026 the current stable line is 1.0.7, it is released under a BSD licence, and the source is available from the project's own repository.
Blocks and an index
When compressing, pixz cuts the data into a number of smaller blocks and builds an index of the archive as it goes. The practical consequence is that the contents can be listed, and a single file pulled out, without decompressing the whole thing first. On a very large archive this is the difference between a command that answers immediately and a command that has to be left running. Pulling out one directory or one file no longer costs the time and the disk space of unpacking everything, which matters most precisely where such archives are most common: build outputs, backups and data sets that are read once in a while but stored for years.
Using the cores
By default pixz uses every processor core available, where the traditional xz tool uses one. It also decompresses in parallel, which the standard tool cannot do, and that is the half people forget to ask about: a compressor that is fast in one direction and slow in the other only moves the wait somewhere else. On a machine with many cores the advantage when handling large files is obvious, and tasks that used to be left running overnight come down to something that can be waited out.
Working with tar
The most common use is compressing and indexing a tar archive. pixz builds the index while it compresses the tar file, after which a single command lists what is inside in a moment, or extracts one named file. Compressing and indexing in the same pass is what makes a large archive comfortable to keep: it stops being a sealed box that has to be opened in full every time somebody needs one document out of it.
Installing and using it
Being a command line tool, pixz has long been in the software repositories of several mainstream systems and can be installed through the package manager of each, or built from source. The options keep the spirit of xz while simplifying a little: compressing is the default, a flag asks for decompression, and input and output can be named explicitly. Like most compressors it lets a numeric argument trade speed against ratio, which is the setting that actually matters when the same tool has to serve both an interactive shell and a background job.
Where it fits
It suits work that compresses or ships large archives often: packing build output in continuous integration, compressing a big directory as part of a backup, and cases where a few files have to be pulled repeatedly out of one enormous archive. Because the output is standard xz, the receiving side only needs xz support, so nothing is lost in compatibility for having used parallel compression. For developers and operators who live on the command line, it is a practical addition rather than a replacement.