3

pigz: la compression aux stéroïdes!

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
  • gzip
    Dans ce premier cas, un seul thread pour Gzip.

  • Utilisation de Pigz
  • piqz
    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 ...]
    
  • Pour la décompression:
  •        unpigz [ -cfhikKlLnNqrRtTz ] [ -b blocksize ] [ -p threads ] [ -S suffix ] [ name  ...  ]
    

Pour le détails des options, voir le man:

man pigz

Partager l'article :





fred

"Dire que l'on s'en fiche du droit à la vie privée sous prétexte qu'on a rien à cacher, c'est comme déclarer que l'on se fiche du droit à la liberté d'expression sous prétexte qu'on a rien à dire." Edward Snowden

3 commentaires

  1. … 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…

  2. Je n’ai pas compris? si tu veux utiliser pigz à la place de gzip, tu lances directement pigz…

  3. 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…

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *