# HP EVA Capacity and Performance Calculator

Posted by

A colleague comes in and asks you what IOPs a specific array can handle. Or how many disks they need to add to supply enough power to handle the current load. Or how many disks they need to add for 5TB extra space in RAID 5.

Having to do this over and over I started to use an Excell sheet with basic calculations. Then pops up a next question: What formula did you use? So I just gave them these answers:  Occupancy_Alarm = 100 – ceiling { [ max ( PDM_capacity, HP Continuous Access_log_sum) + 5GB / total_disk-group_raw_capacity ] }

Ok, that might not be the best idea after all 🙂 A good engineer is a lazy engineer. Therefore I updated my Excell file with as much information as I could get and made it cleaner to use. Now they can calculate everything themselves.
All values are explained and all formulas are public (not hidden) s you can copy paste wherever you need.

Whats in the document:
Disk Group parameters:
DiskType: informational field – not used for calculations
DiskCount: speaks for itself
DiskSize: RAW disk size as mentioned on the disk
(formatted size is in the capacity calculator)
RAW IOPS / disk: calculate on the right or take the averages from the fields comment
Failure Protection: Protection Level set in Command View: single = 1 / double = 2
Read/Write: percentage ratio (can be calculated via EvaPerfMon)
Safe IOPS calculator:
Max Raw IOPS = #disks * RAW IOPS/disk
Safe IOPS = RAW IOPS / {(write% * RAID penalty)+ read%}

RAID PENALTIES:
RAID 6 = 6
RAID 5 = 4
RAID 1 = 2
RAID 0  = RAW IOPS
Capacity Calculator:
RAW Capacity = { #disks * disk Size * 93,13% (formatted size) } – 2 * Protecion Level

Netto/RAW capacity:
RAID 1 = Netto * 2 (mirror)
RAID 5 = Netto + 25% (4+1 parity)
RAID 6 = Netto + 33% (4 + 2 parity)
RAID 0 = Netto
Occupancy Warning Level:
Occupancy Alarm: 100% – ceiling { (max (size of PDM;ConAccessLog) + 5Gb ) / Raw Capacity }
Max Size PDM: 2 * largest disk size * failure protection
Continuous Access History Log: see max size in your configuration

IOPS/Disk calculator
This one is generic (can be used for every physical disk)
Maximum rotational delay is the time it takes to do a full rotation excluding any spin-up time. So 60.000 (amount of ms in a minute) devided by the rotations per minute.
Averge rotational delay: max divided by 2
IOPS per disk: 1 second (1000 ms) divided by the total latency
total latency: seek time + average latency
Disk Counts:
How many disks do I need to buy?
DiskCount= ((UsableV0 * 538) + (UsableV5 * 673) + (UsableV1 * 1076))/(DiskCap * 476) + (ProtLevel * 2)
=================================================================
DISCLAIMER: this is a helpfull tool but not bulletproof! I am still looking for updates/flaws.
=================================================================

Whats next? I’ll definitly update this worktool with other arrays I frequently work with such as P2000 / P4000 or even Dell Equallogic. So to be continued …
Be Social and Share: