研究日誌。

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

SSCA#2 - その3

2010-11-01 16:31:47 | Weblog
さて、SSCA#2 がどのような実行を行うか見てきたわけだが、この OpenMP 版の性能があまりよろしくないことに気がついた。特にマルチスレッド化すると性能が劣化する。シリアルの方がまだましではないかとさえ感じる。

次の環境で実行してみる。
CPU : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
GCC : 4.1.2
OS : linux 2.6.18-194.26.1.el5

# C ver.
./SSCA2 8
Kernel4(1)=82.706

# OpenMP ver.
./SSCA2 1 8
n=256,m=2048
Kernel4(1)=61.339 MTE/s
Kernel4(2)=18.659 MTE/s

./SSCA2 2 8
n=256,m=2048
Kernel4(1)= 112.826 MTE/s
Kernel4(2)= - MTE/s

このように n=256, m=2048 という非常に小さな instance でも Kernel4(2) は動かない。こちらで実装した全対間 BFS (使用したのは1コア)での TEPS 値は 107.922 MTE/s であった。

最新の画像もっと見る

コメントを投稿