Hyper Threading e Virtual Machines?

13

Eu já vi este tópico: Hyper-V e Hyper-V encadeamento: ligado ou desligado? , mas a única resposta é específica do Windows ....

Estou criando um servidor de VM (usando o Proxmox VE, se isso faz diferença) e fiquei imaginando como o hyper-threading pode afetar as máquinas virtuais ...

Especificamente, se eu maximizar o número de máquinas virtuais, a ajuda do hyper-threading afetaria ou prejudicaria o desempenho?

Além disso, as maiores máquinas virtuais serão um Terminal Server com ~ 30 clientes (4 Núcleos / 8 GB de RAM) e um servidor de arquivos, se isso ajudar.

Atualização: O servidor é um Dell R410 com 1TB RAID 10, 32 GB de RAM e Dual Intel Xeon E5530 (não tenho certeza sobre o modelo exato, mas era um E55xx com 2 + Ghz)

Atualização: A maioria das VMs estará no KVM.

    
por Soviero 26.02.2012 / 05:45

3 respostas

12

Em geral, deixo o HyperThreading ON para servidores host da VM (VMWare ESXi, KVM, HyperV, etc.). Isso se aplica ao Intel Nehalem e CPUs mais recentes (série 5500 e superior). Encadeamentos adicionais disponíveis para agendar várias VMs.

Você também pode reavaliar o dimensionamento de seus sistemas convidados. Normalmente, é melhor começar pequeno na alocação da CPU com máquinas virtuais. Desde que você está falando sobre um servidor de terminal, eu realmente movê-lo para 2 CPUs virtuais, em vez de 4 vCPUs. É mais fácil para o hipervisor programar o tempo de CPU para VMs com contagens menores de núcleos . A RAM ainda é crítica, portanto, certifique-se de disponibilizar bastante.

Veja: link

    
por 26.02.2012 / 06:15
4

Isso realmente depende. Se, como você está dizendo, você está indo para "max out", o que suponho que significa CPU overocate (atribuir mais núcleos de CPU virtual do que você tem disponível, ou exatamente quantos você tiver disponível), então HT definitivamente deve ser em.

Se você não está sobrecarregando, geralmente é melhor testar sob suas cargas específicas - às vezes o HT pode prejudicar o desempenho.

    
por 26.02.2012 / 20:07
3

Existem muitas variáveis que afetam o desempenho da VM. O HT é apenas uma das outras variáveis, mas também depende de como a VM está configurada.

Uma das variáveis que afetam o HT depende do tipo de hipervisor que está sendo usado.

Se você estiver usando máquinas virtuais leves como VZ, VServer, etc, é bastante óbvio que o HT traria benefícios adequados, já que essas máquinas virtuais não são bem isoladas e se parecem mais com o software multi-threaded.

Se você estiver usando máquinas virtuais pesadas como KVM, Xen HVM, etc., é possível que a HT interfira nas coisas, por exemplo, quando uma VM é alocada a duas CPUs, mas acaba usando um HT cada em diferentes núcleos.

Então, o melhor a fazer ainda é testar sua configuração para ver o que mais lhe convém.

    
por 26.02.2012 / 06:15