Showing posts with label pigz. Show all posts
Showing posts with label pigz. Show all posts
Monday, 19 March 2012
gzip vs pigz
Все тесты проведены на базе Intel i7 CPU X980 - 12 логических ядер.
gzip
pigz
tar без сжатия
Итого, pigz где-то в 6 раз быстрее, нежели gzip. Вообще, несмотря на hyper threading, это как раз равно числу физических ядер испытуемой машины. Кроме этого, pigz вдвое быстрее, чем просто tar без сжатия. Насколько я понимаю, это объясняется тем, что данных пишется меньше и процессор снимает данные быстрее, чем осуществляется простая запаковка без сжатия.
Далее привожу более-менее корректно проведенные тесты на архивацию уже сжатого tar.gz архива.
Сжатие pigz:
Сжатия gzip:
Без сжатия:
Причем, в режиме pipe pigz также дает серьезный прирост:
Другие бенчмарки: http://www.unixdaemon.net/tools/commandline/pigz-parallel-gzip.html, http://edwin.io/pigz-vs-gzip-benchmark
gzip
time tar -cpzf /var/backup/4601.tar.gz -C /vz/private/4601 .
real 3m10.887s - это астрономическое время
user 3m0.454s
sys 0m8.755s
pigz
time tar --use-compress-program=pigz -cpf /var/backup/4601.tar.gz -C /vz/private/4601 .
real 0m27.728s - это астрономическое время
user 4m3.871s
sys 0m7.412s
tar без сжатия
time tar -cpf /var/backup/4601.tar -C /vz/private/4601 .
real 1m10.247s
user 0m1.400s
sys 0m7.596s
Итого, pigz где-то в 6 раз быстрее, нежели gzip. Вообще, несмотря на hyper threading, это как раз равно числу физических ядер испытуемой машины. Кроме этого, pigz вдвое быстрее, чем просто tar без сжатия. Насколько я понимаю, это объясняется тем, что данных пишется меньше и процессор снимает данные быстрее, чем осуществляется простая запаковка без сжатия.
Далее привожу более-менее корректно проведенные тесты на архивацию уже сжатого tar.gz архива.
Сжатие pigz:
real 0m19.414s
user 2m21.545s
sys 0m4.596s
real 0m19.371s
user 2m20.833s
sys 0m4.720s
real 0m19.218s
user 2m21.341s
sys 0m4.368s
Сжатия gzip:
real 1m37.801s
user 1m35.586s
sys 0m3.388s
real 1m38.116s
user 1m35.990s
sys 0m3.284s
real 1m38.371s
user 1m36.222s
sys 0m3.092s
Без сжатия:
real 0m3.175s
user 0m0.052s
sys 0m1.908s
real 0m4.768s
user 0m0.072s
sys 0m2.520s
real 0m5.012s
user 0m0.100s
sys 0m2.456s
Причем, в режиме pipe pigz также дает серьезный прирост:
time cat Counter-Strike_LinuxServer_with-AmxModX.tar.gz | pigz > archive.pigz
real 0m1.608s
user 0m15.246s
sys 0m0.688s
time cat Counter-Strike_LinuxServer_with-AmxModX.tar.gz | gzip > archive.gz
real 0m10.647s
user 0m10.138s
sys 0m0.602s
Другие бенчмарки: http://www.unixdaemon.net/tools/commandline/pigz-parallel-gzip.html, http://edwin.io/pigz-vs-gzip-benchmark
Sunday, 18 March 2012
Классический gzip на современных мультипроцессорных машинах неэффективен - встречайте Pigz
Велкам: http://zlib.net/pigz/
Все тоже самое, но в несколько потоков и с использованием всех возможных мощностей серверов.
Причем, он бинарно совместим с обычным gzip.
Заставить tar использовать его для сжатия можно вот так:
Все тоже самое, но в несколько потоков и с использованием всех возможных мощностей серверов.
Причем, он бинарно совместим с обычным gzip.
Заставить tar использовать его для сжатия можно вот так:
tar --use-compress-program=pigz -cpf /root/archive.tar.gz /data
Subscribe to:
Posts
(
Atom
)