« Firefox 3.0.1, 2.0.0.16, clamav-update 2.2.5 | トップページ | Mariner Calc 5.6 »

2008年7月21日 (月)

Altivec最適化LAME 3.98の速度

Altivec最適化LAME 3.98の速度を比べてみた。変換元ファイルはAIFFファイルでサンプルレート32kHz, 108秒, カンテレの演奏。変換オプションは-V4でフレーム数は3091だった。

比較したのはAltivec最適化版LAME 3.98 2008/7/13版で、コンパイラがgcc3, gcc4, gcc4.2.1のもの。マシンは500 MHzのPowerPC 7410を載せたPowerMac G3 266DT(いわゆるベージュG3)、Panther。比較用に、Windows XPでrarewaresから落としたものも測ってみた。なお、rarewaresにあるMac OS X用バイナリは10.4以降対応のようで、実行しようとすると

dyld: ./lame can't open library: /usr/lib/libncurses.5.4.dylib  (No such file or directory, errno = 2)
Trace/BPT trap

というエラーが出てしまう。したがって、10.3.9で使える唯一のLAME 3.98エンコーダかもしれない>Altivec最適化版LAME

以下は、同じエンコードを5回行った時のplay/CPUの値。 Mac OS XもWindows XPもマルチタスクOSなので、LAMEコマンドがOSから貰うCPU timeはCPUの全ての時間ではないため、実際のエンコード時間は演奏時間をこの数値で割った値よりも長くなる。

play/CPU
lame 3.98 gcc3 gcc4 gcc4.2.1 PentiumD Pentium4HT PentiumD --noasm
1 7.8308 7.8143 8.1461 22.526 26.183 19.958
2 7.7544 7.8143 8.1521 23.605 26.189 20.016
3 7.8529 7.92 8.0286 23.605 26.375 19.958
4 7.8363 7.8919 8.0286 23.531 26.475 19.962
5 7.8585 7.8198 8.0286 23.531 26.475 19.905
平均 7.83 7.85 8.08 23.36 26.34 19.96
標準偏差 0.04 0.05 0.07 0.47 0.15 0.04
クロック GHz 0.50 0.50 0.50 2.80 3.20 2.80
クロックあたり 15.65 15.70 16.15 8.34 8.23 7.13

ということで、gcc3とgcc4はほとんど同じ速度であった。標準偏差の範囲で一致している。gcc4.2.1版は作者が一番速いと言っているだけあって、gcc4と比べて3%程速い。

うちの10.3.9上ではrarewaresからダウンロードした普通のLAME 3.98が動かない。代わりにというわけでもないのだけど、Windows版バイナリをPentium DとPentium4で実行してみた。こちらはSSEは使っているはず。

2.8 GHzのPentium D上では23.4倍、3.2 GHzのPentium 4上では26.3倍の速度だった。手の届くところにCore2Duoのマシンが無いので、Core2Duoでどのぐらいの速度が出るのかわからないけど。 --noasmオプションはSSE用のアセンブリ言語によるコードを無効化するオプションで、15%ほど遅くなっている。

意味があるのかどうか分からないけど、クロック1GHzあたりの処理速度(=play/CPU/クロック)を計算してみた。処理効率みたいなものかなと。関数計算ルーチンの高 速化が効いているせいか、PPC版はPentium上の通常版の倍近い効率になっている。たしかにPPC G4版で通常版の倍ぐらい速くなっているとダウンロード元のページには書かれているけど、SSEを使っているはずの通常版に比べても2倍速いっていうの は、tmkkさんすごいよ。

|

« Firefox 3.0.1, 2.0.0.16, clamav-update 2.2.5 | トップページ | Mariner Calc 5.6 »

Mac OS X」カテゴリの記事

LAME」カテゴリの記事

PowerPC G4」カテゴリの記事

CPU」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: Altivec最適化LAME 3.98の速度:

» Rarewares Urls [Urlrecorder - URL sharing]
Your url was recorded with keywords rarewares! [続きを読む]

受信: 2009年4月 7日 (火) 14時31分

« Firefox 3.0.1, 2.0.0.16, clamav-update 2.2.5 | トップページ | Mariner Calc 5.6 »