研究日誌。

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

循環リスト(circularly-linked list) その2。

2008-04-09 01:01:34 | Weblog
前回の記事で扱った循環リスト高速化の工夫 (bucket+ のほう) について実験をした。いつもどおりクエリは以下のもの。

p aux sp p2p 10
q 957498 10453327
q 19200797 7727679
q 13006257 40639
q 4314559 22779984
q 17261435 8424294
q 8077810 13186938
q 3048748 1475829
q 21869636 3531883
q 13446936 4981527
q 18549540 3230879





[Intel(R) Xeon(R) E5345 @ 2.33GHz]
OS : CentOS 5.1 64bit
gcc : 4.1.2
option : -O2
bucket+ 23.0508[sec]
bucket 24.3352[sec] (x 1.05)



[Intel(R) Core(TM)2 Duo CPU E8200 @ 3.2 GHz]
OS : CentOS 5.1 64bit

gcc : 4.3.0
option : -O2
bucket+ 13.5265[sec]
bucket 14.4001[sec] (x 1.06)


gcc : 4.1.2
option : -O2
bucket+ 13.1757[sec]
bucket 14.0092[sec] (x 1.06)



わずかながら、penryn の方が高速化の割合が大きい。それから、gcc のヴァージョンは 4.1.2 の方が良い結果になった。