Title: Toler
1Tolerância a Falhas
- Carlos Oberdan Rolim
- Ciência da Computação
2 3Arquiteturas computacionais
- Taxonomia de Flynn 1972 - se baseia nas
possÃveis unicidade e multiplicidade dos fluxos
de instruções e de dados para definir quatro
tipos de arquiteturas - SISD (Single Instruction Streams Single Data
Streams ) Fluxo único de instruções sobre um
único conjunto de dados . Computadores
sequenciais - SIMD (Single Instruction Streams Multiple Data
Streams ) Fluxo único de instruções em múltiplos
conjuntos de dados .Computadores vetoriais e
matriciais - MISD (Multiple Instruction Streams Single Data
Streams ) Fluxo múltiplo de instruções em um
único conjunto de dados .Não existem
computadores - MIMD (Multiple Instruction Streams Multiple Data
Streams ) Fluxo múltiplo de instruções sobre
múltiplos conjuntos de dados. .Arquiteturas com
múltiplos processadores independentes
4Classificação de Flynn
- SISD (Single Instruction Single Data)
Máquinas von Neumann tradicionais microcomputador
es pessoais e estações de trabalho
5Classificação de Flynn
- SIMD (Single Instruction Multiple Data)
Máquinas array CM-2, MasPar
6Classificação de Flynn
- MISD (Multiple Instruction Single Data)
Não existe!
7Classificação de Flynn
- MIMD (Multiple Instruction Multiple Data)
Multiprocessadores e multicomputadores nCube,
Intel Paragon, Cray T3D
8Multiprocessadores e multicomputadores
MIMD
Computadores Paralelos e DistribuÃdos
Fortemente Acoplado
Fracamente Acoplado
Multiprocessadores (memória compartilhada)
Multicomputadores (memória privada)
Barramento
Switched
Barramento
Switched
Sequent, Encore
Ultracomputer, RP3
Estações de Trabalho
Transputer, Hypercube
9Multiprocessadores
10Multiprocessadores
M
M
M
M
C
M
C
C
M
C
C
M
C
C
M
C
omega switching network
crossbar switch
11Multicomputadores
Rede
12Multicomputadores
hypercube
grid
13Compartilhamento de memória
- Multiprocessadores (espaço de endereçamento
único) - UMA (uniform memory access) - memória central
- NUMA (non-uniform memory access) - memória
distribuÃda - COMA (cache-only memory architecture)
- CC-NUMA (cache-coherent non-uniform memory
access) - NCC-NUMA (non-cache-coherent non-uniform memory
access) - Multicomputadores (múltiplos espaços de
endereçamento) - NORMA (non-remote memory access)
- SC-NUMA (software-coherent non-uniform memory
access) - DSM (Distributed shared memory)
14Compartilhamento de memória
Rede de Interconexão
M
Coerência de cache resolvida em HW.
15Acesso Não-Uniforme à Memória (NUMA)
- NUMA
- Dois ou mais processadores compartilham a memória
global ( um único espaço de endereçamento). Em
um sistema NUMA os processadores são organizados
em nós. Cada nó possui 1 ou mais processadores,
com sua(s) própria(s) memória(s) cache (um, dois,
ou mais nÃveis) e alguma memória principal
conectados por um barramento ou outro sistema de
interconexão. - Principal caracterÃstica de uma arquitetura NUMA
é o acesso não uniforme à memória, ou seja,
embora todos os processadores possam acessar
todas as posições de memória, os tempos de acesso
variam de acordo com o endereço acessado - Acesso local mais rápido que acesso remoto
- Dois tipos ncNUMA (NUMA sem cache) e ccNUMA
(NUMA com cache)
16Compartilhamento de memória
espaço de endereçamento
M
M
M
M
M
M
M
M
Rede de Interconexão
17Compartilhamento de memória
18Arquiteturas paralelas
- Serie N módulos conectados um após o outro.
Falha de um módulo ocasiona falha o sistema todo - Paralelo N módulos conectados entre si. O
sistema falha somente se todos os módulos falharem
19Arquiteturas paralelas
- Confiabilidade pode ser calculada através das
fórmulas - Regra Todos os módulos podem ser percorridas da
esquerda para a direita - Quando não pode percorrer todos os caminhos usar
a fórmula
Série
Paralelo
ADF funciona
BCDF não funciona
20Arquiteturas paralelas e distribuÃdas
Cray T90
Cray SX6
21Arquiteturas 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
22Arquiteturas paralelas e distribuÃdas
HP Integrity rx8620-32 Server
Intel Quad Xeon 7400 Server
23Arquiteturas 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
24Arquiteturas paralelas e distribuÃdas
Intel Paragon
IBM SP2
Connection Machine CM-5
25Arquiteturas paralelas e distribuÃdas
Blue Gene da IBM
26Arquiteturas 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
27Arquiteturas paralelas e distribuÃdas
Cray T3D
28Clusters - 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
29O 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
30Arquitetura 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)
Cluster Interconnection Network/Switch
31Classificação dos clusters
- -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)
- Alto desempenho
- Alta disponibilidade
- Homogêneo
- Heterogêneo
Limite geográfico Utilização dos nodos Tipo
de topologia Aplicações alvo Tipos de nós
Métricas para classificação dos clusters
32Classificação dos clusters
- Limite geográfico área de atuação do cluster
- Pequena (sala, laboratório)
- Média (departamento)
- Grande (organização)
33Classificaçã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
34Classificaçã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
35NOW
- 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
36NOW
37(No Transcript)
38COW
- 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)
39Clusters
Clusters Amazônia e Ombrófila CPAD-PUCRS/HP
40Clusters
HP i-cluster Grenoble