Como interpretar valores de contador de desempenho Hyper-V Hypervisor Processador virtual \ CPU Tempo de espera por envio

4
Portanto, há muitas orientações na Web que recomendam o rastreamento dos valores do contador Perfmon Processador virtual Hyper-V Hypervisor \ CPU Tempo de espera por envio como o equivalente Hyper-V mais próximo do tempo de prontidão da CPU do VMWare.

Infelizmente, não parece haver muita orientação sobre quais valores desse contador podem ser problemáticos ou que intervalo de valores é esperado em um sistema com bom desempenho.

Meu pensamento inicial foi que, se o uso da CPU aumentar ao mesmo tempo que o tempo de espera da CPU por despacho, isso é uma indicação de que há um afunilamento da CPU em pelo menos uma vCPU convidada.

Existe uma maneira melhor de interpretar esse contador? Por exemplo, é possível convertê-lo em uma porcentagem de tempo esperando pela CPU?

Existe um intervalo de referência de valores com os quais os profissionais da Microsoft ou do Hyper-V tendem a trabalhar?

Alguém poderia me dar uma indicação de quais valores eles estão vendo para esse contador em sistemas com bom desempenho que não têm CPUs com excesso de assinaturas?

Obrigado!

    
por James L 17.03.2015 / 02:21

2 respostas

2

O contador Tempo de Espera por Despacho da CPU no Processador Virtual de Raiz do Hypervisor do Hyper-V ou no contador do Processador Virtual do Hypervisor Hyper-V conjuntos significa, simplesmente:

The average time (in nanoseconds) spent waiting for a virtual processor to be dispatched onto a logical processor.

A resposta de "o que deveria ser?" depende inteiramente do hardware. Você só quer que seja o mais baixo possível, mas alguns computadores são mais rápidos que outros.

Outra coisa a ter em mente é que as máquinas virtuais com mais vCPUs incorrerão em um pequeno custo na sobrecarga de sincronização.

Então, como uma anedota, estou olhando para um host Hyper-V com 8 processadores lógicos. Nesse host do Hyper-V, há apenas uma máquina virtual em execução. Essa VM tem duas vCPUs. Portanto, não deve haver praticamente nenhuma contenção em todos os processadores.

As vCPUs nessa máquina virtual gastam cerca de 7000 a 10000 nanossegundos aguardando, depois de se tornarem prontas para serem executadas, para serem despachadas em um processador lógico.

Esses números serão diferentes se você tiver um processador físico mais rápido ou mais lento, ou se você tiver uma proporção maior de máquinas virtuais / vCPUs para processadores lógicos em seu host. Mais vCPUs no seu host = mais coisas para o despachante agendar = o tempo de espera sobe. Isso também demonstra por que você realmente não quer instalar outro software em sua máquina host além da função Hyper-V - porque o software estranho na máquina host irá antecipar e adiar o agendamento de trabalho que as vCPUs desejam fazer, assim dirigindo esse número mais uma vez.

    
por 17.03.2015 / 13:36
1

Para calcular a porcentagem de desempenho perdido, por CPU, faça o seguinte:

Pegue o valor coletado e divida pelo número de unidades no intervalo de pesquisa e, em seguida, multiplique por 100 para obter o impacto percentual. Por exemplo, se a métrica coletada for 50 milissegundos e o período de coleta for 20 segundos, divida 50 ms por 20000 ms, 100%, e você terá um impacto de desempenho de 0,25% nessa CPU virtual durante esse período de coleta.

    
por 18.03.2015 / 13:29