« SPU をベンチマーク(その4) | メイン | SPU をベンチマーク(その6) »

SPU をベンチマーク(その5)

 軽く SIMD 化してみた。

  1. CELL 特有の処理を極力行わず、float 型を使い、最適化はコンパイラオプションに任せる。(870.21 ms)
  2. マルチコアに拡張する。(299.61 ms, 2.9 倍速くなった)
  3. メモリフローを改善する。(138.30 ms, 2.2 倍速くなった)
  4. いまここ→SIMD 化する。
  5. 大きくアンロールする。
  6. アセンブラでガリガリ。
SPU 1 個:

  SPU_4x4_C3.elf     1232127760 clk,  1.15 clk/FP // 385.04 ms
SPU 6 個:

  SPU_4x4_C3.elf      277192320 clk,  0.26 clk/FP // 86.62 ms

 元々 -ftree-vectorize が効いているので著しい向上は無いが、それでも自動ベクトル化に任せるより自力で SIMD プログラミングした方が速いという結果になった。

トラックバック

このエントリーのトラックバックURL:
http://yoffy.dyndns.org/cgi-bin/mt/mt-tb.cgi/544

コメントを投稿

About

2006年12月31日 20:29に投稿されたエントリーのページです。

ひとつ前の投稿は「SPU をベンチマーク(その4)」です。

次の投稿は「SPU をベンチマーク(その6)」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35