Aula 5 de Arquitetura de Computadores

Preview:

DESCRIPTION

Prof. Jorge, ICMC-USP

Citation preview

Universidade de São PauloDr. Jorge Luiz e Silva

Sistemas de Interconexão

Sistemas Multiprocessadores

Sistemas Multicomputadores

Arquiteturas Multiprocessadores

• Também conhecidos como redes de interconexão, podem ser usado: para conexão interna entre processadores, módulos de memória, e I/O; ou para formar uma rede distribuída de nós em um sistema multicomputador.

•Os sistemas de interconexão, também chamados de redes, podem ser classificados em estáticos ou dinâmicos, para sistemas multicomputador e multiprocessador respectivamente.

•Redes Estáticas – formados por conexões ponto-a-ponto, que não mudam durante a execução de programas.– Em geral temos conexões fixas a um sistema central, ou múltiplos computadores (nós) em um sistema distribuído.

• Redes Dinâmicas– Podem ser dinamicamente configurada conforme demanda de comunicação durante execução de programas.– Barramentos, comutadores crossbar, redes multi-estágio, geralmente utilizados em memória compartilhada.

•Em geral uma rede é representada por um grafo com número finito de nós ligados por linhas (links, canais) direcionadas ou não.

• O número de links incidentes a um nó é chamado de grau do nó.

• Array Linear: – Rede unidimensional onde N nós são conectados por N-1 links em uma linha.– Mais simples tecnologia de conexão.– O sistema perde em eficiência quando N se torna grande.

• Anel– Um array linear formando um circulo.– Pode ser unidirecional ou bidirecional.– É um sistema simétrico de grau 2– Aumentando o grau para 3 ou 4 temos um Anel em forma de colar.– Extremo é uma rede completamente conectada.

• Árvore e Estrela– Árvore Binária com máximo grau 3– Árvore Binária FAT - capacidade de transmissão no canal aumenta das folhas para a raiz. É uma solução para o maior problema em uma árvore binária comum, onde o gargalo do sistema é justamente na raiz, onde o transito de mensagens passa a ser maior.

• Malhas– Muito utilizados em máquinas comerciais Illiac IV, MPP, DAP, CM-2 e Intel Paragon.– Alguns modelos misturam anel com malhas. (Illiacmesh, e Torus)

•Systolic Array– Em geral utilizado para implementar algoritmos pré-definidos como multiplicação de matrizes.– Como um exemplo podemos assumir um modelo onde os nós interiores tenham grau 6.– Muito utilizado em aplicações como sinal/imagem, podendo oferecer melhor resultados de performance.

• Hipercubos

•Barramento Digital:

– Conjunto de fios e conectores para transferência de dados entre processadores, módulos de memória, e dispositivos periféricos.– Usado somente para uma transmissão por vez por um elemento (Mestre) para um elemento (Escravo)– Para múltiplas requisições, um sistema de arbitragem deve decidir quem utilizará o barramento.– Também chamado de barramento por contenção

• Módulos Comutadores– Um comutador a×b tem uma entrada a e uma saída b.– Um comutador binário corresponde a 2×2 com a=b=2.– Podemos ter várias configurações para os comutadores.– Cada entrada pode ser conectado a uma ou mais saídas, mas não muitas entradas a uma única saída.– Se mapeamos apenas um-para-um, chamamos o módulo de n×n Crossbar. Ex: 2×2 crossbar podemos conectar direto ou cruzado.

• Redes Multi-estágio– Alguns comutadores a×b são utilizados em estágios diferentes.– Conexão inter-estágio são fixas– As conexões entre entrada e saída dos comutadores podem ser dinamicamente estabelecido.

• Rede Omega:– 16 × 16 comutador (2×2) com 4 estágios– diferentes combinações podem ser obtidas para a interconexão entre as entradas e saídas.

• Redes Crossbar

– Rede de um único estágio construído com comutadores unários em cada crosspoint.

– Cada crosspoint pode determinar uma conexão dedicada entre dois pares.

