Quoi outils de compression sont disponibles dans Ubuntu qui peuvent bénéficier d'un CPU multi-core.
Réponses
Trop de publicités?lzop peut également être une option viable, bien qu'elle soit monofilière.
Il utilise le très rapide lempel-ziv-oberhumer qui, selon mes observations, est 5 à 6 fois plus rapide que gzip.
Note : Bien qu'il ne soit pas encore multithreadé, il sera probablement plus performant que pigz sur les systèmes à 1-4 cœurs. C'est pourquoi j'ai décidé de poster ceci même si cela ne répond pas directement à votre question. Essayez-le, il peut résoudre votre problème de goulot d'étranglement du CPU tout en utilisant un seul CPU et en compressant un peu moins bien. J'ai trouvé que c'était souvent une meilleure solution que, par exemple, Pigz.
Il ne s'agit pas vraiment d'une réponse, mais je pense que c'est suffisamment pertinent pour partager mes points de repère comparant la rapidité de l'utilisation de l'Internet. gzip
et pigz
sur un vrai HW dans un vrai scénario de vie. Comme pigz
est l'évolution multithread que j'ai personnellement choisi d'utiliser à partir de maintenant.
Métadonnées :
- Matériel utilisé :
Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
(4c/8t) + Nvme SSD - Distribution GNU/Linux :
Xubuntu 17.10 (artful)
-
gzip
version :1.6
-
pigz
version :2.4
- Le fichier à compresser est 9.25 GiB SQL déverser
gzip
rapide
time gzip -1kN ./db_dump.sql
real 1m22,271s
user 1m17,738s
sys 0m3,330s
gzip
meilleur
time gzip -9kN ./db_dump.sql
real 10m6,709s
user 10m2,710s
sys 0m3,828s
pigz
rapide
time pigz -1kMN ./db_dump.sql
real 0m26,610s
user 1m55,389s
sys 0m6,175s
pigz
meilleur (non zopfli
)
time pigz -9kMN ./db_dump.sql
real 1m54,383s
user 14m30,435s
sys 0m5,562s
pigz
+ zopfli
algorithme
time pigz -11kMN ./db_dump.sql
real 171m33,501s
user 1321m36,144s
sys 0m29,780s
En conclusion, je ne recommanderais pas le zopfli
puisque la compression prenait énormément de temps pour une quantité non négligeable d'espace disque économisé.
Taille des fichiers résultants :
- meilleur s : 1309M
- rapide s : 1680M
- zopfli : 1180M
Le compresseur LZMA2 de p7zip utilise les deux cœurs sur mon système.
Entrée pertinente d'Arch Wiki : https://wiki.archlinux.org/index.php/Makepkg#Utilizing_multiple_cores_on_compression
# lzma compression
xz --threads=0
# drop-in parallel gzip replacement
# -p/--processes flag can be used to employ less cores
pigz
# drop-in parallel bzip2 replacement
# -p# flag can be used to employ less cores
# (note: no space between the -p and number of cores)
pbzip2
# modern zstd compression
# is used to build Arch packages by default
# since somewhere 2020
zstd --threads=0
- Réponses précédentes
- Plus de réponses