Différence entre UMA et NUMA

Auteur: Laura McKinney
Date De Création: 2 Avril 2021
Date De Mise À Jour: 5 Peut 2024
Anonim
Différence entre UMA et NUMA - La Technologie
Différence entre UMA et NUMA - La Technologie

Contenu


Les multiprocesseurs peuvent être divisés en trois catégories de modèles de mémoire partagée: UMA (accès mémoire uniforme), NUMA (accès mémoire non uniforme) et COMA (accès mémoire en mémoire cache). Les modèles sont différenciés en fonction de la répartition de la mémoire et des ressources matérielles. Dans le modèle UMA, la mémoire physique est partagée de manière égale entre les processeurs, qui ont également une latence égale pour chaque mot mémoire, tandis que NUMA fournit un temps d'accès variable aux processeurs pour accéder à la mémoire.

La bande passante utilisée dans la mémoire UMA pour la mémoire est restreinte car elle utilise un contrôleur de mémoire unique. L’avènement des machines NUMA a pour principal objectif d’améliorer la bande passante disponible de la mémoire en utilisant plusieurs contrôleurs de mémoire.


    1. Tableau de comparaison
    2. Définition
    3. Différences Clés
    4. Conclusion

Tableau de comparaison

Base de comparaisonUMANUMA
De baseUtilise un seul contrôleur de mémoireContrôleur de mémoire multiple
Type de bus utiliséSimple, multiple et barre transversale.Arbre et hiérarchique
Temps d'accès mémoireÉgalModifie en fonction de la distance du microprocesseur.
Convient àApplications générales et à temps partagéApplications en temps réel et critiques
La vitesseRalentissezplus rapide
Bande passanteLimitéPlus que UMA.


Définition de l'UMA

UMA (Uniform Memory Access) Le système est une architecture de mémoire partagée pour les multiprocesseurs. Dans ce modèle, une seule mémoire est utilisée et tous les processeurs accèdent au système multiprocesseur à l'aide du réseau d'interconnexion. Chaque processeur a un temps d'accès en mémoire (latence) et une vitesse d'accès égaux. Il peut utiliser un commutateur à bus unique, à bus multiple ou à barre transversale. Comme il offre un accès équilibré à la mémoire partagée, il est également appelé SMP (multiprocesseur symétrique) systèmes.

La conception typique du SMP est illustrée ci-dessus: chaque processeur est d'abord connecté au cache, puis le cache est lié au bus. Enfin, le bus est connecté à la mémoire. Cette architecture UMA réduit les conflits pour le bus en récupérant les instructions directement à partir du cache isolé individuel. Il fournit également une probabilité égale de lecture et d'écriture à chaque processeur. Les exemples typiques du modèle UMA sont les serveurs Sun Starfire, le serveur Compaq alpha et HP v series.

Définition de NUMA

NUMA (accès mémoire non uniforme) est également un modèle multiprocesseur dans lequel chaque processeur est connecté à la mémoire dédiée. Cependant, ces petites parties de la mémoire se combinent pour créer un seul espace d'adressage. Le point principal à considérer ici est que, contrairement à UMA, le temps d'accès de la mémoire dépend de la distance à laquelle le processeur est placé, ce qui signifie que le temps d'accès à la mémoire est variable. Il permet d'accéder à n'importe quel emplacement de la mémoire en utilisant l'adresse physique.

Comme mentionné ci-dessus, l'architecture NUMA est destinée à augmenter la bande passante disponible dans la mémoire et pour laquelle elle utilise plusieurs contrôleurs de mémoire. Il combine de nombreux noyaux de machines dans “noeuds”Où chaque cœur a un contrôleur de mémoire. Pour accéder à la mémoire locale d'une machine NUMA, le noyau récupère la mémoire gérée par le contrôleur de mémoire par son noeud. Tout en accédant à la mémoire distante gérée par l’autre contrôleur de mémoire, le noyau reçoit la demande de mémoire via les liens d’interconnexion.

L’architecture NUMA utilise l’arborescence et les réseaux de bus hiérarchiques pour interconnecter les blocs de mémoire et les processeurs. BBN, TC-2000, SGI Origin 3000, Cray sont quelques exemples d’architecture NUMA.

  1. Le modèle UMA (mémoire partagée) utilise un ou deux contrôleurs de mémoire. Par contre, NUMA peut avoir plusieurs contrôleurs de mémoire pour accéder à la mémoire.
  2. Les bus simples, multiples et crossbar sont utilisés dans l'architecture UMA. À l'inverse, NUMA utilise des types de bus et de connexions réseau hiérarchiques et arborescents.
  3. En UMA, le temps d'accès en mémoire de chaque processeur est le même, alors que dans NUMA, le temps d'accès en mémoire change en fonction de la distance entre la mémoire et le processeur.
  4. Les applications d'usage général et à temps partagé conviennent aux machines UMA. En revanche, l'application appropriée pour NUMA est centrée en temps réel et critique.
  5. Les systèmes parallèles basés sur UMA fonctionnent plus lentement que les systèmes NUMA.
  6. En ce qui concerne la bande passante UMA, la bande passante est limitée. Au contraire, NUMA a une bande passante supérieure à UMA.

Conclusion

L'architecture UMA fournit la même latence globale aux processeurs accédant à la mémoire. Ce n'est pas très utile lorsque la mémoire locale est accédée car la latence serait uniforme. D'autre part, dans NUMA, chaque processeur avait sa mémoire dédiée, ce qui éliminait la latence lors de l'accès à la mémoire locale. La latence change à mesure que la distance entre le processeur et la mémoire change (c'est-à-dire, non uniforme). Toutefois, NUMA a amélioré les performances par rapport à l’architecture UMA.