Introdução ao teste de benchmark de virtualização

Índice:

Introdução ao teste de benchmark de virtualização
Introdução ao teste de benchmark de virtualização
Anonim

Ambientes de virtualização têm sido commodities quentes para o usuário de Mac desde que a Apple começou a usar processadores Intel em seus computadores. Mesmo antes da chegada da Intel, estava disponível um software de emulação que permitia aos usuários de Mac rodar Windows e Linux.

Mas a emulação era lenta, usando uma camada de abstração para traduzir o código de programação x86 para o código usado pela arquitetura PowerPC de Macs anteriores. Essa camada de abstração não só precisava traduzir para o tipo de CPU, mas também para todos os componentes de hardware. Em essência, a camada de abstração tinha que criar equivalentes de software de placas de vídeo, discos rígidos, portas seriais, etc..

Com o advento da decisão da Apple de usar processadores Intel, toda a necessidade de emulação foi eliminada. Em seu lugar veio a capacidade de executar outros sistemas operacionais diretamente em um Intel Mac. Se você deseja executar o Windows diretamente em um Mac como opção na inicialização, pode usar o Boot Camp, um aplicativo que a Apple oferece como uma maneira prática de instalar o Windows em um ambiente de inicialização múltipla.

Mas muitos usuários precisam de uma maneira de executar o Mac OS e um segundo sistema operacional simultaneamente. A Parallels e, posteriormente, VMWare e Sun, trouxeram esse recurso para o Mac com tecnologia de virtualização. A virtualização é semelhante em conceito à emulação, mas como os Macs baseados em Intel usam o mesmo hardware que os PCs padrão, não há necessidade de criar uma camada de abstração de hardware no software. Em vez disso, o software Windows ou Linux pode ser executado diretamente no hardware, produzindo velocidades que podem ser quase tão rápidas quanto se o sistema operacional convidado estivesse sendo executado no PC.

E essa é a pergunta que nossos testes de benchmark procuram responder. Os três principais participantes da virtualização no Mac - Parallels Desktop for Mac, VMWare Fusion e Sun VirtualBox - cumprem a promessa de desempenho quase natural?

Dizemos 'quase natural' porque todos os ambientes de virtualização têm alguma sobrecarga que não pode ser evitada. Como o ambiente virtual está sendo executado ao mesmo tempo que o sistema operacional 'integrado' (OS X, agora macOS), deve haver compartilhamento de recursos de hardware. Além disso, o OS X precisa fornecer alguns serviços ao ambiente de virtualização, como janelas e serviços principais. A combinação desses serviços e compartilhamento de recursos tende a limitar o desempenho do SO virtualizado.

Para responder à pergunta, vamos realizar testes de benchmark para ver como os três principais ambientes de virtualização se saem executando o Windows.

Método de Teste

Image
Image
GeekBench 2.1.4 e CineBench R10 são os aplicativos de benchmark que usaremos em nossos testes.

Tom Nelson. Lifewire, 2016.

Vamos usar dois conjuntos de testes de benchmark diferentes, populares e multiplataforma. O primeiro, o CineBench 10, realiza um teste real da CPU de um computador e da capacidade de sua placa gráfica de renderizar imagens. O primeiro teste usa a CPU para renderizar uma imagem fotorrealista, usando cálculos intensivos da CPU para renderizar reflexos, ocultação de ambiente, iluminação e sombreamento de área e muito mais. O teste é realizado com uma única CPU ou núcleo e, em seguida, repetido usando todas as CPUs e núcleos disponíveis. O resultado produz uma classificação de desempenho de referência para o computador que usa um único processador, uma classificação para todas as CPUs e núcleos e uma indicação de quão bem vários núcleos ou CPUs são utilizados.

O segundo teste CineBench avalia o desempenho da placa gráfica do computador usando OpenGL para renderizar uma cena 3D enquanto uma câmera se move dentro da cena. Este teste determina o quão rápido a placa gráfica pode executar enquanto ainda renderiza a cena com precisão.

O segundo conjunto de testes é o GeekBench 2.1.4, que testa o desempenho de inteiro e ponto flutuante do processador, testa a memória usando um teste simples de desempenho de leitura/gravação e executa um teste de fluxos que mede a largura de banda de memória sustentada. Os resultados do conjunto de testes são combinados para produzir uma única pontuação do GeekBench. Também dividiremos os quatro conjuntos de testes básicos (Desempenho de número inteiro, Desempenho de ponto flutuante, Desempenho de memória e Desempenho de fluxo), para que possamos ver os pontos fortes e fracos de cada ambiente virtual.

