O Sistema de Processamento Paralelo Netuno

Documentos relacionados
TOP Arquitetura dos supercomputadores

Supercomputador Pleiades

Apresentação dos Serviços para Processamento de Dados de Alto Desempenho disponibilizados pela InterNuvem

Ambientes de computação de alto desempenho no LNCC

Benchmarks. 1. Introdução

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído

SSC510 Arquitetura de Computadores. 6ª aula

Arquitetura e Organização de Computadores

Aula 3 Redes de Interconexão

Computação de Alto Desempenho Clusters de PCs

MEU SISTEMA ESTÁ LENTO! ENTENDA AS POSSÍVEIS CAUSAS DESTE PROBLEMA

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Evolução da Computação de Alto Desempenho sob a Ótica da Lis. ou (Se um processador já é rápido, imaginem um sistema com processadores :-)

Sistemas Distribuídos

Arquiteturas Paralelas

Organização de Computadores I

Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR

SISTEMA DE CONVERSÃO DE DADOS DE SIMULAÇÃO HIDRODINÂMICA DO SISBAHIA PARA O GNOME

Processamento de áudio em tempo real utilizando dispositivos não convencionais:

Introdução à Informática. Aula 1

Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Arquiteturas Paralelas

Definição Rede Computadores

Modelos de Computadores

Arquitetura de computadores

MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

Mecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas

4/11/2010. Computadores de grande porte: mainframes e supercomputadores. Sistemas Computacionais Classificação. Sistemas Computacionais Classificação

A IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES

Ementário das disciplinas do curso de Engenharia da Computação. - Núcleo Básico -

Organização de Computadores Processadores, Placa Mãe e Memória RAM. Professor: Francisco Ary Alves de Souza

Introdução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva

Caracterização de Sistemas Distribuídos

Material baseado nos slides de: Marcos José Santana Regina Helena Carlucci Santana

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano

OpenMP: Variáveis de Ambiente

Subsistemas de E/S Device Driver Controlador de E/S Dispositivos de E/S Discos Magnéticos Desempenho, redundância, proteção de dados

Sob medida para seu sistema de segurança!

FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO SEGUNDO PERÍODO

Sistemas de arquivos Discos

Computadores e Programação (DCC/UFRJ)

Universidade Federal do Rio de Janeiro Informática DCC/IM. Arquitetura de Computadores II. Arquiteturas MIMD. Arquiteturas MIMD

O quarto paradigma: a ciência da análise de dados

Computação Paralela (CUDA)

Aula 1: A Evolução dos Sistemas Computacionais

16/8/2010. A arquitetura de um sistema computacional representa o modelo da organização e funcionamento de um sistema de processamento

DISCIPLINAS ELETIVAS GRUPO 1 Mínimo de 840 horas

Informática I. Aula /09/2006 1

FTC Faculdade de Tecnologia e Ciências Engenharia Civil 1º Semestre. Conceitos Básicos. Rafael Barbosa Neiva

Introdução aos Sistemas Distribuídos

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

Leapfrog Geo 3.1. Notas técnicas da versão

Conceitos sobre Computadores

Transcrição:

O Sistema de Processamento Paralelo Netuno

Aplicações Paralelas Genoma Humano Turbulência dos Fluidos Dinâmica de Veículos Circulação de Oceanos Dinâmica de Fluidos Viscosos Modelagem de Supercondutores Cromodinâmica Quântica Visão por Computador Farmacêutica Biologia Estrutural Previsão do Tempo (+ 72 hs)

Aplicações Paralelas Algebra Linear Densa ou Esparsa Métodos Espectrais (Transformada de Fourier) N-Body (Barnes-Hut) Grade Estruturada (Lattice Boltzman) Grade Não Estruturada (Análise de Elementos Finitos) Simulação de Monte Carlo Lógica Combinatória (Criptografia) Grafos (Ordenação) Programação Dinâmica Métodos Branch and Bound Modelos Gráficos (Redes Bayesianas) Simulação de Máquinas de Estado Finito.

Simulando a Evolução das Galáxias A simulação da evolução de galáxias ao longo de milhões de anos é um dos problemas interessantes que podem ser resolvidos pela computação científica. Usando simples equações de física Newtoniana, usando a massa e a distância de suas estrelas, podemos prever com precisão o comportamento futuro de um conjunto de galáxias. Contudo, considerando-se que uma galáxia possui milhões de estrelas, esta seria uma aplicação com custos computacionais elevadíssimos.

Método de Barnes-Hut

