Pigz est un Gzip alternatif qui permet la parralelisation de la compression pour les machines multi-processeurs et/ou multi-coeurs.
En effet, Pigz va automatiquement utiliser tous les CPUs à disposition contrairement à Gzip, ce qui à pour consequence direct un gain de temps non négligeable.
Pigz a été écrit par Mark Adler, et utilise les bibliothèques zlib et pthread.
Pigz est disponible dans les dépôts officiels des principales distributions, exemple sous Debian:
apt-get install pigz
2 captures d’écrans de la sortie Htop:
- Utilisation de Gzip
- Utilisation de Pigz
Dans ce premier cas, un seul thread pour Gzip.
Dans ce second cas, utilisation de 8 thread pour Pigz, ce qui correspond au nombre de Cpu(s) de la machine.
A savoir, la machine qui a servie pour les tests de comparaisons est un serveur Proxmox en production.
Pigz peut prendre plusieurs options.
- Pour la compression:
pigz [ -cdfhikKlLnNqrRtTz0..9 ] [ -b blocksize ] [ -p threads ] [ -S suffix ] [ name ...]
unpigz [ -cfhikKlLnNqrRtTz ] [ -b blocksize ] [ -p threads ] [ -S suffix ] [ name ... ]
Pour le détails des options, voir le man:
man pigz
… Et comment de manière « propre » faire utiliser pigz plutôt que gzip ?
Un
sudo ln -s /usr/bin/pigz /usr/bin/gzip
me semble un peu cavalier…
Je n’ai pas compris? si tu veux utiliser pigz à la place de gzip, tu lances directement pigz…
Pour moi, oui. Mais pour toutes les utilitaires (décompression de paquets, fileroller etc.) que je n’ai pas écrits, ils vont utiliser gzip et pas pigz…