A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Modelos de Computadores Paralelos Ivan Saraiva Silva Sistemas de Processamento Paralelo.

Apresentações semelhantes


Apresentação em tema: "Modelos de Computadores Paralelos Ivan Saraiva Silva Sistemas de Processamento Paralelo."— Transcrição da apresentação:

1 Modelos de Computadores Paralelos Ivan Saraiva Silva Sistemas de Processamento Paralelo

2 Seqüencial, Vetorial, Paralelo Seqüencial Scalar Prefetch Paral. Funcional Pipeline Vetor Explicito Reg. p/ Reg Super posição Unidades SIMD MIMD Mem. p/ Mem Associative Processor Array Processor Multi computadores Multi- Processadores

3 Classificação de Flynn POME ISDS CO I/O SISD CO PE 1 ML DS PE 2 ML DS SIMD IS DS SMSM CO 1 PO DS IS I/O CO 1 PO 1 DS IS I/O MIMD

4 Relógio e CPI Sejam – O período do relógio da máquina – = 1/ a freqüência de operação –Ic o tamanho do programa em nº de instruções –CPI o nº de ciclos por instrução CPI é um parâmetro importante para medir o desempenho de uma arquitetura Normalmente calcula um CPI médio

5 Fator de Desempenho Define-se o tempo de CPU (T) necessário para executar um programa como T = Ic.CPI. Porem apenas decodificação e execução é realizada na CPU T = Ic.(p + m.k).

6 Fator de Desempenho conjunto de instruções afeta o Ic o número de ciclos na CPU (p) A tecnologia dos compiladores afeta Ic, p e m A implementação da CPU afeta o fator p. A hierarquia de memória afeta a latência da memória k.

7 Atributos do Sistemas Fatores de Desempenho Ic CPI Médio pmk Comj. de Instruções XX Compilado res XXX Proc. PC, PO XX Cache e Hierarquia XX

8 Taxa de MIPS MIPS – Milhões de Instruções por segundo Se C é o número de ciclos para execução de um programa T = Ic.CPI. = C. = C/ = (Ic.CPI)/ Tem-se ainda que: Ic.CPI = C CPI = C/Ic, então: MIPS = Ic/(T.10 6 ) = /(CPI.10 6 ) =.Ic/(CPI.10 6 )

9 Throughput - Vazão Throughput indica a vazão de um sistema (Ws) Indica quantos programas o sistemas é capaz de executar por unidade de tempo (prog/seg) A vazão da CPU é dado por: W p = /(Ic.CPI) = (MIPS.10 6 )/Ic W s < W p

10 Multiprocessadores e Multicomputadores Estes modelos se distinguem pelo uso da memória Memória comum compartilhada Memória não compartilhada, distribuída –Multiprocessadores de memória compartilhada –Multicomputadores de memória distribuída

11 Multiprocessadores Compartilhamento de memória Os modelos dependem da localização e do acesso a memória –UMA: Uniform memory access –NUMA: Nonuniform Memory Access –COMO: Cache Only Memory Access

12 Uniform Memory Access Memória física é uniformemente compartilhada por todos os processadores O acesso por qualquer processador a qualquer posição de memória é feito em tempo uniforme Pode haver cache privado Diz-se fortemente acoplado devido ao alto grau de compartilhamento

13 Uniform Memory Access Sistemas podem ser simétricos ou assimétricos –Simétricos: Processadores tem igual capacidade de rodas o Kernel do OS e fazer I/O –Assimétricos: Processadores mestres executam o OS e fazem I/O, processadores associados podem fizer I/O supervisionado

14 Uniform Memory Access P1P1 P2P2 P3P3 PnPn Sub-sistema de comunicação (crossbar, barramento, rede multi-estágio).... I/OMC 1 MC 2 MC 3....

15 Desempenho Aproximado L1: Do 10 I = 1, N L2: A(I)= B(I) + C(I) L3: 10 CONTINUE L4: SUM = 0 L5: Do 20 J = 1, N L6: SUM = SUM + A(J) L7: 2O CONTINUE Suponha que L2, L4 e L6 levam um ciclo Tempo de L1, L3, L5 e L7 são ignorados Dados carregados na memória, código na cache Ignorar outros overhead

