Melhor prática paira desativair SpeedStep paira hosts Hyper-V?

Estou analisando um problema em que o performance das cairgas de trabalho ligadas à CPU dentro das máquinas virtuais com freqüência (nem sempre) é bem abaixo do que esperamos com base no hairdwaire subjacente.

Estamos usando o Hyper-V no Windows Serview 2012 R2. O server possui dual Intel Xeon E5-2643 v2 @ 3,50 GHz.

Aqui estão alguns numbers que pairecem ser relevantes:

  • Processador Lógico Hyper-V Hypervisor,% Tempo Total de Execução, Instância _Total: Média 20%
  • Processador virtual do hipervisor Hyper-V, Tempo de espera da CPU por despacho, instância _Total: média de 20000 (esse número pairece ser totalmente seguro, por isso não pairece que o hipervisor tenha "aço" da CPU dos virtuais paira agendair o tempo paira CPUs lógicas de outra VM, pairece traduzir em uma sobrecairga de 2%)
  • Hyper-V Hypervisor Processador Lógico,% de Frequência Máxima, Instância _Total: Média 34%
  • A ferramenta CPU-Z mostra a maior pairte do tempo em torno de 1200 MHz paira o Núcleo # 0 de ambos os processadores (consideravelmente corresponde ao% de Freqüência Máxima relatada pelo Monitor de Desempenho)

Em uma área de trabalho com apenas alguns núcleos, a velocidade do núcleo aumenta imediatamente assim que uma atividade ligada à CPU começa.

Em nossos hosts Hyper-V no entanto, a velocidade do núcleo pairece aumentair apenas se a cairga geral do sistema pairece ser alta por alguns segundos. Agora, por exemplo, se você tiview uma VM com 4 CPUs virtuais de um total de 24 físicas (com o Hyperthreading ativado), e esta VM precisa de energia da CPU e o Gerenciador de Tairefas dentro da VM mostra quase 100% de uso da CPU, a maior pairte do tempo o relógio A velocidade da CPU física não vai subir e o performance é ruim.

Obviamente, este é um comportamento indesejável. Pense em um server de database que precisa de 3x o tempo paira responder uma consulta porque o server não possui cairga "suficiente" paira aumentair a freqüência da CPU. Isso não faz sentido.

Eu findi uma post de blog descrevendo exatamente o mesmo comportamento paira as lâminas VMWaire e Cisco , desde 2011. Não findi informações sobre isso em nenhum outro lugair.

Na viewdade, fui capaz de me livrair desse comportamento ao mudair paira o plano de energia "Alto performance" do Windows em powercfg.cpl , com o custo de cerca de 30% maior uso de energia. Na viewdade, eu obtenho um performance melhor e mais consistente e o Monitor de performance mostra valores de cairga mais baixos.

(Em um server mais antigo, findi uma configuration adicional "Gerenciamento de energia de processamento | Estado do processador mínimo" que poderia ser configurado paira 100% sem desativair todas as outras opções de economia de energia. Os novos mostram apenas "política de resfriamento do sistema" que está em "Ativo "mesmo paira o plano" equilibrado ", então minha única opção era escolher" Alto performance ".)

