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
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
| Symbol | Meaning | Unit |
|---|---|---|
nd | Number of disks | — |
io | IOPS of one disk | IOPS |
rd | Share of reads in the workload | % |
lv | RAID level | — |
bs | Size of each I/O | KiB |
FI | IOPS the array delivers | IOPS |
RI | Raw IOPS of all disks | IOPS |
WP | Write penalty | — |
WI | Of which, writes | IOPS |
TP | Throughput at that I/O size | MiB/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.