Paritian

Developers

RAID IOPS Calculator (Write Penalty)

Random IOPS an array can sustain for a given mix of reads and writes, after the RAID write penalty, and the throughput that represents.

Results

IOPS the array delivers 632 IOPS
Raw IOPS of all disks 1200 IOPS
Write penalty 4
Of which, writes 189 IOPS
Throughput at that I/O size 4.9 MiB/s

What this tool does

Reads are cheap in any RAID, but every write costs extra disk operations: two in a mirror (RAID 1 or 10), four in RAID 5 (read the old data and parity, write the new data and parity) and six in RAID 6. That is why an array of fast disks can feel slow under a database or virtual machines that write a lot. Typical random IOPS per disk are about 75 to 100 for 7 200 rpm drives, 125 to 150 for 10 000 rpm and 175 to 210 for 15 000 rpm; SSDs reach tens of thousands, and a controller with a battery-backed write cache hides much of the penalty. The result is the steady-state figure for random I/O, not the sequential speed printed on the box.

Formula

IOPS = N × IOPS_disk ÷ (read share + write share × write penalty)

Variables

SymbolMeaningUnit
ndNumber of disks—
ioIOPS of one diskIOPS
rdShare of reads in the workload%
lvRAID level—
bsSize of each I/OKiB
FIIOPS the array deliversIOPS
RIRaw IOPS of all disksIOPS
WPWrite penalty—
WIOf which, writesIOPS
TPThroughput at that I/O sizeMiB/s

Worked example

  • Number of disks8
  • IOPS of one disk150 IOPS
  • Share of reads in the workload70 %
  • RAID level5
  • Size of each I/O8 KiB
  • IOPS the array delivers632 IOPS
  • Raw IOPS of all disks1200 IOPS
  • Write penalty4
  • Of which, writes189 IOPS
  • Throughput at that I/O size4.9 MiB/s

Limitations

  • The result is an estimate based only on the values you type. Real situations often include factors this calculator does not know about.
  • Coverage and consumption figures vary between products. Take the values from the manufacturer's datasheet for the product you are actually using.