研究日誌。

大規模なグラフ処理に対してメモリ階層構造を考慮した高性能なソフトウェアを開発。

Cell での BLAS (DGEMM) - その3。

2007-10-15 22:49:13 | Weblog
前回は、DGEMM と言いながらα、βがそれぞれ1としていた。
もちろん処理もその分少なくなってしまう。

今回はα、βの演算、さらには SIMD も用いている。まずは実行時間だが、SIMD による高速化の効果が表れている。また、行列A、行列Bを2行ずつ扱うことで、少しだが DMA 転送に対する処理の割合を大きくすることにした。その結果、前回に比べ、実行時間が半分ほどに改善されている。

2行ずつ扱ってはいるが、Double Buffer モデルのように、DMA 転送完了待ちと、処理を並列しているわけではないので、まだまだ早くなりそうである。

gcc               [msec]
SPE 512X512 1024x1024 2048x2048
 1   370    2750    21500
 2   215    1550    11500
 3   165    1150     8500
 4   140    900     6800
 5   125    800     6050
 6   120    720     5450

最新の画像もっと見る

コメントを投稿