普段の圧縮、解凍にはどんなソフトを使っていますでしょうか。
私はちょっとマイナーなlzipというものを使っています。
LZMA形式のソフトで割と大きいファイルを圧縮するときに効率がいいです。
同じようなソフトでxzと言うものがあります。ちょっと気になったので私の非力なマシンで比較してみました。なお比較もお手軽にたった一回だけの試行です。手元にあったgccのソースファイルでやってみました。
-rw-rw-r-- 1 jk jk 67881881 8月 14 17:44 gcc-7.2.0.tar.lz
$ time lzip gcc-7.2.0.tar
real 6m18.007s
user 6m7.908s
sys 0m1.016s
$ time lzip -d gcc-7.2.0.tar.lz
real 0m17.354s
user 0m10.388s
sys 0m1.144s
-rw-rw-r-- 1 jk jk 66360108 8月 14 17:44 gcc-7.2.0.tar.xz
$ time xz gcc-7.2.0.tar
real 7m42.878s
user 7m40.676s
sys 0m1.204s
$ time xz -d gcc-7.2.0.tar.xz
real 0m11.897s
user 0m8.012s
sys 0m0.872s
ファイルサイズは約2.2%xzの方が小さくなりました。これはほぼ互角と言ってもいいかもしれません。
圧縮は22% lzipの方が速く出来ました。
解凍は34%xzの方が速く出来ました。
圧縮と解凍で真逆の結果となりましたが、一般的には解凍するほうが多いのかもしれません。
xzの方がメジャーな気がしますので、ややlzipが不利な結果となりました。ただしxzは2009年で開発が止まっている様です。lzipは2017年現在も開発中です。
昔に比べるとそこまで圧縮、解凍のニーズは減ったのかもしれませんが、こういう比較は面白いです。
xzについてふとある場所で5.2からマルチスレッド対応になったという記事をみて、よく調べてみると、
返信削除https://tukaani.org/xz/
で最新は2016年12月31日にリリースされた5.2.3が最新ですね。
こういう情報が独りぼっちにはなかなかわらなかったりします。
ということで開発は止まっていなかったということです。
ちなみに手元のxzはバージョン5.1で少し古めのバージョンですね。
この勘違いをした原因はwikipediaのバージョン表記が日本語版、英語版の両方で2009年が最新版との記述があるのを信じてしまった訳で、一時情報を見ていなかった私のミスです。
ちなみにxzがマルチスレッド対応になったというのを発見した場所はここです。
返信削除xzをマルチスレッドにしたら爆速になった
https://qiita.com/bringer1092/items/10725993bca777029f25