Multiprocesseurs sont classés en trois types de modèles de mémoire partagée : UMA (Uniform Memory Access), NUMA (Non-uniform Memory Access) et COMA (Cache-only Memory Access) . Les modèles diffèrent en fonction de la manière dont les ressources mémoire et matérielles sont allouées. La mémoire physique est uniformément partagée entre les processeurs du modèle UMA, qui présente également une latence identique pour chaque mot mémoire. En revanche, NUMA donne un temps d'accès variable au CPU pour accéder à la mémoire.
Dans cet article, vous découvrirez la différence entre le UN et DANS . Mais avant de discuter des différences, vous devez connaître l’UMA et la NUMA.
trouver mon iPhone Android
Qu’est-ce que l’UMA ?
UN est une abréviation de « Accès uniforme à la mémoire » . Il s'agit d'une architecture à mémoire partagée multiprocesseur. Dans ce modèle, tous les processeurs du système multiprocesseur utilisent et accèdent à la même mémoire à l'aide du réseau d'interconnexion.
La latence et la vitesse d'accès de chacun CPU est le même. Il peut utiliser un commutateur crossbar, un commutateur de bus unique ou un commutateur de bus multiples . On l'appelle également SMP (multiprocesseur symétrique) système car il offre un accès équilibré à la mémoire partagée. Il convient aux applications à temps partagé et à usage général.
Qu’est-ce que NUMA ?
DANS est une abréviation de « Accès mémoire non uniforme » . Il s'agit également d'un modèle multiprocesseur avec une mémoire dédiée attachée à chaque CPU. Mais ces petits composants de mémoire se réunissent pour former un seul espace d’adressage. Le temps d'accès à la mémoire est déterminé par la distance entre le processeur et la mémoire, ce qui entraîne des temps d'accès à la mémoire variés. Il permet d'accéder à n'importe quel emplacement mémoire en utilisant l'adresse physique.
Le Architecture NUMA est conçu pour maximiser la bande passante mémoire disponible en utilisant plusieurs contrôleurs de mémoire. Il intègre de nombreux cœurs de machine dans 'nœuds' , chaque cœur ayant son propre contrôleur de mémoire. Dans un DANS système, le cœur reçoit la mémoire gérée par le contrôleur de mémoire par son nœud pour accéder à la mémoire locale. Le cœur transmet la demande de mémoire via les liens d'interconnexion pour accéder à la mémoire distante, que l'autre contrôleur de mémoire traite. L'architecture NUMA utilise des réseaux de bus hiérarchiques et arborescents pour connecter les blocs de mémoire et les processeurs. Quelques exemples de l'architecture NUMA sont BBN, SGI Origin 3000, TC-2000 et Cray .
Principales différences entre UMA et NUMA
Il existe diverses différences clés entre UN et DANS . Certaines des principales différences entre UMA et NUMA sont les suivantes :
- L'UMA (Uniform Memory Access) contient un seul contrôleur de mémoire. En revanche, le NUMA (Non-Uniform Memory Access) peut utiliser plusieurs contrôleurs de mémoire pour accéder à la mémoire.
- Le temps d’accès à la mémoire pour chaque CPU dans UMA est le même. En revanche, le temps d'accès à la mémoire dans NUMA varie en fonction de la distance entre la mémoire et le CPU.
- UMA est utilisé dans une variété d'applications à usage général et à temps partagé. D'autre part, le NUMA est utilisé dans des applications en temps réel et à temps critique.
- L'architecture UMA utilise des bus simples, multiples et croisés. D'autre part, le NUMA utilise des bus et des connexions réseau hiérarchiques et arborescents.
- En termes de bande passante, l'architecture UMA a une bande passante limitée. D'un autre côté, le NUMA a une bande passante plus élevée que l'UMA.
- L'accès à la mémoire dans UMA est lent. D'un autre côté, l'accès à la mémoire NUMA est plus rapide que l'accès à la mémoire UMA.
Comparaison directe entre UMA et NUMA
Ici, vous apprendrez les comparaisons directes entre UMA et NUMA. Les principales différences entre UMA et NUMA sont les suivantes :
Hiba Boukhari
Caractéristiques | UN | DANS |
---|---|---|
Formulaires complets | UMA est l'abréviation de Uniform Memory Access. | NUMA est l'abréviation de Non-Uniform Memory Access. |
Contrôleur de mémoire | Il contient un seul contrôleur de mémoire. | Il contient plusieurs contrôleurs de mémoire. |
Temps d'accès à la mémoire | Il contient un temps d’accès à la mémoire équilibré ou égal. | Son temps d'accès à la mémoire évolue en fonction de la distance du microprocesseur. |
Accès à la mémoire | Son accès à la mémoire est lent. | Son accès à la mémoire est plus rapide. |
Pertinence | Il est principalement utilisé dans les applications à temps partagé et à usage général. | Il est principalement utilisé dans les applications à temps critique et en temps réel. |
Bande passante | Sa bande passante est limitée. | Il a plus de bande passante. |
Type d'autobus | Il utilise des bus simples, multiples et croisés. | Il utilise des bus et des connexions réseau hiérarchiques et arborescents. |
Conclusion
L'architecture UMA offre la même latence globale pour les processeurs accédant à la mémoire, et elle n'est pas particulièrement utile lors de l'accès à la mémoire locale car le délai serait uniforme. En revanche, dans NUMA, chaque processeur possède sa propre mémoire dédiée, ce qui élimine les délais d'accès à la mémoire locale. Les changements de latence dépendent de la distance entre les changements de processeur et de mémoire. Cependant, par rapport à la conception UMA, NUMA offre des performances améliorées.