Desempenho da Computação Paralela em Ambientes Virtualizados

Slides:



Advertisements
Apresentações semelhantes
Data Center Definido por Software
Advertisements

Sistemas Distribuídos
Virtualização de serviços
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Virtualização André Bernardes RA: César Kallas RA:
Tópicos I – Prof. Eduardo Zagari Virtualização André Bernardes RA: César Kallas RA: Eduardo Stuchi RA: Rafael Curi RA:
Introdução aos Sistemas Distribuídos
Sistemas Operacionais
Sistemas Distribuídos
Sistemas Operacionais de Rede Professor: João Paulo de Brito Gonçalves
Sistemas Distribuídos
Arquitetura de Sistemas Operacionais
Virtualização de Máquinas
Avaliação de Sistemas Operacionais
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I Aula 4 – Conceitos Básicos
Virtualização..
Sistemas Operacionais
Arquitetura de Sistemas Operacionais
Clusters.
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Prefeitura de Santo André
Fernando Seabra Chirigati
Middleware e Sistemas Distribuídos
Professora Vanessa Fonseca
Cleber da Paixão Rojas Rafael Xavier
Felipe Bogossian Luiz Felipe Maciel Renato Sampaio Rodrigo Couto
Luiz Augusto da Silva Alves Professo Luís Henrique Maciel Kosmalski Costa Professor Otto Carlos Muniz Bandeira Duarte Redes 2 Novembro 2010.
XEn Universidade Federal do Rio de Janeiro
Intel Virtualization Technologies
Sistemas Distribuídos
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Cluster Beowulf.
Virtualização.
Gerencia de Redes Redes de Computadores II
Sistemas Distribuídos
Sistemas Operacionais
Sistemas Operacionais
Sistemas Distribuídos
Computação L1: Infra-Estrutura Básica
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Private Cloud na Prática VIR302
Single-Chip Cloud Computer (SCC) Um processador many-core experimental desenvolvido pela Intel Labs.
Processos.
Sistemas Distribuídos
Introdução O que se espera de um sistema de computação?
Network Virtualization: Breaking the Performance Barrier Departamento de Eletrônica – Escola Politécnica Programa de Engenharia Elétrica – COPPE Rafael.
Virtualização de Máquinas Uma visão geral e informal.
Virtualização/Hipervisão/Servidores Microsoft
Intel Virtualization Technology (VT) Redes de Computadores II Felipe Figueira Horta Professores: Luis Henrique e Otto Carlos.
Multiparadigma das Comunicações em Java para Grid Computing Fernanda R. Ramos Luiz Felipe Marco Eiterer Profº Alcides Calsavara, Ph.D.
Sistemas Operacionais Aula 2 Danielle Costa
Introdução aos Sistemas Operacionais
Análise Multiparamétrica do Overhead de Rede em Máquinas Virtuais WSO 2007 – Rio de Janeiro/RJ – 4 e 5 de julho de Análise Multiparamétrica do Overhead.
Arquitetura de computadores
Avaliação de Desempenho em Ambientes de Mobile Cloud Computing Danilo Oliveira Paulo Maciel Nelson Rosa.
Projetar Processos. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar distribuição | 2 Descrição do Projeto.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Virtualização: Conceito Luciano Palma Microsoft Brasil.
TECNOLOGIA ATUAIS DE REDES
VIRTUALIZAÇÃO - INTRODUÇÃO Na área de TI; O que é sistema legado? É o termo utilizado em referência aos sistemas computacionais de uma organização que,
Sistemas Operacionais de Redes Virtualização IGOR ALVES.
Virtualização de Servidores – Vmware ESXi 4.1 Leonardo Cruz 4º - REDES Proj.Int II.
Capítulo 4 Estrutura do Sistema Operacional
Curso Superior de Tecnologia em Redes de Computadores Projeto Integrador II 1° Seminário de Andamento SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE.
Virtualização de Servidores – Vmware ESXi Leonardo Cruz 4º - REDES Proj.Int II.
Transcrição da apresentação:

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 Rápido resumo dos topicos que serão abordados na apresentaçã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. Dar uma visão geral do que é virtualização, e os principais conceitos relacionados.

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.

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.

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.

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.

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.

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.

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.

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

Hypervisor Xen Mostrar no desenho as principais características do Xen, mostrando as partes que mais influenciam nos resultados do trabalho

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.

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)

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)

Visão Geral dos Resultados 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.

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.

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.

Multiplicação de Matrizes 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)

Multiplicação de Matrizes 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)

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.

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.

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.

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.