220 likes | 348 Views
Tópicos em redes e sistemas distribuídos B. Carlos Oberdan Rolim Ciência da Computação. Arquiteturas computacionais. Arquiteturas computacionais.
E N D
Tópicos em redes e sistemas distribuídos B Carlos Oberdan Rolim Ciência da Computação
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 Análogia • Máquinas von Neumann tradicionais: • microcomputadores pessoais e estações de trabalho
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 MIMD Computadores Paralelos e Distribuídos Fortemente Acoplado Fracamente Acoplado Multiprocessadores (memória compartilhada) Multicomputadores (memória privada) Barramento Switched Barramento Switched Ultracomputer, RP3 Estações de Trabalho Transputer, Hypercube Sequent, Encore
CPU CPU CPU Memória cache cache cache Multiprocessadores • Baseado em barramento
Multiprocessadores • Baseado em switch M M M M C M C C M C C M C C M C omega switching network crossbar switch
Estação de Trabalho Estação de Trabalho Estação de Trabalho Memória Local Memória Local Memória Local CPU CPU CPU Multicomputadores • Baseado em barramento Rede
Multicomputadores • Baseado em switch hypercube grid
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)
P P P P P P P P Compartilhamento de memória • UMA Rede de Interconexão M Coerência de cache resolvida em HW.
Acesso 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)
P P P P P P P P Compartilhamento de memória • NUMA espaço de endereçamento M M M M M M M M Rede de Interconexão
P P P P P P P P M M M M M M M M Rede de Interconexão Compartilhamento de memória • NORMA
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