Desempenho da Computação Paralela em Ambientes Virtualizados - ppt carregar
PublicouRayssa Mora Alterado mais de 5 anos atrás
Apresentação em tema: "Desempenho da Computação Paralela em Ambientes Virtualizados"— Transcrição da apresentação:
1 Desempenho da Computação Paralela em Ambientes Virtualizados
2 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 Rápido resumo dos topicos que serão abordados na apresentação.
3 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. Dar uma visão geral do que é virtualização, e os principais conceitos relacionados.
4 Por que utilizar 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. Falar da motivação de se utilizar abordagens baseadas em virtualização sobre diversos aspectos.
5 Computação Paralela Utilizada 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. Motivação de se utilizar programação paralela nos dias atuais, e a crescente utilização da mesma.
6 Objetivos Aná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. Mostrar os objetivos gerais da apresentação.
7 Categorias de Virtualização
Virtualizaçã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. Explicar as diferentes categorias de virtualização, mostrando uma visão geral dos principais aspectos de cada uma. Dando maior enfase a paravirtualização, que será a categoria aplicada nos experimentos analisados.
8 Categorias de Virtualização
Virtualizaçã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. Explicar as diferentes categorias de virtualização, mostrando uma visão geral dos principais aspectos de cada uma. Dando maior enfase a paravirtualização, que será a categoria aplicada nos experimentos analisados.
9 Aspectos da Virtualização
Vantagens: Flexibilidade; Disponibilidade; Escalabilidade; Segurança; Custo; Adaptabilidade; Balanceamento de Carga. Desvantagens: Diminuição do desempenho; Ponto Único de Falha. Rápido comentários sobre as vantagens e desvantagens, ressaltando que as vantagens obtidas se sobrepõem em relação as desvantagens.
10 Desempenho em Um Único Ambiente Virtualizado
Descrever o trabalho de Xu et al Objetivos: 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). Mostrar o objetivo do trabalho realizado por Xu et al sobre o desempenho do OpenMP e MPI em ambientes virtualizados em somente uma máquina fíisica.
11 Hypervisor Xen Utiliza 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. Explicar o funcionamento do Xen, abordagem de virtualização aplicada no trabalho de Xu et al
12 Hypervisor Xen Mostrar no desenho as principais características do Xen, mostrando as partes que mais influenciam nos resultados do trabalho
13 Experimentos Servidor 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. Descrever o cenário dos experimentos realizados, ressanto as particularidades de cada teste.
14 Teste com OpenMP Analisar os resultados obtidos com o OpenMP, mostrando os motivos que causaram o comportamento identificado (analise semelhante a mostrada no relatório)
15 Teste com MPI Analisar os resultados obtidos com o MPI, mostrando os motivos que causaram o comportamento identificado (analise semelhante a mostrada no relatório)
Pouco 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. Comentário final sobre o trabalho de Xu et al, ressaltando os resultados obtidos pelo mesmo, assim como o que eles representam.
17 Desempenho da Computação Paralela na Computação em Nuvem
Descrever 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). Mostrar o objetivo do trabalho realizado por Ekanayake et al sobre o desempenho do MPI em computação em nuvem. Explicar as aplicações utilizadas, bem como as características de cada uma, as quais influenciam de forma única os resultados obtidos.
18 Experimentos 16 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) ; Descrição dos cenários dos experimentos, ressaltando as particularidades de cada um.
Analisar o comportamento de cada um dos cenários utilizados, ressaltando as razões que justificam o comportamento identificado (análise semelhante a presente no relatório)
20 Multiplicação de Matrizes
21 Agrupamento por Kmeans
Analisar o comportamento de cada um dos cenários utilizados, ressaltando as razões que justificam o comportamento identificado (análise semelhante a presente no relatório), bem como as razões da diferença de desempenho quando comparado com a aplicação de multiplicação.
22 Agrupamento por Kmeans
23 Visão Geral dos Resultados
Os 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. Comentário final sobre o trabalho de Ekanayake et al, ressaltando os resultados obtidos pelo mesmo, assim como o que eles representam.
24 Conclusão Impacto 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. Conclusão do trabalho, mostrando o que foi abordado na apresentação, bem como os resultados obtidos que representam o comportamento de aplicações paralelas em ambientes virtualizados em pequena e larga escala.