GeekBench usa um sistema de referência baseado em um PowerMac G5 @1,6 GHz. As pontuações do GeekBench para os sistemas de referência são normalizadas para 1.000. Qualquer pontuação maior que 1.000 indica um computador com desempenho melhor do que o sistema de referência.

Como os resultados de ambas as suítes de benchmarks são um tanto abstratos, começaremos definindo um sistema de referência. Nesse caso, o sistema de referência será o Mac host usado para executar os três ambientes virtuais (Parallels Desktop for Mac, VMWare Fusion e Sun Virtual Box). Executaremos os dois conjuntos de benchmark no sistema de referência e usaremos essa figura para comparar o desempenho dos ambientes virtuais.

Todos os testes serão realizados após uma nova inicialização do sistema host e do ambiente virtual. Tanto o host quanto os ambientes virtuais terão todos os aplicativos antimalware e antivírus desabilitados. Todos os ambientes virtuais serão executados em uma janela padrão do OS X, pois esse é o método mais comum usado em todos os três ambientes. No caso dos ambientes virtuais, nenhum aplicativo de usuário será executado além dos benchmarks. No sistema host, exceto no ambiente virtual, nenhum aplicativo de usuário será executado além de um editor de texto para fazer anotações antes e depois do teste, mas nunca durante o processo de teste real.

Resultados de benchmark para sistema host Mac Pro

Image
Image
Os resultados do teste de benchmark no sistema host podem servir de referência ao comparar o desempenho de um ambiente virtual.

Tom Nelson. Lifewire, 2016.

O sistema que hospedará os três ambientes virtuais (Parallels Desktop for Mac, VMWare Fusion e Sun VirtualBox) é uma edição de 2006 de um Mac Pro:

Mac Pro (2006)

  • Dois processadores Dual-core 5160 Zeon (4 núcleos no total) @ 3,00 GHz
  • 4 MB por memória de cache L2 de núcleo (16 MB no total)
  • 6 GB de RAM composta por quatro módulos de 1 GB e quatro módulos de 512 MB. Todos os módulos são pares combinados.
  • Um barramento frontal de 1,33 GHz
  • Uma placa gráfica NVIDIA GeForce 7300 GT
  • Dois discos rígidos Samsung F1 Series de 500 GB. O OS X e o software de virtualização residem na unidade de inicialização; os SOs convidados são armazenados na segunda unidade. Cada unidade tem seu próprio canal SATA 2 independente.

Os resultados dos testes GeekBench e CineBench no host Mac Pro devem fornecer o limite superior prático de desempenho que devemos ver em qualquer um dos ambientes virtuais. Dito isso, queremos ress altar que é possível que um ambiente virtual supere o desempenho do host em qualquer teste. O ambiente virtual pode acessar o hardware subjacente e ignorar algumas das camadas do SO do OS X. Também é possível que os conjuntos de testes de benchmark sejam enganados pelo sistema de cache de desempenho integrado aos ambientes virtuais e produzam resultados que estão muito além do desempenho potencial.

Pontuações de referência

GeekBench 2.1.4

  • GeekBench Score: 6830
  • Inteiro: 6799
  • Ponto Flutuante: 10786
  • Memória: 2349
  • Stream: 2057

CineBench R10

  • Renderização, CPU única: 3248
  • Renderização, 4 CPUs: 10470
  • Aceleração efetiva de um para todos os processadores: 3.22
  • Sombreamento (OpenGL): 3249

Os resultados detalhados dos testes de benchmark estão disponíveis na galeria Virtualization Benchmark Test.

Resultados de benchmark para o Parallels Desktop para Mac 5

Image
Image
O Parallels Desktop para Mac 5.0 conseguiu executar todos os nossos testes de benchmark sem problemas.

Tom Nelson. Lifewire, 2016.

Usamos a versão mais recente do Parallels (Parallels Desktop para Mac 5.0). Instalamos novas cópias do Parallels, Windows XP SP3 e Windows 7. Escolhemos esses dois sistemas operacionais Windows para teste porque achamos que o Windows XP representa a grande maioria das instalações atuais do Windows no OS X e que, no futuro, o Windows 7 será o SO convidado mais comum executado no Mac.

