performance of Virtual SQL server (Hyper-V)

Dear experts, do you have experience with 2012R2 Hyper-V virtualized SQL server performance.
I'm going to assign plenty of RAM and attach physical SSD hard drive RAID10 array to virtual server, but I'm afraid about degradation of CPU performance.

Jaroslav LatalMSPAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

John TsioumprisSoftware & Systems EngineerCommented:
Naturally a well designed virtual machine has about 95% performance compared to a native one...If you have doubts you can always measure it by yourself building o a test machine that can run Hyper-V with full Virtualization capabilities
David ToddSenior Database AdministratorCommented:

With the explosion in cores, for SQL its fairly hard to stress the cpu on a modern server. Or workstation. i don't think you'll have any problems.

Most of hte machines I currently manage SQL on are virtual machines with the disk being supplied from a SAN. The ease of increasing disks or adding a new one, increasing ram etc without having major downtime (if any) is a huge management bonus.


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
For normal workloads CPU isn't a problem. I Mic SQL Server in with all my other VMs on 7 year old servers with no issue. Normally people have issues due to slow disk and not enough RAM.

What RAID 10 for the SSD? The reasons why RAID 5 sucks for modern disks don't apply to SSD. RAID 1 and 5 are the norm for SSD.
Your Guide to Achieving IT Business Success

The IT Service Excellence Tool Kit has best practices to keep your clients happy and business booming. Inside, you’ll find everything you need to increase client satisfaction and retention, become more competitive, and increase your overall success.

Jaroslav LatalMSPAuthor Commented:
Thanks for answers. Maybe one additional question about CPU cores assigned to VM throw Hyper-V. When server has 16 cores and I assign 4 (maximum) in Hyper-V manager to the virtual server, is it OK? I need to assign maximum performance to the virtual SQL server.

Sure, you can assign 4 vCPU to a VM (or even more) when the host has 16 physical cores. Depending on how busy the host is, it may not speed up the VM and may slow it down. The reason being that the host will need to have 4 physical cores available before it can execute any instruction for the VM. If the host is really busy, this means that the VM will spend more time waiting for the CPU than if it had two vCPU, which would be easier to schedule than 4 vCPU.
Philip ElderTechnical Architect - HA/Compute/StorageCommented:
When SQL is virtualized there are a number of key factors to consider:
 + IOPS needed for all databases
 + Memory required for all instances in the VM
 + Thread count required to process all database activity

Bottlenecks in our experience are as above:
 + Storage I/O
 + Memory and NUMA boundaries
 + Physical Core Count

NOTE: vCPUs = Threads to the physical host. All threads must be processed in parallel throughout the CPU pipe. If more vCPUs than physical cores on 1 CPU get assigned to the VM then CPU logic needs to bounce threads between physical CPUs. This costs in performance.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SQL Server

From novice to tech pro — start learning today.