Click here to load reader
Upload
internet
View
124
Download
4
Embed Size (px)
Citation preview
Tópicos em redes e sistemas distribuídos B
Carlos Oberdan Rolim
Ciência da Computação
Arquiteturas computacionais
Arquiteturas 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
Classificação de Flynn
SISD (Single Instruction Single Data)
Não é um computador paralelo
Uma instrução por fluxo
Cada operação opera em um
único dado
Máquinas von Neumann tradicionais:
microcomputadores pessoais e estações de trabalho
Análogia
Classificação de Flynn
SIMD (Single Instruction Multiple Data)
Tambem uma arquitetura de von Neumann architectures mas com instruções
mais poderosas
Cada instrução pode operar em mais de um elemento
Dois tipos
Vector SIMD
Parallel SIMD
Análogia
Classificação de Flynn
Vector SIMD
Uma instrução resulta em multiplas
operações de atualização
Processamento escalar acontece
em elementos de dados simples
Examplos:
Cray 1
NEC SX-2
Fujitsu VP
Hitachi S820
Classificação de Flynn
Paralell SIMD
Arrays de processadores. Uma instrução é dada e todos os processadores
executam a mesma instrução operando em conjuntos diferentes de dados
Processadores rodam de forma sincrona
Examplos:
Connection Machine CM-2
Maspar MP-1, MP-2
Classificação de Flynn
MISD (Multiple Instruction Single Data)
!!!! Non ecziste!!!!
Não existem exemplos práticos de implementação
Classificação de Flynn
MIMD (Multiple Instruction Multiple Data)
Paralelismo alcançado pela coneão de multiplos processadores em conjunto
Inclui todas as formas de configuração com multiprocessador
Cada processador executa seu próprio conjunto de instruções independente dos outros processadores em um único fluxo de dados
Exemplos:
Multiprocessadores e multicomputadores:
nCube, Intel Paragon, Cray T3D
Análogia
Multiprocessadores e multicomputadores
Computadores Paralelos e
Distribuídos
MIMD
Multiprocessadores(memória compartilhada)
Multicomputadores(memória privada)
Barramento Switched Barramento Switched
Fortemente Acoplado Fracamente Acoplado
Sequent, Encore Ultracomputer, RP3
Estações de Trabalho
Transputer, Hypercube
Multiprocessadores
Baseado em barramento
CPUcache
CPUcache
CPUcache
Memória
Multiprocessadores
Baseado em switch
M M M M
C
C
C
C
C
C
C
C
M
M
M
M
crossbar switch omega switching network
Multicomputadores
Baseado em barramento
CPU
MemóriaLocal
Estação deTrabalho
CPU
MemóriaLocal
Estação deTrabalho
CPU
MemóriaLocal
Estação deTrabalho
Rede
Multicomputadores
Baseado em switch
grid hypercube
Compartilhamento 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)
Compartilhamento de memória
UMA
P P P P P P P P
Rede de Interconexão
M
Coerência de cache resolvida em HW.
Acesso Não-Uniforme à Memória (NUMA)
NUMADois 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)
Compartilhamento de memória
NUMA
P P P P P P P P
Rede de Interconexão
M M M M M M M M
espaço de endereçamento
Compartilhamento de memória
NORMA
Rede de Interconexão
P
M
P
M
P
M
P
M
P
M
P
M
P
M
P
M
Arquiteturas 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