Tech: Finding a Better Way to Estimate IOPS for VDI

Posted by Kenneth van Surksum   |   Friday, November 26th, 2010   |  

Paul Wilson posted on the Citrix blog an lengthy article sharing his insight in how to better estimate IOPS for VDI solutions. He states though that the only way to prevent under-sizing in the storage tier is by running a pilot and analyzing its results.

For estimation you would normally take the average IOPS of all users, which you multiply by the number of users in order to determine the storage requirements, but that is not sufficient Wilson states.

Currently IOPS are estimated by taking into account so called boot storms, (when the machines start up) and login storms (when the users logon). He states that in the ideal world you would record these IOPS and use the highest value for your IOPS estimation, basically the same approach as Citrix used in their paper: XenDesktop 4.0 planning guide for hosted VM-Based resource allocation. This model is the safest approach but most probably not the most cost effective, which will drive the ROI of VDI down significantly. A better approach in this case would be to take the average IOPS for the user workload and add 10 to 20% extra for a buffer. Translated into a formula this would look something like this:

Login IOPS = MaxSimultaneousUsers * Average Login IOPS (Incremental IOPS for new user logons)

Workload IOPS = MaxSimultanousUsers * Average Workload IOPS (IOPS when all users are online)

Peak IOPS = Workload IOPS + Login IOPS (Theoretical maximum when all users are online and the last set login)

SAN Capacity = Peak IOPS + 20% buffer

His experience when using the precedence way of estimating was that this way of estimating doesn’t work at all, resulting in the fact that during his projects he had to order more storage so the required IOPS could be provided.

Based on that experience Wilson decided to create a new model, taking into account his experiences from the field, making the following assumptions:

  • Desktops are in either a login state or a workload state.
  • Desktops start in the login state and move to the workload state based on the Login Time parameter.
  • Desktops enter the login state at the rate defined by the Launch Rate parameter.
  • Desktops in the login state and desktops in a workload state have different IOPS requirements.
  • Read IOPS are ignored because they amounted to less than 2% of the total IOPS.

His model uses several variables:

  • Number of Desktops, noting that when using multiple clusters you should determine the value per cluster.
  • Launch Rate, which details how quickly users will be logging into the system, expressed in the amount of users that login per second.
  • Login IOPS, detailing the amount of IOPS during login of a user.
  • Workload IOPS, detailing the amount of IOPS expected per user during the workload execution.
  • Desktop Login Time, the amount of time it takes a user to login to the desktop, measured from CtrlAltDel to shell initialization complete.

Resulting in the following formulas:

  • Peak IOPS, which represent the peak IOPS expected:

