Solved

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

Posted on 2013-05-15
20
683 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
  • 6
  • 4
  • 4
  • +2
20 Comments
 
LVL 23

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 120
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
Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

 
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 120

Assisted Solution

by:Andrew Hancock (VMware vExpert / EE MVE^2)
Andrew Hancock (VMware vExpert / EE MVE^2) earned 250 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 250 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 120
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 23

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 120
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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
vSAN Datastore usage on disk warning 3 91
Identity Management & Mobile Apps 5 60
vRealize Orchestrator 7 guide 4 45
Cannot enter maintenance mode 2 33
In this article, I will show you HOW TO: Perform a Physical to Virtual (P2V) Conversion the easy way from a computer backup (image).
When rebooting a vCenters 6.0 and try to connect using vSphere Client we get this issue "Invalid URL: The hostname could not parsed." When we get this error we need to do some changes in the vCenter advanced settings to fix the issue.
Teach the user how to rename, unmount, delete and upgrade VMFS datastores. Open vSphere Web Client: Rename VMFS and NFS datastores: Upgrade VMFS-3 volume to VMFS-5: Unmount VMFS datastore: Delete a VMFS datastore:
Teach the user how to use vSphere Update Manager to update the VMware Tools and virtual machine hardware version Open vSphere Client: Review manual processes for updating VMware Tools and virtual hardware versions: Create a new baseline group in vSpā€¦

749 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