Antes do início dos testes, verificamos e instalamos todas as atualizações disponíveis para o ambiente virtual e os dois sistemas operacionais Windows. Com tudo atualizado, configuramos as máquinas virtuais do Windows para usar um único processador e 1 GB de memória. Desligamos o Parallels e desabilitamos o Time Machine e quaisquer itens de inicialização no Mac Pro não necessários para o teste. Em seguida, reiniciamos o Mac Pro, iniciamos o Parallels, iniciamos um dos ambientes Windows e realizamos os dois conjuntos de testes de benchmark. Assim que os testes foram concluídos, copiamos os resultados para o Mac para referência posterior.

Em seguida, repetimos a reinicialização e o lançamento do Parallels para os testes de benchmark do segundo sistema operacional Windows.

Finalmente, repetimos a sequência acima com o sistema operacional convidado configurado para usar 2 e depois 4 CPUs.

Pontuações de referência

GeekBench 2.1.4

  • Windows XP SP3 (1, 2, 4 CPU): 2185, 3072, 4377
  • Windows 7 (1, 2, 4 CPU): 2223, 2980, 4560

CineBench R10

  • Windows XP SP3
  • Renderização (1, 2, 4 CPU): 2724, 5441, 9644
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 1317, 1317, 1320

CineBench R10

  • Windows 7
  • Renderização (1, 2, 4 CPU): 2835, 5389, 9508
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 1335, 1333, 1375

Parallels Desktop for Mac 5.0 completou todos os testes de benchmark. O GeekBench viu apenas pequenas diferenças no desempenho entre o Windows XP e o Windows 7, que é o que esperávamos. O GeekBench se concentra em um processador de teste e desempenho de memória, por isso esperamos que seja um bom indicador do desempenho subjacente do ambiente virtual e quão bem ele disponibiliza o hardware do host Mac Pro para os sistemas operacionais convidados.

O teste de renderização do CineBench também mostrou consistência entre os dois sistemas operacionais Windows. Mais uma vez, isso é esperado, pois o teste de renderização faz uso extensivo dos processadores e da largura de banda da memória, conforme visto pelos sistemas operacionais convidados. O teste de sombreamento é um bom indicador de quão bem cada ambiente virtual implementou seu driver de vídeo. Ao contrário do restante do hardware do Mac, a placa gráfica não é disponibilizada diretamente para os ambientes virtuais. Isso ocorre porque a placa gráfica deve cuidar continuamente da exibição do ambiente host e não pode ser desviada para exibir apenas o ambiente convidado. Isso é verdade mesmo que o ambiente virtual ofereça uma opção de exibição em tela cheia.

Os resultados detalhados dos testes de benchmark estão disponíveis na galeria Virtualization Benchmark Test.

Resultados de benchmark para VMWare Fusion 3.0

Image
Image
Marcamos os resultados de processador único do Windows XP no teste de benchmark do Fusion como inválidos, depois que os resultados da memória e do fluxo foram 25 vezes melhores que os do host.

Tom Nelson. Lifewire, 2016.

Usamos a versão mais recente do VMWare Fusion (Fusion 3.0). Instalamos novas cópias do Fusion, Windows XP SP3 e Windows 7. Escolhemos esses dois sistemas operacionais Windows para teste porque achamos que o Windows XP representa a grande maioria das instalações atuais do Windows no OS X e que, no futuro, o Windows 7 será o SO convidado mais comum em execução no Mac.

Antes do início dos testes, verificamos e instalamos todas as atualizações disponíveis para o ambiente virtual e os dois sistemas operacionais Windows. Com tudo atualizado, configuramos as máquinas virtuais do Windows para usar um único processador e 1 GB de memória. Desligamos o Fusion e desabilitamos o Time Machine e quaisquer itens de inicialização no Mac Pro que não fossem necessários para o teste. Em seguida, reiniciamos o Mac Pro, iniciamos o Fusion, iniciamos um dos ambientes Windows e realizamos os dois conjuntos de testes de benchmark. Após a conclusão dos testes, copiamos os resultados para o Mac para uso posterior.

Em seguida, repetimos a reinicialização e o lançamento do Fusion para os testes de benchmark do segundo sistema operacional Windows.

Finalmente, repetimos a sequência acima com o sistema operacional convidado configurado para usar 2 e depois 4 CPUs.

Pontuações de referência

GeekBench 2.1.4

  • Windows XP SP3 (1, 2, 4 CPU):, 3252, 4406
  • Windows 7 (1, 2, 4 CPU): 2388, 3174, 4679

