Solved

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

Posted on 2013-05-15
20
687 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 121
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
Save the day with this special offer from ATEN!

Save 30% on the CV211 using promo code EXPERTS30 now through April 30th. The ATEN CV211 connects a laptop directly to any server allowing you instant access to perform data maintenance and local operations, for quick troubleshooting, updating, service and repair.

 
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 121

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

Easy, flexible multimedia distribution & control

Coming soon!  Ideal for large-scale A/V applications, ATEN's VM3200 Modular Matrix Switch is an all-in-one solution that simplifies video wall integration. Easily customize display layouts to see what you want, how you want it in 4k.

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.
A look into Log Analysis and Effective Critical Alerting.
Advanced tutorial on how to run the esxtop command to capture a batch file in csv format in order to export the file and use it for performance analysis. He demonstrates how to download the file using a vSphere web client (or vSphere client) and exp…
This Micro Tutorial walks you through using a remote console to access a server and install ESXi 5.1. This example is showing remote access and installation using a Dell server. The hypervisor is the very first component of your virtual infrastructu…

726 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