検索
特集

HDDベンチマークでeSATAの実力を探る実践リポート(2/5 ページ)

eSATAインターフェースは、理論上は非常に高速だが、実際に高いパフォーマンスを得るには膨大な開発コストが必要となる。次世代の機器設計では、このeSATAを採用し、コスト増を覚悟すべきなのか。それとも従来のインターフェースで満足すべきなのだろうか。これについて、筆者はさまざまなベンチマークテストを行うことで検証を試みた。本稿では、その概要を報告する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

ベンチマーク結果における注意点

 ベンチマークテストは厄介なものだ。なぜなら、初めに決めた条件が結果に大きく影響する可能性があるからだ。あまりにも特殊な機器、ソフトウエア、利用モデルの組み合わせを選んでしまうと、得られた結果はごく限られたケースにしか役に立たない。しかし、だからといってあまりにも選択肢の幅を広げすぎると、結果データが膨大な量となり知りたいことが埋もれてしまう。

 本稿で紹介する結果の表を見て、筆者が大失敗を犯したと思われるかもしれない。しかし筆者の頭の中には、今回のプロジェクトでは試していない外部ストレージデバイスの利用方法がまだまだたくさんある。従って、読者には結論を出す前に筆者の決めた条件をよく理解していただきたい。そうすることで、予見から結果を判断することもできるし、必要であれば、自分の用途の特性により適した別の条件を決めて、筆者が行ったテストをやり直してみることもできる。

 筆者がテストに使用したのは、最新バージョンのMicrosoft Windows XP Professionalがインストールされたハイエンドのパソコンだ(図1(a))。その基本スペックは表2に示した通りである。過去の実践プロジェクトでもそうだったが、今回Windows XPを選んだ理由は、筆者がこのOSに慣れていることと、ベンチマーク用のユーティリティソフトウエアが数多く手に入ることからだ。しかし、読者が例えば組み込みLinuxを使うことを予定しているならば、ストレージデバイスのパフォーマンスに関連する2つのOSの違いを多少なりとも調査しておいたほうがよいだろう。次のステップに進んだ際、Linuxベースのベンチマークに筆者のプロジェクトの内容をテンプレートとして適用してもよいだろう。

 同様に、筆者が選択した米AMD(Advanced Micro Devices)社の「Quad FXシステム」についても、読者が取り組もうとしている設計に照らし合わせて考えてほしい。筆者がこのプラットフォームを選んだ理由は2つある。1つは、テスト中にシステムバスが引き起こすボトルネックを最小限に抑えるために必要なPCIとPCIe(PCI Express)の拡張インターフェースがあったことだ。もう1つの理由は、このシステムは2つのデュアルコアCPU「FX-74」を搭載しており高い処理能力が得られることである。これによって外部ストレージデバイスのパフォーマンスがシステムプロセッサの能力に制限されずに済むことを期待した。

 読者が設計するシステムはより高いパフォーマンスを備えた優れたものかもしれない。しかし、システム内のどこかで起きるソフトウエア上のボトルネックによって、外部ストレージデバイスの速度が落ちる可能性があることは覚えておいてほしい。

図1 ベンチマークテストに用いたハイエンドパソコン
図1 ベンチマークテストに用いたハイエンドパソコン (a)はAMD社のQuadFXシステムを採用したパソコンで、(b)はASUSTeKCOMPUTER社のマザーボードであるL1N64-SLIWS。
表2 図1のハイエンドパソコンの主な仕様
表2 図1のハイエンドパソコンの主な仕様

ベンチマークテストの選択

 筆者は今回のプロジェクトの準備として、オンラインなどで公開されている数多くのストレージデバイス用ベンチマークを調査した。Windowsベースのテストにどれが使用できるかを調べるためだ。その結果、広く利用されている実際のアプリケーションに基づいたベンチマークソフトウエアをはじめ、約20種類のベンチマークソフトウエアが見つかった。時間をかけて検討を行った結果、筆者がたどり着いたのは2つのベンチマークソフトウエアであった。それは過去にも何度か使ったことのある英SiSoftware社の「Sandra」という統合ベンチマークソフトウエアに含まれるファイルシステムテストと物理ディスクテストである。

・ファイルシステムテスト

 ファイルシステムテストでは、マウントされたボリューム(ファイルシステム)レベルのアクセスによってストレージデバイスをテストする。これはRawディスクパフォーマンスではなく、ファイルシステム、OSキャッシュ、ディスク上の位置といった多くの要因に左右されるボリュームの速度をテストするものだ。つまり、その結果がファイルシステムレベルで得られるパフォーマンスとなる。ドライブインデックス(テスト結果として現われる数値情報)は、読み込み、書き出し、検索におけるテスト結果の平均と、ファイルサイズおよびキャッシュサイズに基づく全体的なパフォーマンス評点を表す総合点である。また、この値は一般的な使用条件下におけるHDDのパフォーマンスを表し、数字が大きいほど、パフォーマンスが高いことを意味する。