CineBench R10

  • Windows XP SP3
  • Renderização (1, 2, 4 CPU): 2825, 5449, 9941
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 821, 821, 827

CineBench R10

  • Windows 7
  • Renderização (1, 2, 4 CPU): 2843, 5408, 9657
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 130, 130, 124

Tivemos problemas com o Fusion e os testes de benchmark. No caso do Windows XP com um único processador, o GeekBench relatou desempenho de fluxo de memória a uma taxa melhor que 25 vezes a taxa do host Mac Pro. Esse resultado incomum de memória elevou a pontuação do GeekBench para a versão de CPU única do Windows XP para 8148. Depois de repetir o teste várias vezes e obter resultados semelhantes, decidimos marcar o teste como inválido e considerá-lo um problema de interação entre o teste de benchmark, Fusion e Windows XP. Até onde podemos dizer, para a configuração de CPU única, o Fusion não estava relatando a configuração de hardware correta para o aplicativo GeekBench. No entanto, GeekBench e Windows XP funcionaram perfeitamente com duas ou mais CPUs selecionadas.

Também tivemos um problema com o Fusion, Windows 7 e CineBench. Quando executamos o CineBench no Windows 7, ele relatou uma placa de vídeo genérica como o único hardware gráfico disponível. Enquanto a placa gráfica genérica era capaz de rodar OpenGL, ela o fazia a uma taxa abismal. Isso pode ter sido o resultado do host Mac Pro ter uma antiga placa gráfica NVIDIA GeForce 7300. Os requisitos de sistema do Fusion sugerem uma placa gráfica mais moderna. No entanto, achamos interessante que, no Windows XP, o teste de sombreamento do CineBench foi executado sem problemas.

Além das duas peculiaridades mencionadas acima, o desempenho do Fusion estava no mesmo nível que esperávamos de um ambiente virtual bem projetado.

Os resultados detalhados dos testes de benchmark estão disponíveis na galeria Virtualization Benchmark Test.

Resultados de benchmark para o Sun VirtualBox

Image
Image
VirtualBox não conseguiu detectar mais de uma CPU ao executar o Windows XP.

Tom Nelson. Lifewire, 2016.

Usamos a versão mais recente do Sun VirtualBox (VirtualBox 3.0). Instalamos novas cópias do VirtualBox, Windows XP SP3 e Windows 7. Escolhemos esses dois sistemas operacionais Windows para teste porque achamos que o Windows XP representa a grande maioria das instalações atuais do Windows no OS X e que, no futuro, o Windows 7 será o SO convidado mais comum executado no Mac.

Antes do início dos testes, verificamos e instalamos todas as atualizações disponíveis para o ambiente virtual e os dois sistemas operacionais Windows. Com tudo atualizado, configuramos as máquinas virtuais do Windows para usar um único processador e 1 GB de memória. Desligamos o VirtualBox e desabilitamos o Time Machine e quaisquer itens de inicialização no Mac Pro não necessários para o teste. Em seguida, reiniciamos o Mac Pro, iniciamos o VirtualBox, iniciamos um dos ambientes Windows e realizamos os dois conjuntos de testes de benchmark. Após a conclusão dos testes, copiamos os resultados para o Mac para uso posterior.

Em seguida, repetimos a reinicialização e o lançamento do Fusion para os testes de benchmark do segundo sistema operacional Windows.

Finalmente, repetimos a sequência acima com o sistema operacional convidado configurado para usar 2 e depois 4 CPUs.

Pontuações de referência

GeekBench 2.1.4

  • Windows XP SP3 (1, 2, 4 CPU): 2345,,
  • Windows 7 (1, 2, 4 CPU): 2255, 2936, 3926

CineBench R10

  • Windows XP SP3
  • Renderização (1, 2, 4 CPU): 7001,,
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 1025,,

CineBench R10

  • Windows 7
  • Renderização (1, 2, 4 CPU): 2570, 6863, 13344
  • Sombreamento (OpenGL) (1, 2, 4 CPU): 711, 710, 1034

Sun VirtualBox e nossos aplicativos de teste de bancada tiveram um problema com o Windows XP. Especificamente, o GeekBench e o CineBench não conseguiram ver mais de uma única CPU, independentemente de como configuramos o sistema operacional convidado.

Quando testamos o Windows 7 com o GeekBench, notamos que a utilização de vários processadores era inadequada, resultando nas pontuações mais baixas para configurações de 2 e 4 CPUs. O desempenho de um único processador parecia estar no mesmo nível de outros ambientes virtuais.

