NUMA (nicht einheitlicher Speicherzugriff)
NUMA (nicht einheitlicher Speicherzugriff) ist eine Methode zum Konfigurieren eines Clusters von Mikroprozessoren in einem Multiprozessorsystem, sodass sie Speicher lokal gemeinsam nutzen können, wodurch die Leistung und die Erweiterbarkeit des Systems verbessert werden. NUMA wird in einem symmetrischen Multiprozessorsystem (SMP) verwendet. Ein SMP-System ist ein „eng gekoppeltes“ „Share Everything“ -System, bei dem mehrere Prozessoren, die unter einem einzigen Betriebssystem arbeiten, über einen gemeinsamen Bus- oder „Interconnect“ -Pfad auf den Speicher des anderen zugreifen. Normalerweise besteht eine Einschränkung von SMP darin, dass beim Hinzufügen von Mikroprozessoren der gemeinsame Bus oder Datenpfad überlastet wird und zu einem Leistungsengpass wird. NUMA fügt eine mittlere Speicherebene hinzu, die von einigen Mikroprozessoren gemeinsam genutzt wird, sodass nicht alle Datenzugriffe auf dem Hauptbus ausgeführt werden müssen.
NUMA kann als „Cluster in a Box“ betrachtet werden.“ Der Cluster besteht typischerweise aus vier Mikroprozessoren (z. B. vier Pentium-Mikroprozessoren), die auf einem lokalen Bus (z. B. einem Peripheriekomponenten-Verbindungsbus) mit einem gemeinsam genutzten Speicher (als „L3-Cache “ bezeichnet) verbunden sind „) auf einem einzelnen Motherboard (es könnte wahrscheinlich auch als Karte bezeichnet werden ). Diese Einheit kann zu ähnlichen Einheiten hinzugefügt werden, um ein symmetrisches Multiprozessorsystem zu bilden, in dem ein gemeinsamer SMP-Bus alle Cluster miteinander verbindet. Ein solches System enthält typischerweise 16 bis 256 Mikroprozessoren. Für ein Anwendungsprogramm, das in einem SMP-System ausgeführt wird, sehen alle einzelnen Prozessorspeicher wie ein einziger Speicher aus.
Wenn ein Prozessor an einer bestimmten Speicheradresse nach Daten sucht, sucht er zuerst im L1-Cache auf dem Mikroprozessor selbst, dann auf einem etwas größeren L1- und L2-Cache-Chip in der Nähe und dann auf einer dritten Cache-Ebene, die die NUMA-Konfiguration bereitstellt, bevor er die Daten im „Remote-Speicher“ sucht, der sich in der Nähe der anderen Mikroprozessoren befindet. Jeder dieser Cluster wird von NUMA als „Knoten“ im Interconnection-Netzwerk betrachtet. NUMA verwaltet eine hierarchische Ansicht der Daten auf allen Knoten.
Daten werden auf dem Bus zwischen den Clustern eines NUMA SMP-Systems mithilfe der SCI-Technologie (Scalable Coherent Interface) verschoben. SCI koordiniert die sogenannte „Cache-Kohärenz“ oder Konsistenz über die Knoten der mehreren Cluster hinweg.
SMP- und NUMA-Systeme werden typischerweise für Anwendungen wie Data Mining und Entscheidungsunterstützungssysteme verwendet, bei denen die Verarbeitung auf eine Reihe von Prozessoren verteilt werden kann, die gemeinsam an einer gemeinsamen Datenbank arbeiten. Sequent, Data General und NCR gehören zu den Unternehmen, die NUMA SMP-Systeme herstellen.