desempenho da computação paralela em ambientes virtualizados
DESCRIPTION
Desempenho da Computação Paralela em Ambientes Virtualizados. Rafael Lopes Gomes. Agenda. Introdução Virtualização Desempenho da Computação Paralela em Um Único Ambiente Virtualizado Desempenho da Computação Paralela na Computação em Nuvem Conclusão. O que virtualização ?. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/1.jpg)
Desempenho da Desempenho da Computação Paralela em Computação Paralela em Ambientes VirtualizadosAmbientes VirtualizadosRafael Lopes Gomes
![Page 2: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/2.jpg)
AgendaAgendaIntroduçãoVirtualizaçãoDesempenho da Computação
Paralela em Um Único Ambiente Virtualizado
Desempenho da Computação Paralela na Computação em Nuvem
Conclusão
![Page 3: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/3.jpg)
O que virtualização ?O que virtualização ?Virtualização: um ambiente o qual
múltiplos OSs executam é uma única máquina física.
Virtual Machine (VM): partição a qual cada OS executa isoladamente.
Virtual Machine Monitor (VMM ou Hypervisor): camada adicional de software entre o hardware e o SO.
![Page 4: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/4.jpg)
Por que utilizar Por que utilizar virtualização ?virtualização ?Solução para a consolidação de
recursos, redução de consumo de energia, e para lidar com o comportamento em rajada.
Empresas: virtualização para oferecer recursos de datacenter para aplicações de diversos clientes.
![Page 5: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/5.jpg)
Computação ParalelaComputação ParalelaUtilizada tanto na área de
negócios quanto na de HPC.Mais complexa: determinismo,
sincronização, custo de comunicação e balanceamento de carga.
Popularidade dos processadores multi-core: mudar a estrutura do código das aplicações.
![Page 6: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/6.jpg)
ObjetivosObjetivosAnálise do desempenho da
utilização de programação paralela em ambientes virtualizados:◦Pequena escala: única máquina
física◦Larga escala: computação em
nuvem.
![Page 7: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/7.jpg)
Categorias de Categorias de VirtualizaçãoVirtualizaçãoVirtualização Completa:
◦VMM executa sobre um SO (aplicação do usuário);
◦dispositivos de I/O são alocados imitando dispositivos físicos (comunicação via driver);
◦Vantagem: fácil de uso;◦Desvantagem: baixo desempenho (até
30% menor).Virtualização de OS :
◦executa mais instâncias do mesmo SO em paralelo;
◦Vantagem: facilita a administração do sistema (gerenciamento de recursos);
◦Desvantagem: VMs só podem usar o mesmo SO.
![Page 8: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/8.jpg)
Categorias de Categorias de VirtualizaçãoVirtualizaçãoVirtualização de hardware
(Paravirtualização):◦VMM é executado diretamente no
hardware, controlando e sincronizando o acesso dos SOs aos recursos de hardware;
◦Interface de software entre o hardware e os SOs modificados
◦Vantagem: simplicidade do VMM (desempenho próximo ao hardware);
◦Desvantagem: o SO deve ser modificado.
![Page 9: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/9.jpg)
Aspectos da VirtualizaçãoAspectos da Virtualização• Vantagens:–Flexibilidade;–Disponibilidade;–Escalabilidade;–Segurança;–Custo;–Adaptabilidade;–Balanceamento de Carga.
• Desvantagens:–Diminuição do desempenho;–Ponto Único de Falha.
![Page 10: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/10.jpg)
Desempenho em Um Único Desempenho em Um Único Ambiente VirtualizadoAmbiente VirtualizadoDescrever o trabalho de Xu et alObjetivos:
◦Encontrar a sobrecarga do uso de VMs sobre o desempenho da programação paralela em uma plataforma multi-core;
◦Compreender os efeitos da partilha de recursos sobre o desempenho da programação paralela usando o Xen.
Avaliou o Open Multiprocessing (OpenMP) e o Message Passing Interface (MPI).
![Page 11: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/11.jpg)
HypervisorHypervisor Xen XenUtiliza paravirtualização;Os SOs que ficam nos domínios
convidados (DomainU) são impedidos de executar diretamente as instruções privilegiadas;
Um domínio especial (Dom0), tem permissão para acessar a interface de controle fornecida pelo hypervisor e executar as tarefas;
Os domínios se comunicam uns com os outros através de páginas compartilhadas e canais de eventos.
![Page 12: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/12.jpg)
HypervisorHypervisor Xen Xen
![Page 13: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/13.jpg)
ExperimentosExperimentosServidor Dell OPTIPLEX 755, com
processador Intel quad-core de 2.4GHz: Para cada DomU são alocados 2 processadores virtuais (VCPU);
Teste com OpenMP: avaliar o desempenho de um programa paralelo com pouca comunicação e sincronização entre as threads ou processos;
Teste com MPI: realizados testes com uma única VM, um cluster virtual em um nó físico e a máquina física.
![Page 14: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/14.jpg)
Teste com OpenMPTeste com OpenMP
![Page 15: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/15.jpg)
Teste com MPITeste com MPI
![Page 16: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/16.jpg)
Visão Geral dos Visão Geral dos ResultadosResultadosPouco impacto sobre a
aplicações paralelas simples com pouca comunicação entre as threads ou processos;
Uso do Xen: executar um programa paralelo em mais VCPU do que CPU, é eficaz sem uma degradação de desempenho notável.
![Page 17: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/17.jpg)
Desempenho da Desempenho da Computação Paralela na Computação Paralela na Computação em NuvemComputação em NuvemDescrever o trabalho de
Ekanayake et al.: avaliação do desempenho de aplicações MPI em ambientes de nuvem;
Nuvem privada Eucalyptus;Aplicações:
◦Multiplicação de Matrizes: comunicação O(n) e C/C O( 1/√n) ;
◦Agrupamento com Kmeans: comunicação O(1) e C/C O( 1/n).
![Page 18: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/18.jpg)
ExperimentosExperimentos16 nós em um cluster iDataPlex,
cada um possui um processador 2 Quad Core Intel Xeon (para um total de 8 núcleos de CPU) ;
![Page 19: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/19.jpg)
Multiplicação de MatrizesMultiplicação de Matrizes
![Page 20: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/20.jpg)
Multiplicação de MatrizesMultiplicação de Matrizes
![Page 21: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/21.jpg)
Agrupamento por KmeansAgrupamento por Kmeans
![Page 22: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/22.jpg)
Agrupamento por KmeansAgrupamento por Kmeans
![Page 23: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/23.jpg)
Visão Geral dos Visão Geral dos ResultadosResultadosOs overheads gerados são elevados
para aplicações paralelas que exigem padrões de comunicação complexos;
As aplicações MPI que são sensíveis à latência obtêm um maior overhead em ambiente de computação em nuvem, e esses overheads aumentam à medida que o número de VMs por hardware aumenta.
![Page 24: Desempenho da Computação Paralela em Ambientes Virtualizados](https://reader036.vdocuments.site/reader036/viewer/2022070404/56813b4d550346895da43df0/html5/thumbnails/24.jpg)
ConclusãoConclusãoImpacto de se executar
aplicações paralelas em ambientes virtualizados: uma única máquina física e em computação em nuvem.
Melhor desempenho:◦melhor suporte para as operações de
I/O;◦uso de algoritmos menos sensíveis a
latência.