『色々なHDDのベンチマークと考察』

はじめに

ここでは、HDDに纏わる様々な技術によってどんな効果があるのか、ベンチマークの結果を踏まえて考えてみようと思います。

通常のHDD代表(Seagate 7200.10)

picture

2006年に購入した一般的な7200回転の3.5インチのHDDのベンチマーク結果です。我が家では最新の部類に入るので、単体でも高速だなぁと思います。これを基準に比較していきましょう。

転送速度 MIN 転送速度 MAX 転送速度 AVERAGE シークタイム バーストレート CPU使用率
37.0 (MB/s) 76.6 (MB/s) 62.9 (MB/s) 14.0 (ms) 101.4 (MB/s) 1.8%

回転数が1万回転のHDD (Western Digital Raptor 10000rpm)

picture

2007年に購入した10000回転の3.5インチHDDのベンチマーク結果です。10000回転以上のHDDは主にサーバー向けのSCSI HDDが殆どで、S-ATAインターフェースでは現在このRaptorシリーズが唯一の10000回転HDDとなっています。インターフェースがS-ATAなので、上のBaracuda7200.10と純粋に回転数による性能差を比較するにはよい例だと思います。

転送速度 MIN 転送速度 MAX 転送速度 AVERAGE シークタイム バーストレート CPU使用率
43.6 (MB/s) 83.7 (MB/s) 73.1 (MB/s) 8.5 (ms) 113.6 (MB/s) 2.3%

転送速度は全体的に1割程度引き上げられていますが、最小転送速度の差が大きいです。一般に高速なHDDは内部のプラッタが7200回転のものに比べて小さい(直径が小さい)ので、最外周の円周長が短くなり1回転あたりの最大転送速度が7200回転に比べて少なくなります(回転数でカバー)。逆に最内周は7200回転のHDDも10000回転のHDDも同じ円周長なので、回転数が高速な10000回転のHDDの方が有利になります。

他に、シークタイムがかなり短く抑えられています。これは目的のデータにヘッドが移動するのにかかる時間です。回転数が高い方が早く目的地に到達できるというのは想像に難くありません。また、逆にCPU占有率は若干高くなっています。これは回転数とは関係ないので、転送速度が高い為かこのHDDの特性かもしれません。

RAID0(ストライピング)(Seagate 7200.8 ×2)

picture

2004年に購入した7200回転の3.5インチHDDを、チップセットのRAID機能を使ってストライピングしました。注意点としてHDDが上の二つに比べて古いという点、またS-ATA1.0世代である点を加味して比較する必要があります。

転送速度 MIN 転送速度 MAX 転送速度 AVERAGE シークタイム バーストレート CPU使用率
50.8 (MB/s) 82.4 (MB/s) 73.4 (MB/s) 12.9 (ms) 68.7 (MB/s) 6.3%

転送速度は最新の10000回転と互角で、最小転送速度に至っては圧倒的な速度を見せました。HDDが他に比べて古いので、単体での性能が低いことを考慮すると、ストライピングの効果は絶大であるということがわかります。

逆にシークタイムは、単体のHDDとあまり差がないことから、ストライピングではシークタイムの改善はあまり期待できないことがわかります。これはストライピングは2台のHDDへ同時に読み書きを行うことで高速化する手法なので、データの位置にヘッドを動かす時間は改善しないからです。

また、バーストレートが低いのはインターフェースがS-ATA1.0世代な為だと考えられます。世代による規格的な差というよりもS-ATAがまだ登場して間もない時期のものなので、コントローラーがまだ成熟していない点が影響していると思われます。

もう一つ、特徴的な点としてCPU占有率が高い点が上げられます。実は上の2台とPCが異なるので正規化すると4.2%くらいになりますが、それでも高いと言えます。これは、チップセットのRAID機能がRAIDの処理自体はソフトウェアで行っている為だと思われます。RAID処理専用の演算チップを搭載したウン万円の高価なカードの場合は影響はほとんどないハズです。この6.3%を高いと見るか、6.3%くらい問題ないと見るかは用途次第と言えるかと思います。

コンパクトフラッシュ(Transcend TS4GCF133)

picture

2007年に購入した転送速度133倍(CDの133倍速=約20MB)のコンパクトフラッシュカードをIDE HDDとして利用してみました。元々はHDDとして使う代物ではないのですが、原理的にはSSDに近い特性を得られるハズなので興味深いところです。

転送速度 MIN 転送速度 MAX 転送速度 AVERAGE シークタイム バーストレート CPU使用率
3.3 (MB/s) 24.2 (MB/s) 23.2 (MB/s) 2.0 (ms) 23.5 (MB/s) 3.2%

転送速度はもはや比較対象とは言えないでしょう。平均速度が上記のHDDに比べて約3割程度の速度です。逆に言えばCFカードを4枚使ってストライピングを行えばHDD並の速度が得られるかもしれません。フラッシュメモリはHDDと比べて突然の故障は少ないなので、ストライピングの欠点である故障のリスク増大はCFカードであればそれほど問題にはならないと思います。

平均速度が最大速度に近い値をとっているので、最小速度は一時的に落ち込んだものと考えて良いと思います。(私はフラッシュメモリの速度が時間によってばらつきがあること自体が意外でしたが。。。)

注目するべき所は、シークタイムです。HDDと異なり円盤に記録しているわけではないのでダントツの速さです(シークなんてしてませんから。。。)。7200回転の約7倍、10000回転に比べても約4倍の速度です。

CPU占有率は、これも異なるPCなので正規化すると1%未満になるので無視してよいと思います。バーストレートは、平均転送速度とほとんど変わりません。これはCFカードにキャッシュがない為で、SSDにHDDと同じようにキャッシュが搭載されると話は変わってくるかも知れません。

まとめ

今まで、理論で色々書いてきたことがベンチマーク結果で裏付けられたと思います。むしろ、思っていた以上に理論通りの結果が出ていることに驚かされたのが本音です。とは言え、数値速度と体感速度はまた変わってきます。値を比較するよりも特性の差を知って、自分のマシンの方向性と照らし合わせて賢くパーツ選びをしたいものですね。