Welcome back as we continue to dive deeper into advanced CPU (Central Processing Unit -- I had a “tech writer” change a document on me one time, he assumed at this day in age that people still needed to have the CPU acronym translated.. but I digress) and Memory concepts in the land of VDI. Last week Doron answered our first question and told us about Core Count vs. Core Speed for scalable VDI. This week we will focus specifically on Core Speed, bursting and introduce you to a potentially new subject called “SPEC Blend/Core” for high performance VDI. If you are just finding this blog post for the first time, I encourage you to check out the Introduction from Tony as it will help set the stage for our discussion. Here is the full table of contents:
- Introduction – VDI – The Questions you didn’t ask (but really should)
- VDI “The Missing Questions” #1: Core Count vs. Core Speed
- VDI “The Missing Questions” #2: Core Speed Scaling (Burst) YOU ARE HERE!
- VDI “The Missing Questions” #3: Realistic Virtual Desktop Limits
- VDI “The Missing Questions” #4: How much SPECint is enough
- VDI “The Missing Questions” #5: How does 1vCPU scale compared to 2vCPU’s?
- VDI “The Missing Questions” #6: What do you really gain from a 2vCPU virtual desktop?
- VDI “The Missing Questions” #7: How memory bus speed affects scale
- VDI “The Missing Questions” #8: How does memory density affect VDI scalability?
- VDI “The Missing Questions” #9: How many storage IOPs?
VM’s are only as fast as their individual cores! Lets look at what this statement means. Example: Assume we have a 1GHz x 4 core processor (hey, it makes math easy for me). When we carve up a server VM or in this case a VM to be used for VDI, we can’t just give it 2 vCPU’s and say it’s got a 2GHz processor. The reality is that it has a dual 1GHz processor. This becomes an important concept in VDI when you are considering the quantity and QUALITY of vCPU’s you allocate to a Virtual Machine and ultimately the end user applications efficiency and the overall scalability of the server platform. This is not a Uni-processor vs. Multi-processor application discussion. We could easily have a very long discussion and debate on the in’s and out’s of application level efficiencies and the Operating Systems ability (and sometimes inability) to properly manage multiple CPU’s. We are going to expand upon the two CPU’s we tested and dig into per core performance.
CPU Burst vs. CPU Reservation. Let’s play around with our example 1GHz x 4 Core Processor a bit more. If we take this single processor and deploy 8 single vCPU desktops on it we will have a 500MHz CPU reservation per VM. The calculation for that is simple 1GHz x 4 Cores = 4,000MHz / 8 total VM’s = 500MHz/VM Reservation. So the Reservation is simply the average amount of CPU that is available to each VM (assuming everything is prioritized equally). But our Burst is different. Our Burst represents the maximum amount of CPU Core that any one VM could ever utilize. In this example, the Burst per VM is equivalent to 1GHz.