Recomendado, 2024

Escolha Do Editor

Diferença entre UMA e NUMA

Os multiprocessadores podem ser divididos em três categorias de modelos de memória compartilhada - UMA (acesso uniforme à memória), NUMA (acesso não uniforme à memória) e COMA (acesso à memória somente de cache). Os modelos são diferenciados com base em como os recursos de memória e hardware são distribuídos. No modelo UMA, a memória física é compartilhada igualmente entre os processadores, que também têm latência igual para cada palavra de memória, enquanto o NUMA fornece tempo de acesso variável para os processadores acessarem a memória.

A largura de banda utilizada na UMA para a memória é restrita, pois usa um único controlador de memória. O principal motivo do advento das máquinas NUMA é aumentar a largura de banda disponível para a memória usando vários controladores de memória.

Gráfico de comparação

Base para comparaçãoUMANUMA
BasicUsa um único controlador de memóriaControlador de memória múltipla
Tipo de ônibus usadosÚnico, múltiplo e transversal.Árvore e hierárquica
Tempo de acesso à memóriaIgualAltera de acordo com a distância do microprocessador.
Adequado paraAplicativos de uso geral e compartilhamento de tempoAplicativos em tempo real e tempo crítico
RapidezMais devagarMais rápido
Largura de bandaLimitadoMais que UMA.

Definição de UMA

O sistema UMA (Uniform Memory Access) é uma arquitetura de memória compartilhada para os multiprocessadores. Neste modelo, uma única memória é usada e acessada por todos os processadores presentes no sistema multiprocessador com a ajuda da rede de interconexão. Cada processador possui o mesmo tempo de acesso à memória (latência) e velocidade de acesso. Pode empregar um único barramento, barramento múltiplo ou comutador de barra transversal. Como ele fornece acesso à memória compartilhada equilibrada, ele também é conhecido como sistemas SMP (multiprocessador simétrico) .

O design típico do SMP é mostrado acima, onde cada processador é conectado pela primeira vez ao cache, em seguida, o cache é vinculado ao barramento. Por fim, o barramento está conectado à memória. Essa arquitetura UMA reduz a contenção do barramento por meio da obtenção das instruções diretamente do cache isolado individual. Ele também fornece uma probabilidade igual para leitura e gravação para cada processador. Os exemplos típicos do modelo UMA são servidores Sun Starfire, servidor alfa Compaq e HP v series.

Definição de NUMA

NUMA (Non-uniform Memory Access) também é um modelo multiprocessador no qual cada processador é conectado com a memória dedicada. No entanto, essas pequenas partes da memória se combinam para criar um único espaço de endereço. O ponto principal a ser considerado aqui é que, diferentemente da UMA, o tempo de acesso da memória depende da distância em que o processador é colocado, o que significa a variação do tempo de acesso à memória. Permite o acesso a qualquer local da memória usando o endereço físico.

Como mencionado acima, a arquitetura NUMA é destinada a aumentar a largura de banda disponível para a memória e para o qual ela usa vários controladores de memória. Ele combina vários núcleos de máquina em " nós ", onde cada núcleo tem um controlador de memória. Para acessar a memória local em uma máquina NUMA, o núcleo recupera a memória gerenciada pelo controlador de memória por seu nó. Enquanto para acessar a memória remota que é manipulada pelo outro controlador de memória, o núcleo envia a solicitação de memória através dos links de interconexão.

A arquitetura NUMA usa a árvore e as redes de barramento hierárquico para interconectar os blocos de memória e os processadores. BBN, TC-2000, SGI Origin 3000, Cray são alguns dos exemplos da arquitetura NUMA.

Principais diferenças entre UMA e NUMA

  1. O modelo UMA (memória compartilhada) usa um ou dois controladores de memória. Por outro lado, o NUMA pode ter vários controladores de memória para acessar a memória.
  2. Ônibus únicos, múltiplos e crossbar são usados ​​na arquitetura UMA. Por outro lado, o NUMA usa hierarquização e tipo de árvore de barramentos e conexão de rede.
  3. Em UMA, o tempo de acesso à memória para cada processador é o mesmo, enquanto no NUMA o tempo de acesso à memória muda à medida que a distância da memória do processador muda.
  4. Aplicativos de uso geral e de compartilhamento de tempo são adequados para as máquinas UMA. Em contraste, o aplicativo apropriado para NUMA é centrado em tempo real e tempo crítico.
  5. Os sistemas paralelos baseados em UMA funcionam mais lentamente que os sistemas NUMA.
  6. Quando se trata de largura de banda UMA, tem largura de banda limitada. Pelo contrário, o NUMA tem largura de banda maior que UMA.

Conclusão

A arquitetura UMA fornece a mesma latência geral para os processadores que acessam a memória. Isso não é muito útil quando a memória local é acessada porque a latência seria uniforme. Por outro lado, em NUMA cada processador tinha sua memória dedicada que elimina a latência quando a memória local é acessada. A latência muda conforme a distância entre o processador e a memória muda (isto é, não uniforme). No entanto, o NUMA melhorou o desempenho em comparação com a arquitetura UMA.

Top