Simulando a Evolução das Galáxias Para solucionar este tipo de problema é necessário calcular a interação gravitacional para cada par de estrelas em diversos intervalos de tempo. Este método de solução tem complexidade O(N2) o que o tornaria impossível chegar a uma solução em um tempo adequado. Mas levando-se em conta que a força gravitacional diminui com o quadrado da distância, pode-se usar um algoritmo aproximativo de complexidade O(N logn).

Simulando a Evolução das Galáxias Neste caso grupos de estrelas mais distantes são consideradas como uma única estrela com massa equivalente e situada no centro de massa dessas galáxias. Este algoritmo hierárquico recebe o nome de Barnes-Hut Ampla concorrência existe entre estrelas dentro de um intervalo de tempo, mas como são padrões bastantes irregulares e variantes no tempo, é um desafio explorar esta concorrência em arquiteturas paralelas.

Método de Barnes-Hut

Método de Barnes-Hut

Método de Barnes-Hut

Aplicações Biológicas Simulações Biomoleculares Dobramento de RNA Dobramento de Proteína Dinâmica do Tecido Muscular Biomecânica Neuromuscular Dinâmica Cardiovascular

Dobramento de Proteínas As proteínas são um conjunto de diferentes tipos de aminoácidos. A sua funcionalidade é dada pela forma final que assume, resultante de diversas e complexas forças de interação entre esses aminoácidos. São necessários recursos computacionais poderosos para simular com eficiência esse processo. A seguir vemos alguns exemplos de simulação de dobramento de proteínas.

Dobramento de Proteínas

Aplicações Geofísicas A exploração petrolífera e a prospecção mineral são as atividades, em nível de indústria de aproveitamento de recursos naturais, de maior aplicação da Geofísica. O desenvolvimento de programas de pesquisa que visem suprir o conhecimento geológico necessário é um fator essencial para a superação de limites na exploração mineral/petrolífera. Um dos grandes utilizadores do Netuno é a UFPA, que atua na pesquisa Geofísica, propondo soluções para os desafios para a produção petrolífera na Amazônia. Ou seja, a necessidade do aperfeiçoamento de técnicas adequadas a aumentar a capacidade de previsão, com diminuição de custos, da ocorrência de reservatórios em bacias sedimentares da Amazônia (onshore e offshore).

Aplicações Geofísicas Baseado na propagação de ondas sísmicas geradas por uma fonte artificial, e registradas em sensores denominados geofones (na terra) e hidrofones (na água), o geofísico usa os métodos sísmicos na definição de imagens de rochas na sub-superfície da Terra, em duas (2D) e três (3D) dimensões, possibilitando a delimitação de alvos de interesse para a exploração. Esta tarefa exige sofisticados equipamentos para a aquisição de uma gigantesca quantidade de dados, e sistemas computacionais de alto desempenho para o processamento e interpretação 2D e 3D. A atividade geofísica aplicada à exploração de petróleo na região. As reservas petrolíferas de Urucu no Amazonas e a atividade exploratória no litoral do Pará são as duas principais atividades petrolíferas na região.

Aplicações Geofísicas

Simulando as Correntes Oceânicas Modelo do clima da terra precisa saber como a atmosfera interage com os oceanos, que ocupam ¾ da superfície da Terra. Estão envolvidos neste estudo diversas forças físicas: efeitos atmosféricos, vento e fricção com o fundo dos oceanos. O oceano é divido em planos e cada plano possui uma grade de pontos igualmente espaçados (uma matriz) com informações como velocidade e pressão, entre outras. Além disto, todos esses planos são simulados para diversos intervalos de tempo, também igualmente espaçados.

Simulando as Correntes Oceânicas Para um oceano como o Atlântico, de 2000 km x 2000 km, uma grade de 100 x 100 pontos implica uma distância de 20 km entre os pontos, o que não é uma resolução muito fina. Para simular o comportamento dos oceanos para um período de 5 anos, atualizados a cada 8 horas, serão necessários cerca de 5500 intervalos de tempo. A demanda computacional para alta acurácia é enorme e a necessidade de multiprocessamento é clara. Por sorte a aplicação naturalmente permite bastante concorrência, pois há bastante independência de dados entre as diversas fases da computação.

Simulando as Correntes Oceânicas

Simulando as Correntes Oceânicas

SuperComputadores Paralelos

Evolução das Arquiteturas no Top500

ENIAC - 1946

O mais rápido em 1976 Cray 1

O mais rápido em 2001 ASCI White

O mais rápido em 2003 Earth Simulator

O mais rápido em 2005/2007 Earth Simulator IBM Blue Gene L

O mais rápido em 2008/2009 RoadRunner

Evolução Desempenho Top500

