IOPS and disk throughput
A drive’s headline IOPS number rarely matches what you get with your actual block size and queue depth. This calculator works in the other direction — from a measured latency and block size, it estimates IOPS and throughput, with an optional multiplier for parallel queue depth.
Results
Enter data and click Calculate.
IOPS vs throughput (MB/s)
IOPS is operations per second. Throughput is bytes per second (MB/s). This calculator derives IOPS from latency (⌊1000 / ms⌋), then MB/s from IOPS × block size. High IOPS does not always mean high MB/s — with small blocks you can have many operations and little data moved.
How IOPS × block size becomes MB/s
Simple relationship: throughput (KB/s) ≈ IOPS × block size (KB), then ÷ 1024 → MB/s. Intuition when you already know IOPS: 10,000 IOPS × 4 KB ≈ 40,000 KB/s ≈ 39 MB/s. The same IOPS at 64 KB blocks is ~640 MB/s — if the drive and controller can sustain it.
Optional parallelism (queue depth) multiplies effective IOPS in a simplified model — real SSDs/NVMe scale well; HDDs much less so.
Random vs sequential workloads
- Random small blocks (4–8 KB) — typical for databases and indexes; IOPS and latency matter most.
- Sequential large blocks (64 KB–1 MB+) — backups, media, scans; MB/s matters most.
- Small random I/O hurts HDDs (seek) and stresses SSDs under heavy write; cloud IOPS limits are often separate for read/write.
HDD, SSD, NVMe and cloud IOPS limits
| Type | Random 4K IOPS (approx.) | Typical latency |
|---|---|---|
| 7200 rpm HDD | ~75–100 | ~5–10 ms |
| SATA SSD | ~10,000–90,000 | ~0.1–1 ms |
| NVMe SSD | ~100,000–1,000,000+ | ~0.02–0.1 ms |
In the cloud (EBS, Managed Disks, Persistent Disk) you often get a volume IOPS and MB/s cap — design databases against those limits, not against a local drive’s brochure IOPS.
Examples
- 0.1 ms, 4 KB block → 10,000 IOPS ≈ 39 MB/s (same as 10k IOPS × 4 KB).
- 2 ms, 64 KB block → 500 IOPS ≈ 31 MB/s (same as 500 IOPS × 64 KB).
- Same IOPS, different block: 10,000 IOPS × 4 KB ≈ 39 MB/s; × 16 KB ≈ 156 MB/s — larger blocks raise MB/s when the workload is sequential.
FAQ — IOPS
- Is higher IOPS always better than higher throughput?
- No — it depends on the workload. Databases and small random I/O need IOPS/low latency; backups and streaming need MB/s. Optimize for your pattern, not one brochure number.
- Why does small-block random I/O hurt database performance?
- Each query triggers many small reads/writes. With low IOPS the queue grows, query latency spikes, and timeouts appear even when CPU looks idle.
- How do cloud IOPS limits affect design?
- Volumes often have hard IOPS and MB/s caps. If the DB exceeds them, buy more IOPS, shard data, or move hotspots to a faster disk class — a bigger VM alone may not help.
- What is the difference between IOPS and MB/s?
- IOPS counts operations; MB/s counts data. With 4 KB blocks, high IOPS can still mean modest MB/s; with large blocks the reverse is common.
- What does optional parallelism do in this calculator?
- It multiplies effective IOPS (a simplified queue-depth model). Real SSDs/NVMe benefit from queue depth; HDDs much less.
- Why does vendor IOPS differ from my measurement?
- Specs often come from ideal benches (100% 4K read, high queue). Real mixed read/write and block sizes usually score lower.
- Does RAID change IOPS?
- Yes — striping can add parallelism; parity (RAID 5/6) usually makes writes more expensive. This calculator uses the latency you enter for the volume; it does not model RAID separately.
- How do I relate the result to a database?
- Measure I/O latency and IOPS under load (iostat, cloud metrics). If the calculator’s IOPS at your latency sits below the volume limit, you have headroom; if traffic is higher, you are near the bottleneck.