An easy-to-use VDI IOPS calculator
2 comments, 13115 views
So you've heard all about the I/O performance demands of VDI ... but how can you determine what IOPS you will need? (Read What's all this talk about VDI and IOPS). While it's best to take detailed measurements, it can be complicated, expensive and time consuming. What if you just want a ballpark number quickly?
I'm going to show you a quick and dirty way to guestimate your I/O needs, for most any type of VDI (persistent, non-persistent, with or without Unidesk). We are going to avoid gathering a ton of data with complicated measurements, instead using some simple assumptions about desktop I/O and use some easy-to-gather numbers from your existing (non-VDI) desktops.
The concept is fairly straight forward - to build a model of IOPS based on a typical heavy I/O load condition on a desktop. This is commonly at around 8-9 AM when everybody logs in and gets started. That is when the storage array will be at peak load (for logins, profiles, apps, etc). In most cases, if you optimize around this time window, and include the average desktop load, you should have plenty of headroom for everything else.
You do have a little homework to do, but it isn't too hard. Here is what you need to gather (or guess):
- How many desktops are you supporting?
- Over how much time do most people start their work day?
- How many people don't start work at the usual time?
- How active are the workload(s) - heavy, medium, light?
And then do one measurement:
- Time how long it takes a regular (non-virtual) desktop to login (time how long the disk light stays fairly busy)
That's all that's needed for a basic estimate - punch those numbers into the calculator below and you will get a rough estimate of the number of IOPS needed. For a more precise measurement, you can also adjust a couple additional "advanced" fields - which are the default for peak IOPS (we base it on a standard 7,200 RPM disk drive, or 90 IOPS), or adjust the "peak factor" - which accounts for the fact that people will login in peaks and valleys. So feel free to click "show advanced" and adjust those as well - but for most use cases, the defaults should be close enough.
Note: The time to login has been changed from minutes to seconds (March 16, 2011)
| Base assumptions (show advanced): | |
| When logging in, how long is the disk busy? | seconds to login (LoginBootTime) |
| What is the primary login duration? | minutes for most users to login (StormDuration) |
| What percentage login during that time? | % users login (StormPercentage) |
| How concentrated is the peak login period? | % more users than average (PeakFactor) |
| What IOPS are required during login? | IOPS peak (per desktop) (StormIOPS) |
| Workload 1: | |
| Expected IOPS load? | IOPS average (SteadyStateIOPS1) |
| Number of users (or desktops)? | users (Users1) |
| Workload 2: | |
| Expected IOPS load? | IOPS average (SteadyStateIOPS2) |
| Number of users (or desktops)? | users (Users2) |
| Workload 3: | |
| Expected IOPS load? | IOPS average (SteadyStateIOPS3) |
| Number of users (or desktops)? | users (Users3) |
| Workload 4: | |
| Expected IOPS load? | IOPS average (SteadyStateIOPS4) |
| Number of users (or desktops)? | users (Users4) |
| Workload 5: | |
| Expected IOPS load? | IOPS average (SteadyStateIOPS5) |
| Number of users (or desktops)? | users (Users5) |
| |
|
Now that your have your IOPS numbers, you can take a closer look at your storage options and balance your I/O needs across one or more arrays. Keep in mind that for larger deployments will you need to balance the storage load across multiple RAID sets (not just across LUNs, as those can share a single RAID set). For more information about how many IOPS a SAN can deliver, check out Making sense of VDI SAN performance.
If you are interested in a deeper look at VDI and IOPS, Herco van Brug wrote Understanding how storage design has a big impact on your VDI on Ruben Spruijt's blog (and a special thank you to Ruben for reviewing this article). It's an excellent in-depth look at not just IOPS, but also the impact of CPU cores, hyper-threading, memory and more.
Let me know what you think about this approach for calculating IOPS - via commenting on this blog, or contact me on twitter (@cmidgley). It will never be as accurate as a long running actual measurement of I/O load on a correctly configured and loaded virtual desktop configuration, but hopefully it will help with getting some quick numbers to design and build successful VDI deployments.
From Chris's Desktop
Unidesk CTO Chris Midgley (@cmidgley) peels back the covers on the Unidesk vision, takes a deep dive technically, and gives it to you straight on the pros and cons on the Unidesk software and its competing solutions.
Popular Blogs by Chris
-
[13,115 views]
-
[3,546 views]
-
[3,298 views]
-
[3,175 views]
-
[2,822 views]



Comments
The uncertain economy has made the mortgage calculator invaluable in today's real estate market.
I'm new to the VDI arena and have come across articles discussing IOPS but no specific figures. On the sales side, no-one was willing to give an estimate of requirements and I have a very large spend that makes me nervous. This has given me, not only the estimate of my current needs but a good guage of the upper and lower thresholds depending on the day in question - worst case scenario - and has given me an idea of what scale of storage I should be aiming at (i.e. scalable Enterprise tech rather than limited SMB tech). Much appreciated.
Post new comment