• Sistemas de Interconexão – Em geral processamento paralelo demandam sistemas de interconexão que permitam comunicação rápida entre processadores, memória compartilhada, e dispositivos periféricos. – Nesse sentido são muito utilizados: Barramentos, Comutadores Crossbar, e Redes Multi-estágio.– Em uma arquitetura genérica, pode-se combinar estruturas UMA, NUMA, e COMA.– Cada processador possui uma memória própria, ligado a um cache privado, e os processadores estão interligados a uma memória compartilhada.

• Mecanismos de Controle nas Interconexões– Síncrono ou Assíncrono. Nas redes síncronas, existe um relógio global que sincroniza todas as atividades da rede. Nas redes assíncronas, mecanismos como HandShaking são utilizados para a comunicação.

• Circuitos de Comutação ou Pacotes de Comutação

– Circuitos de Comutação são caminhos definidos entre dois elementos que permanecem ligados enquanto existir mensagens.– Pacotes de Comutação, as mensagens são divididas em pacotes que percorrem a rede da fonte ao destino sem um caminho pré-definido.

• Estratégia de controle– Centralizado ou Distribuído.

– Centralizado: controlador global recebe requisições de todos os dispositivos ligados à rede e permite acesso à rede a um ou mais dispositivos.

– Distribuído: requisições são manipuladas por dispositivos locais independentemente.

• Barramentos Hierárquicos– Consiste de barramentos conectando vários sistemas em um computador.– Cada barramentos possui um número de sinais, controles, e power.

Barramento Local:– Implementados em placas de circuito impresso.– Linhas de endereços, dados, e alguns dispositivos I/O

• Backplane:– Implementados em placas de circuito impresso, onde são colocados alguns conectores para conectar placas diferentes. (Ex: VME bus)

26

27

28

29

• Rede com único estágio com comutadores unários em cada crosspoint.

• Todo processador pode enviar requisições de memória independentemente e assincronamente o que implica em conflitos no acesso mas a cada vez um é atendido.

30

• Em um sistema n×m crossbar, para cada uma das n linhas de conexões, somente um dos elementos das colunas de m pode ser conectado por vez.• Cada crosspoint tem um hardware específico para essa conexão.• Além disso, cada crosspoint possui linhas de endereços, dados, e controle, similar a um pequeno barramento.• Se n e m são grandes, o hardware começa a ficar proibitivo. 31

32

• Crossbar para grandes sistemas é proibitivo

• Memórias Multiporto resolve o problema.

• Idéia é mover todos os crosspoint e funções de comutação associados a cada módulo de memória para um controlador de memória.

33

34

• Roteamento na Rede Omega– Roteamento é definido através do endereço destino

– Quando o bit de mais alta ordem no destino é 0, um comutador 2×2 conecta a entrada na saída superior. Se 1 o comutador conecta a entrada na saída inferior.

– Supondo uma conexão da entrada 001 com a saída 011. Envolverá os comutadores A, B e C conforme descrito na figura a seguir.

35

36

• Podemos destacar duas gerações: Passado e Presente, com uma nova geração emergente. •Mecanismos fixos de interconexão• Mecanismos de comunicação por troca de mensagens.• Primeira Geração: i80286, 512Kbytes de memória local em cada nó e 8 portos de I/º• Segunda Geração: i860, ou Processadores implementados em VLSI, com diferentes quantidades de nós.• Gerações Futuras: VLSI implementando nós com vários processadores, roteadores e memórias em um único Chip.

37

38

39

• Mensagem é uma unidade lógica de comunicação entre nós.• Mensagem podem ser divididas em pacotes de comprimento fixo, ou variável.• Pacote é uma unidade básica contendo endereço destino para roteamento.• Como pacotes podem alcançar o destino assincronamente, é necessário identificar cada pacote para permitir a remontagem das mensagens.

40

41

• Pacote é a unidade de informação no mecanismo armazena e reenvia.

• Cada nó possui um buffer para um pacote.

• Um pacote é transmitido de um nó fonte para um nó destino através de nós intermediários.

42

43

• Subdividimos pacotes em pequenos sub-pacotes chamados flits.• Todos os Flits em um mesmo pacote são transmitidos em ordem em um mecanismo pipeline de recepção de flits.• Somente o header flit sabe onde o pacote deve ir, e todos os flits de dados seguem esse header flit, o que significa um caminho pré-definido.• Uma simbologia seria um trem cujo header flit é a máquina e os outros flits são os vagões.

44

45

46

Recommended