Tópicos em redes e
sistemas distribuídos B
Carlos Oberdan Rolim
Ciência da Computação
Arquiteturas paralelas e
distribuídas
Arquiteturas paralelas e distribuídas
Cray T90
Cray SX6
Arquiteturas paralelas e distribuídas
Multiprocessadores simétricos (SMP)
Múltiplos processadores similares conectados entre si e à
memória por um barramento ou alguma outra forma de circuito de
conexão interno
Compartilhamento total
Sistema operacional controla tudo
P/C
P/C
P/C
P/C
Barramento / Matriz de chaveamento
MC
MC
MC
Baixa escalabilidade – gargalo no barramento.
Exemplos: IBM R50, SGI Power Challenge, SUN Ultra Enterprise 10000,
HP/Convex Exemplar X-Class, DEC Alpha Server 8400
Arquiteturas paralelas e distribuídas
HP Integrity rx8620-32 Server
Intel Quad Xeon 7400 Server
Arquiteturas paralelas e distribuídas
Máquinas maciçamente paralelas (MPP)
P/C
P/C
P/C
M
M
M
Rede de interconexão de baixa latência
Rede de interconexão proprietária.
Comunicação através de troca de mensagens.
Exemplos: Intel Paragon, Connection Machine CM-5, IBM SP-2
Arquiteturas paralelas e distribuídas
Intel Paragon
IBM SP2
Connection Machine CM-5
Arquiteturas paralelas e distribuídas
Blue Gene da IBM
Arquiteturas paralelas e distribuídas
Máquinas com memória compartilhada distribuída (DSM)
P/C
P/C
P/C
M
M
M
Rede de interconexão de baixa latência
NUMA / NORMA
Os processadores podem acessar todas as memórias. (único espaço de endereçamento)
DSM implementado em SW, HW ou misto.
Exemplos: Stanford DASH, Cray T3D, estações de trabalho rodando TreadMarks
Arquiteturas paralelas e distribuídas
Cray T3D
Clusters - Motivação
Processamento de alto desempenho
⌐ milhares de aplicações ao mesmo tempo
⌐ tarefas paralelas
Ao longo dos anos uso de arquiteturas massivamente paralelas
(MPP) e de memória compartilhada (SMP)
Custo elevado desses tipos de máquinas
Computadores pessoais custo menor
O que é cluster ?
“Cluster é um sistema distribuído que consiste na coleção de
computadores interconectados, usados como um sistema único” (Gregory F.
Pfister – In search of cluster)
Sistema de processamento de dados paralelo ou distribuído
Agregar computadores pessoais
Computadores conectados de forma cooperativa
Visão de sistema único para usuários e aplicações
Execução de aplicações específicas de uma organização
Arquitetura de cluster
Parallel Applications
Parallel Applications
Parallel Applications
Sequential Applications
Sequential Applications
Sequential Applications
Parallel Programming Environment
Cluster Middleware
(Single System Image and Availability Infrastructure)
PC/Workstation
PC/Workstation
PC/Workstation
PC/Workstation
Communications
Communications
Communications
Communications
Software
Software
Software
Software
Network Interface
Hardware
Network Interface
Hardware
Network Interface
Hardware
Network Interface
Hardware
Cluster Interconnection Network/Switch
Classificação dos clusters
Limite geográfico
Métricas para
Utilização dos nodos
classificação
dos clusters
Tipo de topologia
-Pequena (sala, laboratório)
-Média (departamento)
-Grande (organização)
-Dedicados
-Não dedicados
-NOW (Network of Workstations)
-COW (Cluster of Workstations)
-Clumps (Cluster de SMPs)
Aplicações alvo
-Alto desempenho
-Alta disponibilidade
Tipos de nós
-Homogêneo
-Heterogêneo
Classificação dos clusters
Limite geográfico: área de atuação do cluster
Pequena (sala, laboratório)
Média (departamento)
Grande (organização)
Classificação dos clusters
Utilização dos nós: define quais políticas de gerenciamento,
segurança, alta disponibilidade, qual tipo de middleware
usar
Dedicados
Não dedicados
Classificação dos clusters
Tipo de topologia: qual hardware usar
NOW (Network of Workstations): estações de trabalho normais
COW (Cluster of Workstations): heterogêneas, usadas em aplicações específicas
Clumps (Cluster de SMPs): composto por máquinas SMP
NOW
Redes de estações de trabalho (NOW)
P/C
P/C
P/C
M
M
M
Rede padrão (Ethernet,ATM)
Compartilhamento de recursos.
Utiliza rede convencional.
Exemplos: estações de trabalho interligadas por Ethernet
NOW
COW
Máquinas agregadas (COW)
P/C
P/C
P/C
M
M
M
Rede padrão ou de alto desempenho
Aplicações paralelas, alta disponibilidade, balanceamento de carga.
Pode utilizar rede convencional ou de alto desempenho.
Otimizações em software.
Exemplos: iCluster HP Labs (Grenoble), Primergy Server do PC2 (Paderborn),
cluster Amazônia (CPAD-PUCRS/HP)
Clusters
Clusters Amazônia e Ombrófila
CPAD-PUCRS/HP
Clusters
HP i-cluster
Grenoble
Download

Arquiteturas paralelas e distribuídas