Если у вас есть доступ к многопроцессорным компьютерам (легко подключить многопроцессорные виртуальные машины на Amazon EC2 или Digital Ocean) / машинам с большим объемом оперативной памяти, вам обязательно стоит проверить PBZIP2 :
PBZIP2 - это параллельная реализация файлового компрессора bzip2, который использует pthreads и достигает почти линейного ускорения на машинах SMP
Для иллюстрации: в данный момент я распаковываю большой файл размером 17 ГБ. bzip2
записывал распакованный файл со скоростью 10 Мбит / с; PBZIP2 пишет это сейчас со скоростью 160 Мбит / с. Я запускаю это так:
pbzip2 -v -d -k -m10000 file.bz2
т.е. -v
подробный -d
распаковка -k
сохранение исходного файла -m1000
использование 10 ГБ ОЗУ
Это работает на 64 ГБ ОЗУ, 20-процессорной машине на Digital Ocean, что стоит $ 0,952 / час. : -)