?
Solved

Very high CPU on virtual server (VMWare guest) - same application on physical server has no problem

Posted on 2013-05-15
20
Medium Priority
?
691 Views
Last Modified: 2013-07-06
We run a video recording/archiving application called Digital Sentry.  Currently we have several physical Windows 2008 R2 servers each recording video from 30 to 60 cameras.  There is not special hardware installed...data is pulled from cameras over TCP/IP and written to iSCSI volumes.  Each physical server has 4 cores (2 dual-core sockets) and 8GB memory.  CPU usage is usually very low (about 10%) and memory usage is also low.

But when we try running this application on a virtual server (VMWare ESX 5), even a small number of cameras (4) quickly pushes CPU above 50%.  This makes no sense.

Any ideas?
0
Comment
Question by:Carlo-Giuliani
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
  • 4
  • +2
20 Comments
 
LVL 24

Expert Comment

by:Nagendra Pratap Singh
ID: 39170354
What is the VM version?

Are you using E1000 NICs or VMware paravirtualised ones?

iscsi is used on both physical and virtual servers?

VMware tools are installed?

How many VCPus are you using in the virtual machine?

Is your esx/esxi more powerful than the original server?
0
 
LVL 8

Expert Comment

by:piyushranusri
ID: 39170366
what graphic memory is configured on physical and Virtual.
0
 
LVL 123
ID: 39170529
1. Check the VM has no Snapshot.

2. How many vCPUs have you added? More than 2?

3. What is the underlying datastore fabric? RAID 1, 10, 5

4. What are the hosts disks? SATA or SAS

5. How many disks?

6. Speed of disks?
0
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

 
LVL 12

Author Comment

by:Carlo-Giuliani
ID: 39171522
No snapshot, 2 vCPUs, VMFS datastore on NFS volume on NetApp aggregate of 24 SAS (15Krpm) disks.  The VM virtual hardsware version is 8.  The network driver is VMXNET3 and the VM is using the paravirtual SCSI driver (so, of course, VM tools is installed).

We are NOT beginners at VMWare.  We run about 150VMs on the same cluster.  This is the only one that behaves like this.
0
 
LVL 123

Assisted Solution

by:Andrew Hancock (VMware vExpert / EE MVE^2)
Andrew Hancock (VMware vExpert / EE MVE^2) earned 1000 total points
ID: 39171546
In that case, seen issues like this before with realtime applications, VM under a Hypervisors performs poorly compared to the physical server.

I assume you are using Jumbo Frames for NFS access.
0
 
LVL 28

Accepted Solution

by:
asavener earned 1000 total points
ID: 39171891
The CPU % in performance monitor is an unreliable measure on a virtual machine.  The hypervisor only offers CPU if the guest asks for it, which means that CPU % looks high even when the hypervisor still has plenty of capacity.

A better measure is CPU_Ready.  This measures how often the guest is asking for CPU cycles, and the hypervisor is making it wait.

Remember that all vCPUs for a guest have to be scheduled simultaneously, so CPU_Ready is typically higher for guests with multiple vCPUs.

Sometimes you can get better performance by reducing the number of vCPUs (because the performance bottleneck is scheduling, rather than CPU cycles).  Only use the number of vCPUs that you actually need.
0
 
LVL 123
ID: 39199703
Do you need further help with this question?
0
 
LVL 12

Author Comment

by:Carlo-Giuliani
ID: 39263154
I've requested that this question be deleted for the following reason:

None of the responses were helpful.  I was looking for reasons why software running on a VM might use much more CPU than the same software running on physical hardware.  General advice on tuning VMware or vague statements like "hypervisors perform poorly compared to physical" are no help.
0
 
LVL 24

Expert Comment

by:Nagendra Pratap Singh
ID: 39263078
If you host is not feeling any load then let the VM monitors show any amount of cpu load. Are you getting slow images transfer etc?

If you want exact help then you need to get someone in your office and BTW even beginners run 150 VMs. It is so easy!
0
 
LVL 28

Expert Comment

by:asavener
ID: 39263128
The CPU % in performance monitor is an unreliable measure on a virtual machine.  The hypervisor only offers CPU if the guest asks for it, which means that CPU % looks high even when the hypervisor still has plenty of capacity.
0
 
LVL 28

Expert Comment

by:asavener
ID: 39263155
I meant that last post as an objection....

We did answer why CPU usage will appear high in a VM.  You have to go look at other metrics to determine if the CPU usage is actually greater, such as the performance tab for the VM.
0
 
LVL 12

Author Comment

by:Carlo-Giuliani
ID: 39263473
I've requested that this question be deleted for the following reason:

Bottom line is I got nothing usefull, so I don't want to award points.  
0
 
LVL 28

Expert Comment

by:asavener
ID: 39263474
"Nothing useful?"  That seems a little hyperbolic.

Perhaps the answer was not answered to your satisfaction, but we attempted to assist and you provided minimal feedback.
0
 
LVL 123
ID: 39263505
I asked you a question in http:#a39199703

Do you need further help with this question?

you did not respond, other than to delete the question!
0
 
LVL 12

Author Comment

by:Carlo-Giuliani
ID: 39265762
I've requested that this question be deleted for the following reason:

, I've decided this is not a good use of my time  Nobody seems to have any experience of specify application behavior that leads to unreasonably high CPU usage on a virtual machine.
0
 
LVL 28

Expert Comment

by:asavener
ID: 39265763
Question:  
But when we try running this application on a virtual server (VMWare ESX 5), even a small number of cameras (4) quickly pushes CPU above 50%.  This makes no sense.

Any ideas?

Answer:
The CPU % in performance monitor is an unreliable measure on a virtual machine.  The hypervisor only offers CPU if the guest asks for it, which means that CPU % looks high even when the hypervisor still has plenty of capacity.

Simply changing the text of your delete request does not make the delete request valid.
0
 
LVL 28

Expert Comment

by:asavener
ID: 39286841
My recommendation is to delete with no refund.

If that is not an option, then I would recommend splitting points among all participating experts.
0

Featured Post

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article, I show you step by step with screenshots to assist you - HOW TO: Deploy and Install the VMware vCenter Server Appliance 6.5 (VCSA 6.5), with some helpful tips along the way.
In this article, I am going to show you how to simulate a multi-site Lab environment on a single Hyper-V host. I use this method successfully in my own lab to simulate three fully routed global AD Sites on a Windows 10 Hyper-V host.
Teach the user how to convert virtaul disk file formats and how to rename virtual machine files on datastores. Open vSphere Web Client: Review VM disk settings: Migrate VM to new datastore with a thick provisioned (lazy zeroed) disk format: Rename a…
This video shows you how easy it is to boot from ISO images for virtual machines with the ISO images stored on a local datastore on the ESXi host.
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question