This shows you the differences between two versions of the page.
ep:labs:03:contents:tutorial:ex1 [2020/07/30 19:30] gheorghe.petre2608 [01. [5p] Rotational delay - IOPS calculations] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== 01. [5p] Rotational delay - IOPS calculations ==== | ||
- | === Good to know === | ||
- | |||
- | 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). | ||
- | |||
- | To calculate the IOPS range, use this formula: 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). | ||
- | |||
- | Let's calculate the Rotational Delay - RD for a 10K RPM drive: | ||
- | |||
- | * Divide 10000 RPM by 60 seconds: **''10000/60 = 166 RPS''** | ||
- | * Convert 1 of 166 to decimal: **''1/166 = 0.006 seconds per Rotation''** | ||
- | * Multiply the seconds per rotation by 1000 milliseconds (6 MS per rotation). | ||
- | * Divide the total in half (RD is considered half a revolution around a disk): **''6/2 = 3 MS''** | ||
- | * Add an average of 3 MS for seek time: **''3 MS + 3 MS = 6 MS''** | ||
- | * Add 2 MS for latency (internal transfer): **''6 MS + 2 MS = 8 MS''** | ||
- | * Divide 1000 MS by 8 MS per I/O: **''1000/8 = 125 IOPS''** | ||
- | |||
- | === IOPS calculations === | ||
- | |||
- | Calculate the rotational delay (RD) for a 5400 RPM drive. | ||
- | |||
- | <solution -hidden> | ||
- | As shown in the //"Calculating IOs Per Second"// section: | ||
- | <code> | ||
- | 5400 / 60 = 90 RPS | ||
- | 1/90 = 0.011 seconds per Rotation | ||
- | 0.011 * 1000 = 11ms per Rotation | ||
- | 11 / 2 = 5.5ms RD (Rotational Delay = half a revolution around a disk) | ||
- | add approx. 3ms seek time => 8.5ms | ||
- | add 2ms latency => 10.5ms | ||
- | Divide 1000ms by 10.5ms per I/O => approx. 95 IOPS | ||
- | </code> | ||
- | </solution> |