HDDのIOPS(Input/Output Operations Per Second)とは?

最終更新日 2018年12月12日

HDD の IOPS(Input/Output Operations Per Second)とは何か

Part4 IOPSを理解する | 日経 xTECH(クロステック) には、以下のとおり書かれています。
 IOPSは,ディスクが1秒当たりに処理できるI/Oアクセスの数である。IOPSが高ければ高いほど,高性能なディスクと言える。1回のI/O処理にかかる時間は,平均アクセス時間とデータ転送時間を足した数値。このI/O処理が1秒当たり何回実行できるかがIOPSである(図10)。
同記事には、平均アクセス時間とは平均ディスク回転待ち時間と平均シーク時間を足した数値と書かれています。IOPS を求める式は以下のとおりです。

IOPS = 1 / (平均アクセス時間 + データ転送時間)

平均アクセス時間 = 平均ディスク回転待ち時間 + 平均シーク時間

ストレージを性能から理解する (1/3):ストレージとは何か(3) - @IT には、日経 xTECH(クロステック)よりも詳しい説明付きの式が掲載されています。
応答時間 = 平均シークタイム + 平均回転待ち時間 + データ転送時間

IOPS = 1 / 応答時間

平均シークタイム 磁気ヘッドが目的のセクタのあるトラックまで平行移動し、位置決めを完了 するまでの時間の平均値
平均回転待ち時間 回転待ち時間は位置決め完了後トラック上のセクタがヘッド位置に来るまで の時間、平均回転待ち時間はディスクが半回転する時間を表す
データ転送時間 データ量を内部データ転送速度で除した数値
日経 xTECH(クロステック)に掲載されている式と @IT の記事に掲載されている式は同じです。

SanDisk、SSD向けファイルシステム「ExtremeFFS」を解説 - PC Watch には、IOPS を求める式は以下のとおり書かれています。
1/{(コマンドオーバーヘッド)+(シーク時間)+(回転のレイテンシ)+(データ転送時間)}
この記事に掲載されている IOPS を求める式ではコマンドオーバーヘッドが出てきましたが、コマンドオーバーヘッドとは HDD に対してデータ転送等を要求するコマンドの処理にかかる時間のことです。

同記事によると、コマンドオーバーヘッドとデータ転送時間は他の2つと比べて無視できるほど小さいいので、IOPS を求める式は以下のとおり簡易化できると書かれています。
1/{(シーク時間)+(30/RPM)}
30/RPM は、回転のレイテンシです。@IT の記事で言うと平均回転待ち時間のことであり、具体的にはディスクが半回転する時間のことです。

データの読み書きに毎回1回転必要になるとは限らず必要な回転数は様々ですが、半回転にかかる時間を平均としたと思われます。

1回転する時間は、60秒/1分間あたりの回転数(RPM)で求められます。さらに2で割れば半回転する時間になりますので、30/RPM となります。

HDD は RPM(ディスクの回転速度)の値が大きいほど性能が高いですが、簡易化された IOPS を求める式から HDD の性能は RPM の影響が大きいことがわかります。

・IOPS とは HDD が1秒当たりに処理できる I/O アクセスの数


キャンペーン情報
富士通
・新製品セール
クーポン利用で16〜23%OFF等の10大特典
(2月27日迄)
学割キャンペーン icon
学生、教職員の方に特別割引クーポン等の学割特典
(キャンペーン実施中)
シークレットクーポン
特別割引率のクーポン
(3月27日迄)

HDDの速度



デル株式会社