Como determinar a configuração real da CPU virtual da imagem ESX?

2

Temos sérios problemas de desempenho em um cliente ESX, mas de onde estou não posso visualizar diretamente a configuração do servidor, mas quero saber se eles configuram corretamente.

A execução da CPU-Z mostra dois processadores com cada núcleo, enquanto eu tenho processadores Yorkfield e, portanto, espero que quatro núcleos apareçam. É assim que as CPUs virtuais aparecem na CPU-Z?

Como eu determino, a partir do cliente, como o ESX está configurado? Eu entendo que o ESX pode ter HT ativado. Meu sistema usa SMP strongmente, por isso deve se beneficiar. Pelo que eu sei, o ESX está configurado para duas vCPUs. Minha leitura dos dados está correta?

EDIT: existem basicamente duas causas para o CPU com asfixia. Primeiro, os aplicativos não são perfeitos, nós trabalhamos nisso. Em segundo lugar, não temos potência de CPU suficiente. A imagem vem de uma máquina nativa semelhante e agora está em uma máquina virtual. O desempenho deve ser semelhante, mas não é. Normalmente, poderíamos lidar com mais de 500 sessões por sistema nativo. Neste sistema, asfixia começa em torno de 280 sessões. Eu sei que é um pouco míope para culpar a configuração da CPU, mas depois de dois dias de monitoramento intensivo e perfil tudo realmente começa a apontar nessa direção (memória, disco IO, conexão db e rede estão funcionando bem).

    
por Abel 30.11.2009 / 09:18

2 respostas

5

Se você estiver obtendo 280 sessões em uma VM com duas vCPUs e 500+ na mesma caixa física usando todos os 4 núcleos, chegará perto do desempenho bare-metal com essa configuração da VM. Reconfigure a VM para usar 4 vCPUs e o desempenho deve se aproximar, desde que nada mais no host ESX esteja consumindo recursos significativos. No entanto, para uma VM de 4-vCPU em execução em um host de CPU única de 4 Core, a sobrecarga do Hypervisor ocupará uma fração da capacidade total e isso pode ser bastante significativo. O hipervisor ESX só agendará sua VM quando puder agendar todas as 4 vCPUs simultaneamente, para que qualquer outra coisa em execução (Hypervisor, Console de Serviço, outras VMs) faça com que todas as 4 vCPUs atrasem uma configuração como essa. Nesta configuração, se for possível executar seu aplicativo em duas VMs de vCPUs duplas, você pode achar que ela é melhor, mesmo com a sobrecarga adicional de executar um sistema operacional convidado adicional, o problema de agendamento será muito mais fácil para o hipervisor lidar com isso, você só protelará dois núcleos quando outras tarefas precisarem ter acesso aos recursos da CPU.

Cada VMCP vCPU equivale a um único núcleo em um sistema multi-core, é assim que o VMware divide os recursos do processador. O Yorkfield é um Core2 Quad e definitivamente não suporta HT - tem 4 núcleos físicos sem núcleos HT.

A CPU-Z em execução em uma VM relata apenas o número de vCPUs apresentadas à VM, embora ela identifique a CPU subjacente corretamente. Dependendo da versão do ESX e de como a VM está configurada, ela pode apresentá-los como um processador único dual core ou como dois processadores separados, mas sem impacto no desempenho, é simplesmente uma opção de apresentação usada para facilitar determinadas situações de licenciamento.

Editado para fornecer dados mais precisos e atuais:

O ponto de co-programação estrito acima foi um pouco de arenque vermelho. O ESX tem usado um mecanismo de co-programação relaxado desde o ESX V3 que permite alguma margem de manobra (desvio de clock entre núcleos de vCPU) e que melhorou com as versões subseqüentes.

Ainda é geralmente verdade que uma VM que apresenta tantas vCPU quanto núcleos físicos terá mais problemas em ser agendada sob carga do que VMs com menos vCPUs, mas não é tão dramática quanto na minha resposta original. Uma explicação muito detalhada de como ele realmente funciona pode ser encontrada no white paper da VMware .

    
por 05.12.2009 / 01:34
1

Quando o sistema está limitado à CPU, quantos processos estão levando a CPU? O que você está descrevendo implica que há apenas um processo executável.

As CPUs de Yorkfield não suportam HT, então você pode descartar isso.

    
por 30.11.2009 / 10:52