16 Desempenho Aproximado L1: Do 10 I = 1, N L2: A(I)= B(I) + C(I) L3: 10 CONTINUE L4: SUM = 0 L5: Do 20 J = 1, N L6: SUM = SUM + A(J) L7: 2O CONTINUE Execução em 2N ciclos em seqüenciais N ciclos para o laço I N ciclos para o laço J Em um sistema Multiprocessado com M Processadores?

17 Desempenho Aproximado dividir o laço em M seções com L=M/N elementos Assumindo que a comunicação inter- processos leva k ciclos DALL k = 1, M DO 10 I= L(K-1)+1, KL A(I) = B(I) + C(I) 10 CONTINUE SUM(K) = 0 DO 20 J = 1, L SUM = SUM(K) + A(L(K-1) + J) 20 CONTINUE ENDALL

18 Desempenho Aproximado 2L ciclos para laços I e J M somas parciais são produzidas (k + 1)log 2 M ciclos são necessários para as somas Resultado produzido em: 2(N/M) + (k + 1)log 2 M Se N = 2 20 Seqüencial 2N = 2 21 ciclos MULTIPROCESSADO Se k = 200 e M = = 9800 ciclos Aceleração 214

19 Nonuniform Memory Access O tempo de acesso a posições de memória não é uniforme para todas as posições e todos os processadores Normalmente a memória compartilhada, ou parte dela, é destruída entre os processadores como memória local

20 Nonuniform Memory Access COMUNICAÇÃOCOMUNICAÇÃO P1P1 P2P2 P3P3 PnPn ML 1 ML 2 ML 3 ML n

21 Nonuniform Memory Access MGC Sub-Sistema de Comunicação Global P P P ML Cluster 1 P P P ML Cluster N.... COMUNCOMUN COMUNCOMUN

22 Nonuniform Memory Access Três padrões de acesso a memória são observados –Acesso a memória local Mais rápido –Acesso a memória global Intermediário –Acesso a memória remota Mais lento

23 Cache Only Memory Access Trata-se de um caso especial do modelo NUMA, onde as memórias distribuídas são substituídas por cache local Todas as caches formam o espaço de endereçamento global O acesso a caches remotas pode ser assistido por diretórios distribuidos

24 Cache Only Memory Access Sub-sistema de comunicação D C P D C P D C P

25 Multicomputadores de memória distribuída O sistema é composto por nós interconectados por uma rede de passagem de mensagem. Cada nó é computador autônomo Memórias locais são privadas e acessíveis apenas pelo processador local –NORMA – no-remote-memory-access

26 Multicomputadores de memória distribuída Rede com passagem de mensagem M P M P M P M P M P M P M P M P M P M P

27 Parallel Random-Access Machine - PRAM Modelo teórico de computador Usado para desenvolvimento de algoritmos e análise de escalabilidade e complexidade Modelo que desconsidera o tempo de sincronização de de acesso a memória.

28 Parallel Random-Access Machine - PRAM P1P1 P2P2 P3P3 PnPn Memória Compartilhada Endereça mento Global Centralizada ou Distribuída Fortemente Sincronizado

29 Parallel Random-Access Machine - PRAM Opera em ciclos sincronizados de: –Leitura –Computação –Escrita Especifica como operações concorrentes são executadas Quatro modelos de acesso a memória –Leitura Exclusiva (ER) –Escrita Exclusiva (EW) –Leitura Concorrente (CR) –Escrita Concorrente (CW)

30 Parallel Random-Access Machine - PRAM CRCW-PRAM: Leituras e escritas concorrentes Conflitos de escrita são resolvidos com uma política: –(Common) Todas as escritas escrevem o mesmo valor –(Arbitrary) Apenas um dos valores é escrito –(Minimum) O valor do processador de menor índeci permanece –(Priority) Os valores a serem escritos são combinados de alguma forma, soma ou máximo, por exemplo

31 Exercício Considere a execução de um programa com instruções em uma máquina operando a 40 MHz. O programa é feito com quatro tipos de instrução (ao lado) –Calcule o CPI médio –Calcule a taxa de MIPS InstruçãoCPI% do tio Aritmética e lógica 160% Load/Store c/ hit 218% Saltos412% Ref. A mem. c/ miss 810%


Carregar ppt "Modelos de Computadores Paralelos Ivan Saraiva Silva Sistemas de Processamento Paralelo."

Apresentações semelhantes


Anúncios Google