・物理ディスクテスト

 物理ディスクテストは、物理的に接続されているストレージデバイスのアダプタとインターフェースを、一般的なコンピュータのほかのディスクのアダプタ/インターフェースと比較して表示する。このテストが対象とするのは、ディスクそのものであってファイルシステムではない。このテストではRawパフォーマンスが測定されるため、ディスクに使用されるファイルシステムや、ディスクから排除されたボリュームの影響を受けない。読み込みテストは、ディスク全体にわたるシーケンシャルな読み込みアクセスの性能を表す。書き出しテストはディスク全体にわたるシーケンシャルな書き出しアクセスの性能を表す。

 シークテストは、フルストロークとランダムアクセスの性能を表す。ドライブインデックスは、ディスク全体にわたる読み込みまたは書き出しの最高速度に基づく全体的なパフォーマンス評点を表す総合点である。数字が大きいほどパフォーマンスが高いことを意味する。アクセス時間は、ディスク上のランダムセクターへの平均読み込み時間を表し、値が低いほどパフォーマンスが高いことを意味する。

 筆者はいずれのテストオプションに対してもライトスルーモードを設定した。外部ストレージデバイスの接続に用いるインターフェースの速度とそれに接続されたストレージデバイスの速度を正確に測定するためである。この設定によって、OSであるWindowsが提供する書き出しのキャッシュ機能は無効になる。

インターフェースの影響

 CPUやOSのほかにも、外部ストレージデバイスのパフォーマンスに影響を与えるボトルネックが存在する。それは、ストレージデバイスを接続するために用いるインターフェースである。ベンチマークの結果を有意義なものにするために、そのインターフェースについて調べる必要があった。ベンチマークテストに用いたQuad FXのリファレンスシステムには、台湾ASUSTeK COMPUTER社のマザーボードであるL1N64-SLI WSが使用されている(図1(b))。このマザーボードには、米NVIDIA社製のチップセット「nForce 680a SLI(scalable link interface)」が組み込まれている。このチップセットは、2個のMCP(media and communications processor)ノースブリッジチップで構成され、それぞれが16レーンと8レーンのPCIeをサポートしている。この2個の16レーンPCIeには、SLI構成のグラフィックスカード「XFX GeForce 7900 GTX」が接続されている。筆者はこのマザーボード上の32ビット/ 33MHzのPCIと8レーンのPCIeに注目してベンチマークテストを行った。ちなみに、このシステムでサポートされていたのはPCIeのバージョン1.1である。

 いくつかのアドインカードとともに、マザーボードに内蔵されているUSB 2.0、FireWire 400、eSATAのインターフェースを用いてベンチマークテストを行った。このボードでは、FireWire 400は台湾Via Technologies(VIA)社の「6308P」、eSATAは米Silicon Image社の1レーンPCIeに対応したトランシーバ「SiI3531」によって実現されていた。

 さらに、マザーボード上のインターフェースのほかに、2枚のFireWire 800カードによるベンチマークを行った。2枚のうち1枚は、PCIインターフェースで接続される米Belkin社製「F5U23-APL」。もう1枚は、1レーンのPCIeで接続される米Akumen社の「NitroAV 1394b」ボードである。どちらのプリント回路基板にも米Texas Instruments社のFireWire 800コントローラである「TSB82AA2」が組み込まれており、NitroAV 1394bのアドインカードにはPCIとPCIe間のブリッジチップも組み込まれていることが分かった。

 何度も問い合わせてみたが、本稿の執筆までに、インターフェースブリッジなどを用いないPCIeネイティブなFireWire 800ボードを入手することはできなかった。しかし、TSB82AA2は32ビットと64ビットの両方でPCIをサポートしているため、NitroAV 1394bカードが64ビットPCIでPCIeとのブリッジチップを動作させるかもしれないという期待があった。そうであれば、32ビットPCIの能力以上のパフォーマンスを発揮するし、両方のFireWire 800ボードをテストしてみた苦労も報われると考えた。

 さらに、マザーボードが備えているSiI3531によるeSATAの性能を、Silicon Image社の8レーンPCIeを備えたアドインカードを使って比較しようと考えた。そのアドインカードのeSATAコントローラである「SiI3124」はPCI-Xインターフェースを採用している。そのため、インターフェースを変更するために米Intel社のPCI-X/PCIeブリッジICも組み込まれていた。従って、このインターフェースブリッジの影響を受けることになる。しかし、Silicon Image社のマーケティングディレクタであるAlex Chervet氏は、「8レーンのPCIeを内蔵している『G5 Power Mac』(米Apple社製)と20個のHDDで構成される4台の『SteelVine SV2000(以下、SV2000)』(Silicon Image社製)に接続したときに800メガバイト/秒の安定したパフォーマンスを計測できた」と述べている。この発言に刺激を受けマザーボード上の1レーンPCIeで接続されたSiI3531とアドインカードによって8レーンPCIeで接続されたeSATAの性能も比較している。

 しかし、残念ながらテストを終えた後に、8レーンPCIeを備えたeSATAアドインカード上のファームウエアとインストールしたドライバ群、ソフトウエアである「SATARaid5Manager」などの間にバージョンのミスマッチがあったことが判明した。そのため、本稿執筆時点では、8レーンPCIeのeSATAアドインカードでベンチマークテストを実施した結果は不完全なものである*3)。


脚注:

※3…(編集部注)本稿執筆時にはテストできなかったベンチマークテストの結果がBrian Dipertのブログで公開されている(http://www.edn.com/blog/400000040/post/1020009102.html)


Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る