ハイエンドNICは実際にどの程度ネットワークスループットを向上させるのか?Validation Case Study(1/2 ページ)

オンボードのNICとデスクトップ用のハイエンドNICはどの程度性能が違うのだろう。幾つかのベンチマークテストを通して、その性能差を検証してみよう。価格にふさわしい性能差はあるのだろうか。

» 2008年04月15日 00時00分 公開
[Ben Martin,Open Tech Press]
SourceForge.JP Magazine

 マザーボードに標準で搭載されているギガビットNIC(Network Interface Card)をIntel製ハイエンドデスクトップ用NICに置き換えた場合、具体的にどの程度の機能向上が見込めるのだろう? 今回わたしは、2つの一般的なマザーボードにオンボードで搭載されたギガビットNICおよび、これらをIntel製PCIeデスクトップ用ギガビットNICに置き換えた場合とを比較対象とし、ネットワークを介したNFS共有アクセスに特化したベンチマークを実行してみた。その結果を簡単にまとめると、連続的なリード/ライト処理のスループットはそれほど向上しなかったものの、レイテンシ(待ち時間)がかなり改善されたため、ネットワークの往復を伴うファイルの作成、削除、シークなどの処理が高速化することが判明したのである。

 今回のベンチマークテストに使用した2台のマシンはそれぞれ、AMD Athlon64 X2 4200+およびIntel Core 2 Quad Q6600を搭載したP35マザーボードを使用している。このうちAMDマシンはNvidia CK804 Ethernet Controller(rev a3)とforcedethドライバという組み合わせで、IntelマシンはMarvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller(rev 12)とsky2ドライバという組み合わせである。

 これらの比較対象に選んだNICSは、2枚のIntel Pro/1000 PTギガビットPCIe NICである。特に言及しない場合、ここでのテストは2つのコンピュータ間をDLink DGS-1008Dギガビットスイッチでつないだ結果を示している。またこれらの2つのテストマシンを除き、このスイッチにはほかの負荷は掛からないようにしてある。なおスイッチを介さない状態でIntel NICに対して幾つかのテストも実行したが、その際にはレイテンシは10〜20%程度向上したものの帯域幅は大差なかった。

 ベンチマーク測定用ツールとして使用したのは、lmbench(バージョン3.0-a9)、fio(バージョン1.18)、bonnie++(バージョン1.03)である。lmbenchではさまざまなマイクロベンチマークを実施できるが、ここではネットワークに関連する項目として、ネットワーク帯域幅を計測するbw_tcpおよび、TCPとUDP通信のネットワークレイテンシをそれぞれ計測するlat_tcpとlat_udpに注目した。同じくfioおよびbonnie++で計測したのは、NFSを用いて共有されたRAID5アレイに格納されているファイルシステムへのアクセスパフォーマンスである。またfioによる計測は主として、NFS共有されたファイルシステムに対する一般的なアクセスパターンがNICの違いによりどのように変化するかの確認に使用している。

 最初に行ったのは、各マシンの発揮可能な最大パフォーマンスを確認しておく目的でそれぞれのローカルホストに対して実施した、lmbenchによるテストである。

ベンチマーク/マシン AMD X2 4200 Intel Q6600
bw_tcp(Mバイト/秒) 766 1298
lat_tcp(マイクロ秒) 31.8 29.8
lat_udp(マイクロ秒) 31.9 30.2
各マシンのローカルホストに対するlmbenchネットワークマイクロベンチマーク

 マザーボードNICを介して通信させた場合、bw_tcpは109.43Mbps、TCPレイテンシは1459マイクロ秒、UDPレイテンシは1129マイクロ秒というテスト結果となった。次にIntel NICを介して同じテストを実施した場合、bw_tcpは87.47Mbps、TCPレイテンシは121マイクロ秒、UDPレイテンシは100マイクロ秒というスコアを出している。ここではネットワークレイテンシが大幅に改善されているが、この結果はマザーボードのオンボードNICに接続し直した上で再検証してある。またbw_tcpについてはマザーボードNICを使用した場合よりもIntel NICを使用した場合の方が悪化しているが、この結果はジャンボ(jumbo)フレームの有効化やe1000モジュールパラメータ(InterruptThrottleRate、RxDescriptors、TxDescriptors)の変更をしても劣ったままであった。そのほかIntelのWebサイトから入手したドライバe1000-7.6.15.4も試してみたが、その場合もIntel NICでのbw_tcp値87.5Mbpsに対する大幅な改善は成されていない。結局、Intel NICを使用することでレイテンシは1桁短縮されるものの、最大スループットについてはオンボードNICのレベルに戻すことはできなかった。Intel NICでこうした悪化が生じる理由は今のところ不明である。

 fioを用いたベンチマークでは、1024Mバイトファイルの連続リード、128Mバイトファイルのランダムリード、512Mバイトファイルのランダムなリード/ライトをテストした。その結果、Intel NICを使用した場合はランダムリード/ライトでのパフォーマンス向上が成されているが、これはおそらく同NICによるレイテンシ改善の恩恵を受けているのだろう。Intel NICの最小スループットは、ランダムリードではマザーボードNIC使用時の約2倍に向上しているものの、ランダムリード/ライトでは逆に悪化している。

NIC マザーボードNIC Intel Pro/1000 PT
結果(Mbps) min max aggrb min max aggrb
連続リード 77.1 113.8 102 96.4 102.8 99.6
ランダムリード 6.7 16.7 13.5 15.6 17.4 16.2
ランダムリード/ライト 13/0 15.3/15.3 5.5/5.5 8/0 16.1/15.4 5.5/7.1
NFS共有した3ディスクRAID5に格納されたファイルシステムに対するfioベンチマーク
       1|2 次のページへ

Copyright © 2010 OSDN Corporation, All Rights Reserved.

注目のテーマ