Infiniband の優位性

InfinibandがEthernetと比べてパフォーマンス向上には大変有利であることは以前の検証結果からも言えることです。
今回は、ホスト数が増えた場合にどの程度のシステムプロセス値の差が出るかを検証することにしました。

Intel Core i7は、Quad CoreですがIntel Hyper-Threading TechnologyによりOS上からは倍のCPUが認識できます。
今回のテストでは、分割数を多くすることでネットワーク負荷を高くすることを目的とするために、Intel Hyper-Threading Technologyで認識された論理CPUにもジョブを配分することにしました。

■テスト環境
計算ノード 10台
MB: Supermicro X8STi
Chipset: INTEL X58
CPU: Intel Core i7 920
MEM: 12GB (2GB DDR3-1066 x 6)

インターコネクト
1000Base: オンボード (Intel 82574L)
Infiniband: Mellanox MHGS18-XTC (DDR)

ベンチマーク
MPI: openMPI
Compiler: gcc 4.1.2
Benchmark: himenoBMTxp
Size: XL

■テスト方法
N=80で姫野ベンチを実行し、投入ホストにてtopコマンドでシステムプロセス値を比較

■結果
1000Base: 23-25%程度

Infiniband: 0-0.3%程度

評価
1000Base Ethernetでは、おおよそ23%のCPUリソースがシステムプロセスとして消費してしまう。
特に多計算ノードによるMPIな流体計算では、このCPUリソースを計算に使えることができるinfinibandを選択することは必須と感じた。