IOPS and VDI: Why IOPS Do Not Measure VDI Performance
Too many people in the industry seem confused about the relationship between high IOPS (Input/Output Operations Per Second) and VDI (Virtual Desktop Infrastructure) performance. To prove my point, I pose the following question to you, “When was the last time you logged onto your virtual desktop, and measured your user experience with IOPS?” I will take it one step further and ask, “When was the last time you measured the performance of your physical desktop with IOPS?” I argue that 99% of the time you have not. You are probably like most of the population, and measure performance by how fast your applications open, by how smoothly your mouse curser cruises the screen, and by how fast you can get work done.
IOPS and VDI performance are very relevant in some cases, and @andreleibovic put it nicely saying, “Mostly high IOPS = poor architecture of the solution.” To that, @pbookman replied and tweeted, “I couldn’t agree more, many other better metrics.” The thing is, IOPS become an irrelevant metric for VDI performance when the CPU and RAM are pooled locally on the host level and the resources are optimally utilized. In an architecture where everything (operating system, applications, etc) is stored on shared storage, then IOPS are a very important metric. But I question you, “Is storing everything on shared storage the most optimal VDI architecture?” The reason why the industry is so focused on IOPS and VDI performance is probably because they are focused on the old shared storage architecture when they should be focused on a more resource-efficient architecture.
When the world finally opens its eyes to a better VDI architecture, then it will stop measuring VDI performance in IOPS. Just my opinion; you can argue it if you want.
I am a VDI user, and an avid one at that. I’m actually writing this blog post on my virtual desktop. I hear what the industry says, I read the tweets, and I see the blogs. I’m involved in the industry. My lasting impression about IOPS and VDI was from VMworld 2011 in Las Vegas, when I visited a vendor booth and asked how well their VDI solution performed. They blurted out some number of IOPS that I promptly forgot, and I left feeling confused. I thought to myself, “Great, another metric that I have no clue what it means.” Call me stupid, but the point is, I bet a good majority of VDI users feel the same way. Case in point, Arista and V3 Systems held a webinar last week, and during the Q & A segment, a gentleman asked, “What is storage latency and why are people so focused on IOPS?” Chris Featherstone, CTO of V3 Systems, replied that when you have an environment where the CPU and RAM are pooled on the host level, VDI performance is more a question of context switching than IOPS. You can download the webinar to hear the response by Featherstone.
So where does that leave us? What is the best way to measure VDI performance? Is it with IOPS, or with context switching, or is it with the speed of the virtual desktop itself. I argue that the most understandable and impactful measure of performance is by how fast and smoothly the virtual desktop handles a given workload. For example, how fast does it open applications, and how fast does it perform the tasks that I want it to perform. IOPS should not be a measure of end user satisfaction; it is a complicated and possibly irrelevant metric of performance when VDI architecture is done the right way. Like I said, just my opinion, argue if you want.