Evolução x Década 1 Gflop/s - 1988: Cray Y-MP; 8 Processadores Análise Estática de Elementos Finitos 1 Tflop/s 1998: Cray T3E; 1024 Processadores Modelagem de átomos de magnetos metálicos 1 Pflop/s 2008: Cray XT5; 1.5x105 Processadores Materiais Supercondutores 1 EFlop/s; ~2018: 1x107 Processadores 109 Threads

Netuno

Descrição O Netuno é um sistema de processamento paralelo composto por: Nós Computacionais Nós de Acesso e Controle Rede de Interconexão de Alta Velocidade Rede de Interconexão de E/S Sistema de Armazenamento Sistema Operacional Bibliotecas de programação Sistema de Gerenciamento: Nós Submissão

Descrição O Netuno é um sistema de processamento paralelo composto por: Nós Computacionais Nós de Acesso e Controle Rede de Interconexão de Alta Velocidade Rede de Interconexão de E/S Sistema de Armazenamento Sistema Operacional Bibliotecas de programação Sistema de Gerenciamento: Nós Submissão

Nós Computacionais 256 nós computacionais com: Dois processadores Intel Quad-core de 2,66 GHz com 12 MB de cache Memória com capacidade de 16 GB Unidade de disco com 160 GB Interface HCA para rede Infiniband Duas interfaces de rede Gigabit Ethernet Totalizando 2048 processadores e 4 TB de memória.

Nós de Acesso Quatro nós de acesso com a mesma configuração dos nós computacionais Acesso via ssh ou interface web (Moab). Compiladores disponíveis: Portland Fortran e C Intel C e Fortran GNU C e Fortran Depuradores paralelos (Totalview) Aplicações disponíveis na área de geofísica e oceanografia, entre outras. Sistema de submissão de tarefas Torque/Moab.

Nós de Controle Dois nós de controle com processadores AMD dual-core de 2.0 GHz. Software de gerenciamento SCALI Manager. Permite o envio simultâneo de comandos para todos os nós. Gerencia uma base de dados com as configurações de cada nó. Permite a instalação de todo o sistema operacional com apenas um apertar de botão.

Rede de Interconexão de Alta Velocidade Rede Infiniband com 20 Gbps por canal. Switch CISCO com capacidade para 260 conexões A comunicação se realiza totalmente sem bloqueio. Cada nó possui sua interface para conexão diretamente com o switch. Amplia bastante o espectro de aplicações que podem ser rodadas no sistema. Os drivers utilizados foram da distribuição OFED.

Rede de Interconexão de E/S Todos os nós de um rack de interligam a um switch local com 48 portas com portas Gigabit. Um switch central interliga a cada switch de rack através de um par de fibras óticas de 10 Gbps cada. O servidor de armazenamento se interconecta ao switch central com 12 canais Gigabit permitindo uma capacidade de transferência de até 1,2 GB/s.

Sistema de Armazenamento Paralelo Sistema de armazenamento PANASAS de alto desempenho. Capacidade inicial de 30 TB. Sistema de arquivos paralelos, que distribui um mesmo arquivo por vário discos, permitindo a sua leitura/escrita simultânea por vários usuários. Suporte para MPI I/O. Redundância para a proteção dos dados, duplica arquivos menores que 64 KB, RAID 5 para os maiores.

Sistema de Armazenamento Paralelo Sistema de armazenamento PANASAS de alto desempenho. Capacidade inicial de 30 TB. Sistema de arquivos paralelos, que distribui um mesmo arquivo por vário discos, permitindo a sua leitura/escrita simultânea por vários usuários. Suporte para MPI I/O. Redundância para a proteção dos dados, duplica arquivos menores que 64 KB, RAID 5 para os maiores.

Sistema de Armazenamento Paralelo

Sistema de Armazenamento Convencional Um servidor NFS com 4 links de 1 Gbps Capacidade de armazenamento bruta de 135 TB. Utiliza RAID-5 para redundância dos dados. Possui um servidor (head node) responsável pelo acesso ao array de discos com 4 interfaces de rede 1 Gbps, dois processadores AMD quad-core e 8 GB memória. 9 gavetas com 15 discos SATA de 1 TB cada.

Sistema Operacional Sistema operacional CentOS 5.1, baseado na distribuição RedHat Enterprise Linux. Software aberto permitindo acesso à informações e atualizações facilmente pela internet. Alto desempenho e confiabilidade. Ferramentas especiais de controle são adicionadas para permitir o gerenciamento do cluster como um único computador.

