Poor Performance on Guests. CPU Ready Values 700ms

lon21lon21 Member Posts: 201
Hi,

Was hoping someone should advise me, I have one ESXi 4.1 Update 1 host which has:

1 x SBS 2011 2vCPU
2 x Ms Svr 2K8 R2 1vCPU each
1x Ms Svr 2K3 SQL 4vCPU
1 X Linux Svr 1vCPU


The host has in total 6 Cores per socket and 12 logically processors with 1 socket and hyper-threading enabled.

The issue is some of my VM are experience slowness on performance and have a CPU ready value of 700ms over 20seconds.

How do you know how many vCPU to assign your guests? and which values should I be looking at in the performance graphs?

Thanks

Comments

  • TackleTackle Member Posts: 534
    Going to take a shot in the dark here -

    How are your disks set up? How many physical disks?
  • lon21lon21 Member Posts: 201
    Tackle wrote: »
    Going to take a shot in the dark here -

    How are your disks set up? How many physical disks?

    All disks are local in RAID 5
  • QHaloQHalo Member Posts: 1,488
    How many and what speeds are they?
  • kalebkspkalebksp Member Posts: 1,033 ■■■■■□□□□□
    Is it only a particular VM that is showing high ready times? You have 9 allocated vCPUs and 6 physical cores, this isn't necessarily a problem but it can be. For example, when a VM that has 4 vCPUs allocated requests processor time there must be 4 physical cores available, if only three of the six cores are available it must wait until a forth frees up. It's counter intuitive but you may want to decrease the CPUs on your SQL server and see if there is a change.

    It's also possible that you simple don't have enough cores for the work load, but I would be surprised based on the number of VM.
  • jmritenourjmritenour Member Posts: 565
    How many vCPUs do you have assigned? High CPU ready means that vCPUs are in a wait state for other CPUs to sync up. Generally speaking, start with less CPUs, and scale up as you start to see consistently high CPU usage.
    "Start by doing what is necessary, then do what is possible; suddenly, you are doing the impossible." - St. Francis of Assisi
  • Daniel333Daniel333 Member Posts: 2,077 ■■■■■■□□□□
    Is this production? Or just a lab?

    That said, CPU, RAM and disk space are cheap. Provision first at the Disk-IO level. Slow disk can artificially make other metrics look worse. Please post your disk Queues , disk latency and kernel latency during the problematic times?

    Extremely slow Virtual Machines on HP Smart Array P410 | PepperCrew

    I have had to service SOHO office clients with this kind of setup... you might just want backup,toss a RAID controller in there with a couple SSDs move the VMs over to ease the load.

    Let us know how this works out?

    edit: Doesn't sound like they have vCenter, but if you do snag a trial of Foglight for Vmware. Sets up pretty quick and can really be helpful in these situations.
    -Daniel
  • jibbajabbajibbajabba Member Posts: 4,317 ■■■■■■■■□□
    Kaleb is spot on imo. Each vCPU represents a physical core and if you assign 9 out of 6 possible then you might really run into scheduling issues.

    You will notice sometimes that assigning more vCPUs is counterproductive, especially in systems with multiple sockets. But since you got only one, reduce one vCPU and see how it works out.
    My own knowledge base made public: http://open902.com :p
  • scott28ttscott28tt Member Posts: 686 ■■■■■□□□□□
    kalebksp wrote: »
    For example, when a VM that has 4 vCPUs allocated requests processor time there must be 4 physical cores available, if only three of the six cores are available it must wait until a forth frees up.

    That was true back in ESX 2.x days, but "relaxed co-scheduling" was introduced in ESX 3 - see this 4.1 document: http://www.vmware.com/files/pdf/techpaper/VMW_vSphere41_cpu_schedule_ESX.pdf
    VCP2 / VCP3 / VCP4 / VCP5 / VCAP4-DCA / VCI / vExpert 2010-2012
    Blog - http://vmwaretraining.blogspot.com
    Twitter - http://twitter.com/vmtraining
    Email - vmtraining.blog@gmail.com
  • meadITmeadIT Member Posts: 581 ■■■■□□□□□□
    Agree with Scott and Kaleb in a way. Even though the hyperthreaded cores can be used to schedule, no two vCPU's from the same VM can use the same core. For example, let's use a 6 core CPU that's hyperthreaded. Let's label them 1a, 1b, 2a, 2b, etc. When the 4 vCPU VM is waiting for it's turn, it can't use core 1a and 1b or 2a and 2b at the same time. It has to have 4 cores available out of the 6 in the pCPU.
    CERTS: VCDX #110 / VCAP-DCA #500 (v5 & 4) / VCAP-DCD #10(v5 & 4) / VCP 5 & 4 / EMCISA / MCSE 2003 / MCTS: Vista / CCNA / CCENT / Security+ / Network+ / Project+ / CIW Database Design Specialist, Professional, Associate
Sign In or Register to comment.