ARQUITETURA DE COMPUTADORES II Classificação Moderna de Máquinas Paralelas Prof. César Augusto M. Marcon 2 / 36 Índice PVP - Parallel Vector Processor SMP - Symmetric Multiprocessor MPP - Massively Parallel Processors NOW - Network of Workstations COW - Cluster of Workstations 3 / 36 PVP - Parallel Vector Processor • • • • Processadores Vetoriais Memória compartilhada (UMA) Nós se comunicam através da memória Interconectados por matriz de chaveamento (permite acesso concorrente a memória) • Baixa escalabilidade (poucos processadores) • Grandes registradores, sem caches VP ... VP VP Interconexão SM SM SM 4 / 36 PVP - Parallel Vector Processor • Custo aproximado (~1.000.000 U$) • Ex: Cray C90, Cray T90, NEC SX-4 Cray T90 Cray SX6 5 / 36 Índice PVP - Parallel Vector Processor SMP - Symmetric Multiprocessor MPP - Massively Parallel Processors NOW - Network of Workstations COW - Cluster of Workstations 6 / 36 SMP - Symmetric Multiprocessor • Multiprocessadores Simétricos • Sistemas constituídos com processadores comerciais – Interconectados por barramento • Baixa escalabilidade – Conectados a uma memória compartilhada (MC) • Nós se comunicam através desta • Modelo UMA Multiprocessadores – Normalmente os processadores têm cache (P/C) 7 / 36 SMP - Symmetric Multiprocessor • Todos processadores têm acesso igual ao barramento e memória • Não há privilégios por parte do SO a nenhum dos processadores no atendimento de requisições – Simetria • Programação – Mais fácil se comparado a máquinas que se comunicam por troca de mensagens – múltiplas threads aproveitam-se automaticamente dos múltiplos processadores 8 / 36 SMP - Symmetric Multiprocessor • Maiores máquinas SMP encontradas hoje no mercado possuem em torno de 100 processadores • Custo médio (~20.000 U$) • Ex: IBM R50, SGI Power Challenge, Sun Microsystems, Silicon Graphics, PC Dual/Quad, DEC Alpha Server 8400 Intel Quad Xeon 7400 Server HP Integrity rx8620-32 Server 9 / 36 Índice PVP - Parallel Vector Processor SMP - Symmetric Multiprocessor MPP - Massively Parallel Processors NOW - Network of Workstations COW - Cluster of Workstations 10 / 36 MPP - Massively Parallel Processors • • • • Multicomputadores massiçamente paralelos Múltiplas memórias locais Nós se comunicam por troca de mensagens Interconectados por rede de alta velocidade – Rede proprietária • Boa escalabilidade (muitos processadores) • Programação mais complicada P M ... P P M M Interconexão 11 / 36 MPP - Massively Parallel Processors • Alto custo (~1.000.000 U$) • Ex: Intel Paragon, Cray T3E, Thinking Machines CM-5 Intel Paragon IBM SP2 Connection Machine CM-5 12 / 36 Índice PVP - Parallel Vector Processor SMP - Symmetric Multiprocessor MPP - Massively Parallel Processors NOW - Network of Workstations COW - Cluster of Workstations 13 / 36 NOW - Network of Workstations • • • • Redes de Estações de Trabalho Múltiplas memórias locais (ML) Nós se comunicam por troca de mensagens Interconectados por barramento 14 / 36 NOW - Network of Workstations • NOWs são constituídos por várias estações de trabalho interligadas por tecnologia tradicional de rede (e.g. Ethernet) – Na prática rede local de estações é utilizada na execução de aplicações paralelas • A rede local se comporta como uma máquina paralela vários processadores são interligados pela rede máquina NORMA de baixo custo • Média escalabilidade (poucas estações) • Difícil programação • Redes tradicionais não são otimizadas para operações de comunicação de aplicação paralela – Alta latência • Comprometimento do desempenho global • Aplicações – Ambientes de ensino de processamento paralelo e distribuído – Execução de aplicações em que a comunicação entre nós não é intensa 15 / 36 NOW - Network of Workstations • Custo baixo • Ex: Estações Sun interligadas por rede Ethernet 16 / 36 Comparação Entre Classes de Máquinas PVP SMP MPP NOW Número de EPs Baixo Baixo Alto Médio Escalabilidade Baixa Baixa Alta Média Baixa Média Baixa Alta Média Fácil Difícil Difícil Alto Médio Alto Baixo Latência da comunicação Programação Custo 17 / 36 Índice PVP - Parallel Vector Processor SMP - Symmetric Multiprocessor MPP - Massively Parallel Processors NOW - Network of Workstations COW - Cluster of Workstations 18 / 36 Surge uma Nova Classe - Máquinas agregadas Cluster of Workstations (COW) • Redes de estações dedicadas ao Processamento Paralelo • Interconectadas por redes padrão ou de baixa latência • Máquina otimizada para operações paralelas – Estações não possuem monitor, teclado e mouse “estação de trabalho sem cabeça“ (headless workstation) • Principais otimizações são feitas no software – SO é “enxugado” e servidores desabilitados vários • Arquitetura básica 19 / 36 COW é uma Otimização de uma NOW • • • • COW pode ser vista como NOW dedicada ao processamento paralelo e distribuído COW Implementa protocolos de rede em Hardware Necessidades de comunicação diferentes das necessidades em redes locais Várias camadas de rede podem ser simplificadas ou eliminadas 20 / 36 Tendências de Infra-estruturas • Agregados interligados por redes padrão (e.g. Ethernet) – Tendência impulsionada por grandes fabricantes (HP, IBM e Dell) – Máquinas paralelas poderosas, agregando centenas a milhares de estações de trabalho de baixo custo (low end) – Motivo • Muito caro investimento em rede especial para interligar tantas máquinas – Obtenção de desempenho • Muitos nós de alto poder computacional • Aplicações que não necessitem muita comunicação • Agregados interligados por redes de baixa latência - Tendência impulsionada por fabricantes de placas de interconexão (padrão PCI) - Placas implementam protocolos de baixa latência otimizados para as características de comunicação de aplicações paralelas - Custo dessas placas >> placas padrão Muito caro construir máquinas com muitos nós 21 / 36 Placa de Baixa Latência Myrinet • • • • • Implementa troca de mensagens (NORMA) Latência abaixo de 1µs Vazão 19,8 Gbit/s Nós interligados através de switch de alto desempenho Custo aproximando U$ 2.000,00 22 / 36 Conjunto de Placas de Baixa Latência TG201 QsTenG 24 • • • • Completamente não bloqueante Latência em torno de 200ns Vazão 480 Gbits/s Custo aproximando U$ 30.000,00 23 / 36 Vantagens de uma COW • Procura aliar vantagens das outras quatro classes – – – – – – – – – Baixo custo (NOW) Maior flexibilidade na construção (NOW) Baixa latência na comunicação (MPP e PVP) Memória distribuída (MPP) e/ou compartilhada (SMP) Boa escalabilidade (MPP) Principais otimizações no software Ótima relação custo × benefício Alta configurabilidade Baixo custo de manutenção 24 / 36 Agregado Ombrófila • Máquina com 32 nós – 14 HP E-10 Pentium III 1GHz (256MB) – 18 HP E-40 Pentium III 1.6GHz (256MB) • • Rede Fast-Ethernet chaveada Sistema Operacional Linux Switch Fast-Ethernet Máquina Hospedeira 25 / 36 Agregado Amazônia • Máquina com 34 nós (58 processadores) – cluster heterogêneo com 5 classes – – – – – • 8 Pentium IV 2.8GHz (1GB) 8 E-800 Dual Pentium III 1GHz (256MB) 8 E-60 Dual Pentium III 550MHz (256MB) 2 Itanium 2 900MHz (512MB) 8 dual Itanium 2 1.5GHz (2GB)Servidor HP E-60 Rede primária Myrinet 2000 (nós IA-32) e rede secundária Fast-Ethernet chaveada Switch Fast-Ethernet Hospedeira Switch Myrinet 26 / 36 Paderborn SCI Cluster (PSC-64) • Máquina com 32 nós – Dual Pentium II 300 MHz (2-way SMP) – 256M RAM • • • Rede primária SCI e rede secundária FastEthernet Sistema Operacional Linux 19.2 GFlops Pico Cluster Switch Fast-Ethernet Hospedeira Torus SCI 27 / 36 iCluster do HP Labs com rede Fast-Ethernet (Grenoble) 28 / 36 Exercícios 1. Comente sobre a infra-estrutura de comunicação de uma rede COW 2. Porque são chamadas de simétricas as máquinas SMPs? 3. Dê as principais características de uma máquina PVP 29 / 36 Resposta de Exercícios 1. Comente sobre a infra-estrutura de comunicação de uma rede COW A arquitetura COW (Cluster Of Workstations) é uma otimização da arquitetura NOW. Ela implementa uma rede de estações de trabalho, onde cada nó é projetado para o alto desempenho. Existem duas tendências de infra-estruturas de comunicação: (i) redes do tipo padrão (e.g. barramento Fast-Ethernet) e (ii) redes de baixa latência (e.g. chaveador). 2. Porque são chamadas de simétricas as máquinas SMPs? Porque o SO não diferencia (privilegia) um processador frente a outro. Todos têm os mesmos direitos de operação, e o acesso à memória tem a mesma latência para qualquer processador. 3. Dê as principais características de uma máquina PVP PVP é uma máquina paralela do tipo multiprocessador, composta por diversos processadores vetoriais. É bastante cara e complexa. Adequada para operações matriciais que requerem alto desempenho. A infra-estrutura de comunicação é feita normalmente com matriz de chaveamento. É uma máquina com características UMA. 30 / 36 Exercícios 4. Discuta o problema da escalabilidade de máquinas SMPs, quando implementadas com barramentos. Qual o efeito de trocar por outra infraestrutura de comunicação? 5. Cite tendências de construção de máquinas paralelas e comente as diferenças 6. Qual a provável conseqüência indesejada de usar uma máquina NOW para cálculo de aplicações com um grão muito pequeno? 31 / 36 Resposta de Exercícios 4. Discuta o problema da escalabilidade de máquinas SMPs, quando implementadas com barramentos. Qual o efeito de trocar por outra infra-estrutura de comunicação? Barramentos são infra-estruturas de comunicação que limitam a escalabilidade de máquinas que as usam a um número em torno de 100. A troca por uma infra-estrutura de comunicação que permita uma maior escalabilidade, tal como uma rede malha, irá eliminar uma das características desta máquina que é o acesso uniforme à memória. Porém, uma matriz de chaveamento não desrespeita o modelo de acesso uniforme à memória. 5. Cite tendências de construção de máquinas paralelas e comente as diferenças Algumas tendências são as máquinas MPP e COW. MPP são máquinas compostas por muitos processadores paralelos. Máquinas COW são compostas por clusters de estações de trabalho. Ambas são do tipo multicomputador. 6. Qual a provável conseqüência indesejada de usar uma máquina NOW para cálculo de aplicações com um grão muito pequeno? Máquinas NOW não têm infra-estrutura de comunicação voltada para alto desempenho. Como grão pequeno implica que existam muitas trocas de mensagem, pois a aplicação deve estar presente em mais de um grão. A situação exposta implica em aumento do tempo de execução da aplicação. 32 / 36 Exercícios 7. Na classificação de máquinas paralelas e distribuídas, como se encaixam as estações de trabalho? Por quê? 8. Porque redes de estação de trabalho são classificadas como NORMA? 9. Compare uma rede NOW e uma COW com relação ao particionamento de tarefas. Qual o efeito ou sentido em uma NOW e em uma COW? 10. Qual o efeito de criar um endereçamento distinto para cada processador de uma máquina SMP? 11. Diga uma aplicação que acredite ser adequada para utilizar uma máquina do tipo NOW 12. Qual a conseqüência prática de substituir os barramentos por uma infraestrutura de comunicação hierárquica para as máquinas SMP? Obs.: a infra-estrutura hierárquica força que os tempos de acesso aos processadores sejam distintos 33 / 36 Exercícios 13. (ENADE 2005 - questão 42) Duas possibilidades para a construção de sistemas com múltiplos processadores são: processadores idênticos com um único espaço de endereçamento interligados por um barramento único (SMP); e máquinas monoprocessadas conectadas por uma rede (cluster). Com relação a esses sistemas, assinale a opção correta. i. A comunicação entre processadores de um cluster é, potencialmente, muito mais rápida que a comunicação entre processadores de um sistema SMP, pois redes atuais possuem taxa de transmissão da ordem de Gbits/s, enquanto as melhores memórias operam somente com freqüências da ordem de centenas de megahertz. ii. Comunicação entre processos pode ser implementada de forma muito mais eficiente em um cluster que em um sistema SMP, pois, nesse último, todos os processos precisam compartilhar os mesmos dispositivos de entrada e saída. iii. Em um sistema SMP, é mais simples substituir um processador defeituoso, pois, em um cluster, toda a rede de comunicação deve ser desabilitada para que a troca seja efetuada sem prejudicar a troca de mensagens entre os processos. iv. Alocação de memória para processos é muito mais simples em um cluster, pois cada processador executa um único processo na sua memória exclusiva e, dessa forma, não existe o problema de distribuição de processos no espaço de endereçamento único da máquina SMP. v. Em um cluster, o custo da escalabilidade é muito menor, pois, para a interconexão entre as máquinas, podem ser utilizados equipamentos comuns usados em uma rede local de computadores, ao passo que um sistema SMP exige conexões extras no barramento e gabinetes especiais. 34 / 36 Resposta de Exercícios 13. (ENADE 2005 - questão 42) Duas possibilidades para a construção de sistemas com múltiplos processadores são: processadores idênticos com um único espaço de endereçamento interligados por um barramento único (SMP); e máquinas monoprocessadas conectadas por uma rede (cluster). Com relação a esses sistemas, assinale a opção correta. i. A comunicação entre processadores de um cluster é, potencialmente, muito mais rápida que a comunicação entre processadores de um sistema SMP, pois redes atuais possuem taxa de transmissão da ordem de Gbits/s, enquanto as melhores memórias operam somente com freqüências da ordem de centenas de megahertz. ii. Comunicação entre processos pode ser implementada de forma muito mais eficiente em um cluster que em um sistema SMP, pois, nesse último, todos os processos precisam compartilhar os mesmos dispositivos de entrada e saída. iii. Em um sistema SMP, é mais simples substituir um processador defeituoso, pois, em um cluster, toda a rede de comunicação deve ser desabilitada para que a troca seja efetuada sem prejudicar a troca de mensagens entre os processos. iv. Alocação de memória para processos é muito mais simples em um cluster, pois cada processador executa um único processo na sua memória exclusiva e, dessa forma, não existe o problema de distribuição de processos no espaço de endereçamento único da máquina SMP. v. Em um cluster, o custo da escalabilidade é muito menor, pois, para a interconexão entre as máquinas, podem ser utilizados equipamentos comuns usados em uma rede local de computadores, ao passo que um sistema SMP exige conexões extras no barramento e gabinetes especiais. 35 / 36 Exercícios 14. Foi construída uma máquina com 500 estações de trabalho dedicadas ao processamento paralelo e interligadas por uma rede de alta velocidade. A máquina é gerenciada por um SO distribuído, sendo usada por diversas aplicações paralelas. Diga como esta é classificada em relação à classificação de Flynn e em relação ao compartilhamento de memória. Diga, também, como esta se encaixa na tendência de construção de máquinas modernas. 15. Suponha agora a construção de máquinas com 16 processadores Pentium IV, interligados a uma memória central através de um barramento. Como estas seriam classificadas? 36 / 36 Resposta de Exercícios 14. Foi construída uma máquina com 500 estações de trabalho dedicadas ao processamento paralelo e interligadas por uma rede de alta velocidade. A máquina é gerenciada por um SO distribuído, sendo usada por diversas aplicações paralelas. Diga como esta é classificada em relação à classificação de Flynn e em relação ao compartilhamento de memória. Diga, também, como esta se encaixa na tendência de construção de máquinas modernas. MIMD, NORMA, COW 15. Suponha agora a construção de máquinas com 16 processadores Pentium IV, interligados a uma memória central através de um barramento. Como estas seriam classificadas? MIMD, UMA, SMP