Peak IOPS = MAX((DesktopsInLoginState * Login IOPS) + (DesktopsInWorkloadState * Workload IOPS)

  • Steady-State IOPS, which represent the estimated IOPS during normal workload

Steady-State IOPS = Number of Desktops * Workload IOPS

  • Estimated Boot IOPS, which represents the estimated IOPS required to boot all the machines, making a note that the confidence level of this formula is the lowest one, because it is based on a correlation that may not exist in the future, or with other hypervisors.

Estimated Boot IOPS = Number of Desktops * 22

clip_image001

The Workload IOPS depend on the type of users you have within your VDI environment, these users can be divided in:

  • Light user: ~6 IOPS per concurrent user. This user is working in a single application and is not browsing the web.
  • Normal user: ~10 IOPS per concurrent user. This user is probably working in a few applications with minimal web browsing.
  • Power user: ~25 IOPS per concurrent user. This user usually runs multiple applications concurrently and spends considerable time browsing the web.
  • Heavy user: ~ 50 IOPS per concurrent user. This user is busy doing tasks that have high I/O requirements like compiling code or working with images or video.

Using the amount of these users, you can determine a loaded rate for the environment, for instance when you have 20% Light, 50% Normal, 20% Power and 10% Heavy users:

Loading IOPS = Light (.20*6) + Normal (.5*10) + Power (.2*25) + Heavy (.1*50) = 16.2

If you do have the ability to perform a pilot, that’s still preferred though, so you can analyze the actual IOPS. This is done by determining the peak average IOPS, by looking at the average IOPS for each user during the pilot and select the highest value for calculations, resulting in the following formula:

Peak Average IOPS = MAX (AvgIOPSuser1, AvgIOPSuser2, … AvgIOPSuserN)

You should also take time to understand the limitations of the to be used storage environment. You can do this by reviewing its capacity used when boot and login storms occur. Using the following formulas you can determine boot and login storm size.

Boot Storm Size = Total IOPS available / 300

Login Storm Size = Total IOPS available / 100

Wilson notes that there are many vendors which can increase the performance of the storage tier, sometimes at a fraction of the cost of purchasing that same performance from the SAN vendor.


Labels: ,

blog comments powered by Disqus


virtualization.info Newest articles
VMware acquires Wanova

May 23rd, 2012

Yesterday VMware announced the acquisition of Wanova Inc. a company whose main product is called Mirage.
Mirage is a centralized management and recovery solution for physical desktop images over the…

Paper: VMware vSphere Metro Storage Cluster Case Study

May 23rd, 2012

Yesterday VMware published a paper focused on VMware vMSC (vSphere Metro Storage Cluster), a new configuration within the VMware Hardware Compatibility List intended for environments where disaster/downtime avoidance is a…

EMC acquires Syncplicity

May 22nd, 2012

Yesterday, during its annual conference in Las Vegas, EMC announced the acquisition of Syncplicity, a cloud-storage privately held startup founded in 2008 and based in Menlo Park, California.
Terms…

Release: Oracle VM Server for x86 3.1

May 21st, 2012

On May 18th Oracle announced the general availability of version 3.1 of its x86 enterprise virtualization solution VM Server.
This release follows 3.0 announced on August 24th 2011.
All the new…

VMware shows View 5.1 performance improvements

May 21st, 2012

In this post, published on May 18 in VROOM! Blog, the VMware’s Performance Team presented some of the most significant enhancements and optimizations brought to Teradici‘s PCoIP protocol in the…

NVIDIA introduces World’s Firs Virtualized GPU

May 17th, 2012

On May 15th NVIDIA unveiled the NVIDIA® VGX™ platform that will be available later this year through NVIDIA’s hardware OEM and VDI partners.
This new platform promises to deliver…

Microsoft announces Assessment and Planning Toolkit 7.0 Beta Program

May 17th, 2012

Microsoft announced this week the new Beta version of its capacity planning tool Microsoft Assessment and Planning (MAP) 7.0 Beta.
The Beta program opened on May 15th and the review…

VMware announces vFabric Suite 5.1

May 15th, 2012

Today VMware announced VMware vFabric Suite 5.1, expected to be generally available in Q2 2012.
vFabric Suite 5.1 includes vFabric Application Director, to automate the deployment and management of vFabric…

VMware CTO talks about R&D plans for the future

May 15th, 2012

On April 4 Stephen Herrod, VMware’s CTO, has attended, as guest speaker, at a VMUG meeting in Italy.
One of the key point of the speech, documented in one hour-long…

Citrix Hosted Server VDI Tech Preview

May 14th, 2012

Last week Citrix announced a new tech preview for Hosted Server VDI technology that allows cloud providers to leverage Microsoft SPLA to host VDI-style desktops obtaining a pay-as-you-go monthly subscription licensing…

Release: Atlantis ILIO Diskless VDI 3.2

May 11th, 2012

On May 7 Atlantis Computing announced the general availability of its Atlantis ILIO Diskless VDI 3.2, this product, tailored in particular for VMware View 5.1, enables virtual desktops deployment…

Citrix unveils Project Aruba

May 11th, 2012

On May 7 Citrix announced a technology preview of Project Aruba that extends Citrix VDI all-in-one proposal for the SMB market, VDI-in-a-Box, with personal vDisk technology.
VDI-in-a-Box, inherited from Kaviza…

Cloud Sidekick announced Early Access release of Cato EE

May 10th, 2012

On May 7 Cloud Sidekick announced the Early Access Program release of Cato Enterprise Edition (EE) which extends the Community Edition (CE) with Storm Deployment Automation and support for…

Release: VMware vCenter Infrastructure Navigator (VIN) 1.1

May 9th, 2012

On April 26 VMware announced the general availability of VMware vCenter Infrastructure Navigator (VIN) 1.1, previously introduced as a part of vCenter Operations Management Suite.
VIN automatically detects, discovers and…

 
Monthly Archive