Avaliação de Desempenho Para avaliação de desempenho do cluster foi utilizado o programa High Performance Linpack (HPL), que é um solucionador paralelo de matrizes lineares densas. Como o Netuno é composto por vários nós, onde um nó não tem acesso direto à memória do outro, foram utilizadas as bibliotecas de comunicação MPI para a troca de mensagens entre os nós.

Avaliaão de Desempenho O desempenho final do Netuno para este benchmark foi de 16,2 TFlops Isso colocou o Netuno na 138a posição da lista Top500 de junho de 2008. Para obter-se este valor, vários parâmetros de configuração do HPL tiveram que ser ajustados para obter-se o melhor desempenho. O conjunto adequado de bibliotecas matemáticas e de comunicação teve que ser escolhido para conseguir-se um desempenho ideal.

Benchmark HPL

Benchmark HPL 0 0 1 2 1 2 A11 A14 A17 A12 A15 A18 A13 A16 A31 A34 A37 A32 A35 A38 A33 A36 A51 A54 A57 A52 A55 A58 A53 A56 A71 A74 A77 A72 A75 A78 A73 A76 A21 A24 A27 A22 A25 A28 A23 A26 A41 A44 A47 A42 A45 A48 A43 A46 A61 A64 A67 A62 A65 A68 A63 A66 A81 A84 A87 A82 A85 A88 A83 A86

Desempenho Entre as várias opções de bibliotecas matemáticas, utilizamos a GotoBLAS, com melhor desempenho que a ATLAS ou mesmo a Intel MKL. O tamanho da matriz inicialmente utilizado foi de 40000 x 40000 elementos. O desempenho medido para um nó (8 processadores) chegou a 70 GFlops em um desempenho máximo teórico de 85 GFlops. A eficiência situou-se em torno de 83% do valor de pico.

Desempenho O tempo de solução para uma matriz de 40000 x 40000 elementos ficou em torno de 12 minutos para a execução em um nó. Para avaliação do desempenho em execução com vários nós, a velocidade e latência da rede de interconexão tem influência significativa no desempenho. A seguir apresentamos uma comparação entre o uso de Ethernet (1Gbps) e Infinibando (20 Gbps).

Desempenho Ethernet O desempenho para um rack com 32 nós, ou seja, 256 processadores, é de 1,5 TFlops com uso da interface ethernet. Ou seja, uma eficiência em torno de 58%. O desempenho com o uso de 2000 processadores foi de 8,9 TFlops. Esses valores indicam uma eficiência final de apenas 42%.

Desempenho Sustentado Ethernet 10000 1000 D. Sus. 100 10 0 500 1000 1500 2000 2500

Eficiência Ethernet 100 90 82 80 70 D. Sus. 60 55 50 42 40 0 500 1000 1500 2000 2500

Desempenho Infiniband O desempenho para um rack com 32 nós, ou seja, 256 processadores, é de 2,1 TFlops com uso da interface Infiniband. O tempo de solução de uma matriz de 224000 x 224000 é em torno de 1 hora. A eficiência foi em torno de 77%. O desempenho para 1000 processadores com uso da Infiniband é 7,6 TFlops. Esses valores indicam uma eficiência total em torno de 71%. O tamanho da matriz utilizada foi de 414000 x 414000.

Desempenho Infiniband O desempenho para 2048 processadores com uso da Infiniband é de 16,2 Tflops. O tamanho da matriz utilizada foi de 650.000 x 650.000. Só espaço de memória necessário para armazenar a matriz é de 3,4 TB em um total de 4,1 TB (83%). Esses valores indicam uma eficiência final de 70%. Os parâmetros de configuração do HPL podem ser encontrados nas referências em anexo.

Desempenho Sustentado Infiniband 16240 7590 10000 2050 1000 D. Sus. 100 70 10 0 500 1000 1500 2000 2500

Eficiência Infiniband 100% 90% 82% 80% 75% 71% 70% 70% Efic. 60% 50% 40% 0 500 1000 1500 2000 2500

Avaliação de Desempenho Nós N NB P Q Resultados (GFlops) OpenMPI Intel MPI Scali MPI 1 41448 192 2 4 71 72 72 4 82897 192 4 8 282 283 284 8 117234 192 8 8 561 548 570 16 165794 192 8 16 1106 1088 1131 32 234468 192 16 16 2189 2081 2218 64 331588 192 16 32 4248 4097 4365 128 468936 192 32 32 8268 7760 8385

Referências Publicações: http://www.dcc.ufrj.br/~gabriel/artigos.php Portal de Acesso http://login.hpc.ufrj.br:8181/map/user/nodeview.jsp Portal Netuno http://www.hpc.ufrj.br (em breve) Top500 http://www.top500.org HPL http://www.netlib.org/benchmark/hpl/