Aula 3 Redes de Interconexão As redes de interconexão são de fundamental importância nas arquiteturas paralelas Não importa o tipo da arquitetura, todo computador paralelo necessita de uma rede de interconexão comunicação entre os seus diversos recursos de processamento, armazenamento e entrada/saída. Alguns aspectos que devem ser considerados quando se analisa o desempenho de uma rede de comunicação são: latência (tempo de trânsito de uma mensagem pela rede de comunicação) largura de Banda (quantidade de tráfego de mensagens que a rede de comunicação suporta) conectividade (quantidade de vizinhos que cada processador possui) confiabilidade (conseguida, por exemplo, através de caminhos redundantes) escalabilidade: possibilidade de acréscimo de dispositivos sem a necessidade de alteração das características da rede Topologia a interconexão direta de todos os processadores, entre si, não é viável quando o número dos mesmos aumenta padrão para definir as ligações: topologia Análise de desempenho: largura da bisseção: indica quantas mensagens simultâneas podem ser trocadas entre duas metades da rede de interconexão diâmetro: indica qual o menor número de nós intermediários que precisam ser envolvidos, para que dois processadores, o mais distantes possível, se comuniquem grau: indica o número máximo de mensagens que podem ser manipuladas simultaneamente por cada um dos processadores Array linear Sem caminhos alternativos Malha: os processadores nesta topologia tem um canal de comunicação direto com o seu vizinho variação: malha toroidal bisseção: N onde N é o número de processadores grau de nó máximo 4 facilidade de incremento de elementos
Hipercubo os tamanhos do hipercubo são definidos por potências de 2; N=2 D onde D é a dimensão do hipercubo e N o número de processadores. todos os nós podem ser identificados por um número binário escalabilidade restrita a potências de 2 diâmetro = grau de nó diâmetro cresce logaritmicamente grau de nó = dimensão do cubo (exemplo = 3) Árvore boa opção de topologia para arquiteturas paralelas diâmetro cresce de forma linear com a altura h grau de nó máximo 3 sem caminhos alternativos nó raiz é um gargalo Redes Dinâmicas redes em que as conexões são feitas sob demanda não existem ligações fixas entre os componentes mais utilizadas em multiprocessadores bloqueantes ou não bloqueantes As redes dinâmicas podem ser de três tipos: Barramento Matriz de chaveamento Rede multinível Barramento: todos os processadores estão conectados em um único barramento compartilhado necessidade de aguardar que o barramento esteja livre colisões bisseção: 1 viável para um pequeno número de processadores e/ou algoritmos com pouca comunicação
Matriz de Chaveamento (crossbar) alternativa não bloqueante de interconexão escalabilidade fica limitada apenas pelos aspectos econômicos Redes Multinivel A idéia básica é a ligação de pequenas matrizes de chaveamento em vários níveis consecutivos e conectá-las tenta reduzir a probabilidade de conflitos entre conexões de diferentes pares As matrizes chaveadoras presentes na maioria das redes multinível têm tamanho 2 2 e permitem no mínimo 2 e, na maioria das vezes, 4 posições de chaveamento Nessa rede, existe apenas um caminho possível entre uma entrada e uma saída Sendo assim, a escolha do caminho é muito eficiente e pode ser feita de forma descentralizada Roteamento de pacotes É muito comum que na construção de máquinas paralelas, por motivos de custo, sejam utilizadas redes de interconexão que não possuem ligações diretas entre todos os componentes de um sistema Sendo assim, uma mensagem, para chegar ao seu destino, pode precisar trafegar por nós intermediários É dado o nome de roteamento ao procedimento de condução de uma mensagem, através de nós intermediários, até seu destino Existem duas formas básicas de conduzir uma mensagem ao seu nó destino: Chaveamento de circuito Chaveamento de pacotes Chaveamento de circuito Estabelece-se inicialmente um caminho fixo da origem ao destino, e só depois são enviadas todas as mensagens
usada por poucas máquinas paralelas, pois a comunicação entre dois nós tem pouca duração Chaveamento de pacotes não existe caminho pré-definido, mas cada mensagem decide, a cada nó, qual a direção que irá seguir na rede isso elimina o custo inicial de estabelecimento de circuito, mas embute um custo adicional para o roteamento de cada mensagem em cada um dos nós visitados estabelecimento dinâmico do caminho reagem mais rapidamente a congestionamentos e falhas na rede Política de Roteamento Store-and-forward: pacote seja dividido em células, as quais serão transferidas a cada ciclo de comunicação da rede. todas as células de um pacote devem ser recebidas por um nó intermediário para que o pacote comece a ser repassado para o nó seguinte Cut-through: semelhante a um pipeline tão logo uma célula seja recebida por um nó intermediário, ela pode ser repassada para o nó seguinte diferentes células de um pacote circulam simultaneamente por diferentes nós da rede de conexão Tecnologias de Rede De acordo com o top 500, as principais tecnologias de rede utilizadas em arquiteturas paralelas são Gigabit Ethernet 42.60 % Myrinet 15.80 % Infiniband 15.60 % Gigabit Ethernet extensão dos padrões 10 Mbps Ethernet e 100 Mbps Fast Ethernet para interconexão em redes surgiu da necessidade criada pelo aumento da largura de banda nas "pontas"das redes (ex.: servidores e estações de trabalho) baixo custo Myrinet Desenvolvida pela Myricom portas e interfaces full-duplex alcançando 1.28 Gb/s para cada link; controle de fluxo, de erro, e monitoramento contínuo dos links; baixa latência, switches crossbar com monitoramento para aplicação de alta disponibilidade; suporte a qualquer configuração de topologia; latência: 13 a 21 us Infiniband surgiu devido à necessidade de se melhorar o desempenho dos dispositivos de E/S e das comunicações, que surgiu juntamente com o aumento da capacidade de processamento dos processadores. utiliza uma estrutura hierárquica, com comunicação do tipo ponto-a-ponto. Nessa abordagem, todo nó pode ser o iniciador de um canal para qualquer outro. Vantagens: baixa latênca e largura de banda (1,3 us e 2,5Gb/s)
Exercícios 1. O que significa bloqueante, no contexto de redes de interconexão? 2. Mostre que a rede abaixo é bloqueante fixando um caminho e mostrando outro que não podem ser utilizado ao mesmo tempo (considerando chaveamento de circuito). 3. Desenhe uma rede estática para interligar 7 processadores que possuam grau 4.