Calculate IOps

This post has already been read 60178 times!

A question often asked is how to calculate IOps. Every disk in your storage system has a maximum theoretical IOps value that is based on a formula.

Disk performance and IOps is based on three key factors:

  • Rotational speed. Measured in RPM, mostly 7,200, 10,000 or 15,000 RPM. A higher rotational speed is associated with a higher performing disk.
  • Average latency. The time it takes for the sector of the disk being accessed to rotate into position under a read/write head.
  • Average seek time. The time (in ms) it takes for the hard drive’s read/write head to position itself over the track being read or written.

Average IOPS: Divide 1 by the sum of the average latency in ms and the average seek time in ms (1 / (average latency in ms + average seek time in ms).

I usually use a standard average IOps of a drive based on their rotation speed

SSD 6000
15k 170-180
10k 125
7200 75
5400 50

RAID introduces a write penalty

The question of course is how many IOps do you need per volume and how many disks should this volume contain to meet the requirements?


IO Penalty

Write IOPS for a 15k disk

0 0  170
1+0 2  85
5 4  40
6 6  25

Use this RAID_spindle_calculator to calculate the IOPS your new raid set can deliver.

or use Marek Wołynko’s blog iops calculator raid calculator array estimator

4 thoughts on “Calculate IOps”

  1. I don’t think so that RAID read penalty is one in case of READ 5 or 6. We don’t have to wait the parity check which is on a separate drive?

Comments are closed.