So erstellen Sie eine NUMA-Topologie in einer Einzelsystemumgebung

So erstellen Sie eine NUMA-Topologie in einer Einzelsystemumgebung

Ich möchte wissen, ob es möglich ist, eine NUMA-Topologie (2 NUMA-Knoten sind auch in Ordnung) in einer Einzelsystemumgebung zu erstellen (ich verwende Virtualbox Ubuntu 18.04).

Wenn ich laufe $numactl -H, sehe ich Folgendes

available: 1 nodes (0)
node 0 cpus: 0 1 2 3
node 0 size: 1992 MB
node 0 free: 477 MB
node distances:
node   0 
  0:  10 

Ich habe mich gefragt, ob es wirklich möglich ist, zwei NUMA-Knoten (nur zur Simulation einer verteilten Umgebung) in einem System mit 4 Kernen zu erstellen. Oder brauche ich dafür mehr als vier Kerne?

Antwort1

Bei der Virtualisierung ist die Gesamtzahl der Kerne, die Sie allen VMs zuweisen können, nahezu unendlich. Die Anzahl der Kerne, die Sie jeder einzelnen VM zuweisen können, kann jedoch die Gesamtzahl der logischen Kerne auf dem Host nicht überschreiten.

Um es kurz zu sagen: Ja, Sie können so viele NUMA-Kerne erstellen, wie Ihr Host verarbeiten kann.

Hypervisoren verwenden einen Scheduler, um die CPU-Anweisungen jeder VM in die Warteschlange der CPU des Hosts einzureihen. Je mehr VMs Sie einrichten, desto länger wird die Warteschlange, die durch den Scheduler des Hypervisors in die CPU des Hosts geht. Das bedeutet zwar eine Verlangsamung, aber keine Ausfälle. CPUs und moderne Systemarchitekturen sind für die Handhabung von Warteschlangen ausgelegt, und das ist tatsächlich ein Grund, warum Virtualisierung so nützlich und leistungsstark ist: Sie hält die Warteschlange auf dem Host die meiste Zeit über voll und nutzt die Ressourcen des Hosts effizienter.

verwandte Informationen