2008年12月17日の日記の1番目の記事へのコメント
■celltripper
celltripper では S-box なるものを使ってビット幅分のトリップの演算をまとめて一気に行うようになっているのですが,こちらの方はその演算部分をSPU向けに最適化したとのこと.早速組み込んでspu-gcc-4.3でコンパイルしてみたところ,「-O3 -funroll-loops」だけで何と 11,335Kトリップ/秒というスコアが出ました.「-mlarge-mem」をつけるとさらに伸びて11,364Kトリップ/秒に.これはすごい!
とりあえず色々試した結果は以下の表の通りです.コンパイルは PS3 上で CellSDK 3.1使ってやりました.gcc-4.1でも普通に10,000Kトリップ/秒超えてますね.うおー.
spu-gcc | option | S-box | Score |
---|---|---|---|
4.3 | -O3 -funroll-loops | new | 11335K |
-O3 -funroll-loops -mlarge-mem | new | 11364K | |
-O3 -funroll-loops | old | 9963K | |
-O3 -funroll-loops -mlarge-mem | old | 10031K | |
4.1 | -O3 -funroll-loops | new | 10662K |
-O3 -funroll-loops | old | 9515K |
ソースを見てみたところ,何とspu_selがふんだんに使われていました.これは本当にすごい.一体どうやったんだろう・・・.
2008年12月17日の日記の1番目の記事へのコメント
[コメントを書く]