gzipの代わりにxzを使おう

GNU coreutils をソースからコンパイルしようとしてびっくり。coreutils-7.3.tar.gz (9690396バイト) 以外に coreutils-7.3.tar.xz (4045980バイト) が置いてある。*.xz は *.gz の42%のサイズしかない。

7-Zip で使われているアルゴリズム LZMA が gzip 相当の圧縮ツール xz として実装されたのだ。

これからは gzip と打つ代わりに xz と打とう。キーストローク数が半減するだけでなく,ディスク資源が半減し,地球温暖化も半減する。

tarのオプションでできるなら使いたいです。あと、ディスク

tarのオプションでできるなら使いたいです。あと、ディスク資源が減るのはよいけどトレードオフとしてCPU時間を使う・・・って無視できる程度ですかね。ディスクアクセス量も減りますし。

Re: tarのオプション...

新しいGNU tarならできるようです。でなければ

xzcat hoge.tar.xz | tar xvf -

なんてことをしなければならないかも。

うわ,ほんとだ。-Jなんてのがあるんですね。

うわ,ほんとだ。-Jなんてのがあるんですね。

処理時間は大幅に延びます。特に圧縮時には。 bash-3.

処理時間は大幅に延びます。特に圧縮時には。

bash-3.1$ time tar cJf tar-1.22.tar.xz tar-1.22

real 2m48.101s
user 1m24.461s
sys 0m31.666s
bash-3.1$ time tar czf tar-1.22.tar.gz tar-1.22

real 0m5.565s
user 0m2.064s
sys 0m2.908s
bash-3.1$ time tar tJf tar-1.22.tar.xz > /dev/null
tar: Record size = 16 blocks

real 0m3.152s
user 0m1.148s
sys 0m1.824s
bash-3.1$ time tar tzf tar-1.22.tar.gz > /dev/null

real 0m0.990s
user 0m0.452s
sys 0m0.532s

ディスク資源とCPU時間なら、 CPU時間短縮の方がエコと

ディスク資源とCPU時間なら、
CPU時間短縮の方がエコと思う私はサーバ管理者。

たまにはbzip2のことも思い出してあげて下さい。

T/O

> ディスク資源とCPU時間なら、

> ディスク資源とCPU時間なら、 CPU時間短縮の方がエコと

でも、圧縮は一度行なえば済むこと。伸張もそれほど頻繁に行なうわけではなく、
伸張の時間の増加は人間の感覚では無視できる程度なので、この場合は、
ディスク資源節約のメリットが大きいと思います。

ユーザー時間だけでなくシステム時間までのびてしまうのはなぜ

ユーザー時間だけでなくシステム時間までのびてしまうのはなぜなのでしょうか?
素人考えでは圧縮率が上がるとディスクI/Oが減ってシステム時間は減りそうに思えるのですが。

Re: たまにはbzip2のことも思い出してあげて下さい。

GNU coreutils,かつては*.gzのほかに*.bz2もあったのですが,今はなくなってしまいましたね。

手元で内容を実行して計ったみましたが、ユーザー時間の方が支

手元で内容を実行して計ったみましたが、ユーザー時間の方が支配的でシステム時間の差は無視できる程度でした。
comment-21118 の環境が極端にシステムコールに時間かかっているようですね。
$ time tar cJf tar-1.22.tar.xz tar-1.22
11.232u 0.216s 0:11.40 100.3% 0+0k 0+0io 0pf+0w
$ time tar czf tar-1.22.tar.gz tar-1.22
1.148u 0.032s 0:01.14 102.6% 0+0k 0+0io 0pf+0w
$ time tar tJf tar-1.22.tar.xz > /dev/null
tar: 記録サイズ = 16 ブロック
0.320u 0.012s 0:00.32 103.1% 0+0k 0+0io 0pf+0w
$ time tar tzf tar-1.22.tar.gz > /dev/null
0.188u 0.016s 0:00.19 100.0% 0+0k 0+0io 0pf+0w

http://d.hatena.ne.jp/tullio/

地球温暖化半減 ワロタw

地球温暖化半減 ワロタw

コメントの表示オプション

お好みの表示方法を選択し、「設定の保存」をクリックすると、表示方法を変更することができます。