CineBench também não conseguiu ver mais de um único processador ao executar o Windows XP. Além disso, o teste de renderização para a versão de CPU única do Windows XP produziu um dos resultados mais rápidos, superando até mesmo o próprio Mac Pro. Tentamos reexecutar o teste algumas vezes; todos os resultados estavam dentro do mesmo intervalo. Achamos seguro atribuir os resultados de renderização de CPU única do Windows XP a um problema com o VirtualBox e como ele usa CPUs.

Também vimos um estranho aumento nos resultados de renderização para testes de 2 e 4 CPUs com Windows 7 e em cada caso, a velocidade de renderização mais que dobrou ao passar de 1 para 2 CPUs e de 2 para 4 CPUs. Esse tipo de aumento de desempenho é improvável e, mais uma vez, vamos atribuir isso à implementação do VirtualBox de suporte a várias CPUs.

Com todos os problemas com o teste de benchmark do VirtualBox, os únicos resultados de teste válidos podem ser os de uma única CPU no Windows 7.

Os resultados detalhados dos testes de benchmark estão disponíveis na galeria Virtualization Benchmark Test.

Os Resultados

Com todos os testes de benchmark feitos, é hora de revisitar nossa pergunta original.

Os três principais players da virtualização no Mac (Parallels Desktop para Mac, VMWare Fusion e Sun VirtualBox) cumprem a promessa de desempenho quase natural?

A resposta é um saco misto. Nenhum dos candidatos à virtualização em nossos testes GeekBench foi capaz de medir o desempenho do host Mac Pro. O melhor resultado foi registrado pelo Fusion, que conseguiu atingir quase 68,5% do desempenho do host. Os paralelos ficaram logo atrás em 66,7%. Na retaguarda estava o VirtualBox, com 57,4%.

Quando analisamos os resultados do CineBench, que usa um teste mais real para renderização de imagens, eles ficaram muito próximos da pontuação do apresentador. Mais uma vez, o Fusion ficou no topo dos testes de renderização, alcançando 94,9% do desempenho do host. Os paralelos seguiram em 92,1%. O VirtualBox não conseguiu completar o teste de renderização de forma confiável, tirando-o da disputa. Em uma iteração do teste de renderização, o VirtualBox relatou que teve um desempenho 127,4% melhor que o host, enquanto em outras, não conseguiu iniciar ou terminar.

O teste de sombreamento, que analisa o desempenho da placa gráfica usando OpenGL, foi o pior entre todos os ambientes virtuais. O melhor desempenho foi o Parallels, que atingiu 42,3% das capacidades do host. VirtualBox foi o segundo em 31.5%; Fusion ficou em terceiro lugar com 25,4%.

Escolher um vencedor geral é algo que deixaremos para o usuário final. Cada produto tem seus prós e contras e, em muitos casos, os números de referência são tão próximos que repetir os testes pode alterar a classificação.

O que os resultados dos testes de benchmark mostram é que, universalmente, a capacidade de usar a placa gráfica é o que impede o ambiente virtual de ser um substituto completo para um PC dedicado. Dito isto, uma placa gráfica mais moderna do que a que temos aqui poderia produzir números de desempenho mais altos no teste de sombreamento, especialmente para o Fusion, cujo desenvolvedor sugere placas gráficas de melhor desempenho para obter melhores resultados.

Você notará que algumas combinações de teste (ambiente virtual, versão do Windows e teste de benchmark) apresentaram problemas, ou resultados irreais ou falha na conclusão de um teste. Esses tipos de resultados não devem ser usados como indicadores de problemas com um ambiente virtual. Testes de benchmark são aplicativos incomuns para tentar rodar em um ambiente virtual. Eles são projetados para medir o desempenho de dispositivos físicos, que o ambiente virtual pode não permitir que eles acessem. Isso não é uma falha do ambiente virtual e, no uso no mundo real, não tivemos problemas com a grande maioria dos aplicativos Windows executados em um sistema virtual.

Todos os ambientes virtuais que testamos (Parallels Desktop for Mac 5.0, VMWare Fusion 3.0 e Sun VirtualBox 3.0) oferecem excelente desempenho e estabilidade no uso diário e devem ser capazes de servir como seu principal ambiente Windows na maior parte do dia -aplicações do dia-a-dia.

Recomendado: