A configuração de uma máquina virtual com mais de 1 cpu / núcleo realmente melhora o desempenho?

11

Quando uso a estação de trabalho VMware, posso definir a VM com vários núcleos. Na verdade, estou usando em uma máquina com núcleo dual e 4 núcleos lógicos. Então, eu realmente melhoraria o desempenho do VMS usando mais núcleos na VM?

    
por Pete2k 01.04.2011 / 17:26

3 respostas

8

depende do que a VM está executando, um convidado em uma máquina com um número n de núcleos terá melhor desempenho em n-1 núcleos atribuídos, desde que o convidado seja capaz de utilizar vários CPUs de forma eficaz. Infelizmente, a maneira mais simples de determinar isso é tentar e ver. Eu geralmente começo com 2 e paro quando acabo o aumento de desempenho. Normalmente, 2 núcleos é onde eu vejo o "ponto ideal". Poucas combinações de app / os que eu encontrei serão dimensionadas melhor que isso.

    
por 01.04.2011 / 17:54
6

Para esclarecer, você está dizendo que tem uma CPU de dois núcleos e atribuiu 4 CPUs virtuais à VM?

Nesse caso, não; Se você atribuir mais vCPUs do que os núcleos de execução física, verá uma pequena redução no desempenho, devido à sobrecarga de compartilhamento dos 2 núcleos físicos entre 4 núcleos virtuais (além de tudo executado no host físico).

Você verá o melhor desempenho da VM atribuindo-lhe duas vCPUs.

    
por 01.04.2011 / 17:33
5

Nós experimentamos um tempo atrás ( veja minha pergunta de um ano atrás ) com atribuição de vCPUs de núcleos físicos versus núcleos lógicos (threads) em CPUs quad-core com hyperthreading (8 vCPUs atribuíveis pareciam estar disponíveis). Como as respostas que eu recebi então sugeriram - e nossa experiência deu certo - você deve alocar o número mínimo de núcleos que você pode para cada convidado para permitir que ele execute.

Ao atribuir mais vCPUs do que os núcleos físicos disponíveis no host, se os convidados estiverem sob carga simultânea, o hyperthreading nem sempre é rápido o suficiente para alternar o contexto da CPU entre os threads para simular efetivamente outra CPU. Isso pode levar a coisas muito desagradáveis para todos os convidados, incluindo bloqueios e tempos limite que podem exigir reinicialização, fsck e pior na pilha. Mesmo que isso não aconteça, o desempenho geralmente será mais lento para os convidados do que mais rápido.

Como o @Chris S disse em seu comentário, "sempre aloque o mínimo possível e evite grandes dores de cabeça".

    
por 01.04.2011 / 21:43