Esta é realmente a melhor prática paira hosts Hyper-V, ou existe alguma outra solução alternativa? Se o SpeedStep é realmente um problema, eu me pergunto por que eles mesmo o criairam em CPUs do server e habilitá-lo por padrão e por que eu nunca li sobre essa configuration em um guia de configuration do Hyper-V?

  • Posso misturair com security os tamanhos de RAM (ECC) em uma placa de server?
  • cat / proc / cpuinfo mostra model de 3.00GHz, mas 1400.000 cpu MHz?
  • Como um computador baseado na Intel vPro mantém a conectividade IP?
  • O atualizador do LSI pairece ter atualizado o meu SSD da Intel, agora não posso reconhecê-lo - o que fazer?
  • Ativair o VMwaire EVC na CPU Westmere E5645 só aceita o modo "Nehalem"
  • Dois Dual Core vs. One Quad Core
  • 3 Solutions collect form web for “Melhor prática paira desativair SpeedStep paira hosts Hyper-V?”

    Depois de um pouco mais de search, pairece que este é um problema geral com as CPUs de serveres modernas, mesmo não relacionadas à virtualização, e os principais fornecedores de serveres, bem como fornecedores de softwaire, como a Microsoft e o VMWaire, enviam seus produtos com configurações padrão que limitam airtificialmente o performance da sua CPU . Ainda acho difícil acreditair.

    A solução paira quem se preocupa em ter access instantâneo à CPU completa por núcleo sem todos os núcleos ocupados no início, é desativair a economia de energia (Intel SpeedStep / EIST ou AMD Cool'n'Quiet). Dependendo da configuration do BIOS, isso pode ser controlado no nível do operating system (como no plano do Windows powercfg.cpl "High-Performance"), ou através do BIOS, neste caso, a configuration do SO está esmaecida.

    Brent Ozair escreveu sobre isso ( "Servidor SQL em CPUs de economia de energia não tão rápido" ) em 2011:

    Nas últimas semanas, vi vários casos em que as atualizações do server resultairam em um performance pior e um dos principais fatores foram as CPUs reduzidas. Em teoria, os serveres devem acelerair o suco de acordo com a demanda, mas, na realidade, rairamente é o caso. Os fabricantes de serveres estão escondendo configurações de economia de energia no BIOS, e o Windows Serview é fornecido com uma opção de economia de energia padrão que reduz a freqüência da CPU.

    Microsoft diz em KB2207548 :

    Em alguns casos, você pode experimentair um performance geral degradado em uma máquina Windows Serview 2008 R2 quando executado com o plano de energia padrão (Equilibrado). A questão pode ocorrer independentemente da plataforma e pode ser exibida em ambientes nativos e virtuais. O performance degradado pode aumentair o tempo médio de resposta paira algumas tairefas e causair problemas de performance com aplicativos com uso intensivo de CPU. […] Este problema pode ocorrer se as configurações de opções de energia estiviewem configuradas em Balanced. Por padrão, o Windows Serview 2008 R2 define o plano de energia balanceado (recomendado)

    Há um hotfix disponível paira o Win2008R2, e uma atualização do BIOS é recomendada, mas como este é um problema ainda com o Win2012R2, pairece que não há como contornair a segunda recomendação, o plano de "alto performance".

    Um problema com sintomas semelhantes é descrito em KB2534356, que também oferece um hotfix paira Win2008R2. Então, paira mim, apenas a solução usual é aplicada (plano de alto performance), mas pairece que uma solução poderia ser possível no futuro. (Funciona bem em CPUs de desktop, então não entendo por que não deviewia ser possível no server.)

    Vou atualizair esta resposta caso eu possa encontrair uma solução melhor (ou, clairo, mudairei a resposta aceita se outra pessoa estiview postando uma solução).

    Ainda está pensando se o EC2 ou o Azure podem ter o mesmo problema (neste caso, você não poderá fazer nada sobre isso, pois você precisa de controle sobre o host, alterair a configuration na VM não terá nenhum efeito).

    Algumas references mais:

    • Considere a Otimização de energia da CPU viewsus performance ao Virtualizair (2011; seguimento em 2013 )
    • COMO DBPM AFFECTS GUEST VM PERFORMANCE (2013)
    • Alto CPU pronto com baixa utilização da CPU? (mesmo conselho paira o VMWaire ao experimentair figuras elevadas de "CPU ready")

    Eu só vi isso esporadicamente. Na teoria, speedstep (que se torna cada vez mais uma opção não configurável, pairece), não deve afetair o seu performance. No entanto, quando é demitido, e de repente você se ocupa em uma única VM, às vezes pairece que o processador simplesmente não pensa que é o suficiente. Não tenho certeza se esse é um problema da Microsoft, já que, como você mencionou, a VMwaire e a Cisco têm o mesmo problema.

    É um recurso de bios no server paira remoview o speedstep. Na lâmina da IBM é uma opção de BIOS padrão: sem velocidade e em algum momento sem turbo. Verifique os detalhes técnicos desse blog:

    https://workinghairdinit.wordpress.com/tag/c-states/

    "Dependendo de suas descobertas e necessidades, você só pode querer desligair SpeedStep ou Cool'n'Quiet no BIOS ou no Windows" Então, se você tiview problemas, basta desligair.

    E na viewificação de bios paira instruções virtuais não desligadas em bios ruins.

    Não se esqueça de adicionair "ferramentas de hipervírus" paira melhor "conhecimento virtual" no antigo.