大規模最適化問題、グラフ探索、機械学習やデジタルツインなど

旧名:最適化問題に対する超高速&安定計算

TEPS その3

以下は非常に巨大なネットワークデータ上での BFS(幅優先探索)を行った結果だが、一つのデータを各プロセッサで分散して生成&保持&計算を行う形でグラフ探索を行っている。つまり、大量のクエリを並列に処理する(1コアで1クエリを処理)タイプのベンチマークでは無いようだ。そのために最適化出来る余地が現在では少なく、アルゴリズムや実装の工夫による性能向上はあまり無いと予想され、スパコン自体の性能に極度に依存したベンチマークになっていると推測される。

http://www.graph500.org/Results.html

一方、1コアで1クエリの処理ではかなり性能を上げていくことができる。データの大きさによってキャッシュメモリ(特に L3 キャッシュ)の利用効率が異なるので、TEPS 値も異なっている。ただし、これは最短路ソルバーでの TEPS 値になるので、BFS よりは遅めになる。

○データ1:NY (NewYork) : #nodes: 264,346 | #arcs: 733,846
21.41 ME/s (最大値)

○データ2:USA : #nodes: 23,947,347 | #arcs: 58,333,344
12.16 ME/s (最大値)

○データ3:Random : #nodes: 1G | #arcs: 2G
2.37 ME/s (1クエリ)

上記のベンチマークデータでは、おそらく 1 コアで 1 ME/s も性能が出ていないのではないだろうか。CRAY XMT は 1 プロセッサで 128 スレッドを生成できるので、1 node での CPU 数がわからないが、1 node = 1 CPU としても 128 x 128 = 16384 個のスレッドが生成されていることになる。その割には性能が良くないという感じもするが、詳細なデータが無いのでは現時点では推定が多い。

○計算サーバ(2 CPU x 4 コア = 8 コア)
CPU : Intel Xeon 5550 (2.66GHz / 8MB L3) x 2
Memory : 72GB (18 x 4GB / 800MHz)
OS : Fedora 13 for x86_64