ITopologyNode-Struktur
Eine Schnittstelle für einen vom Ressourcen-Manager definierten Topologieknoten. Ein Knoten enthält mindestens eine Ausführungsressource.
Syntax
struct ITopologyNode;
Member
Öffentliche Methoden
Name | Beschreibung |
---|---|
ITopologyNode::GetExecutionResourceCount | Gibt die Anzahl der Ausführungsressourcen zurück, die unter diesem Knoten gruppiert sind. |
ITopologyNode::GetFirstExecutionResource | Gibt die erste Ausführungsressource zurück, die unter diesem Knoten in der Enumerationsreihenfolge gruppiert ist. |
ITopologyNode::GetId | Gibt den eindeutigen Bezeichner des Ressourcen-Managers für diesen Knoten zurück. |
ITopologyNode::GetNext | Gibt eine Schnittstelle zum nächsten Topologieknoten in Enumerationsreihenfolge zurück. |
ITopologyNode::GetNumaNode | Gibt die von Windows zugewiesene NUMA-Knotenzahl zurück, zu der dieser Ressource-Manager-Knoten gehört. |
Hinweise
Diese Schnittstelle wird in der Regel verwendet, um die Topologie des Systems zu durchlaufen, wie vom Ressourcen-Manager beobachtet.
Vererbungshierarchie
ITopologyNode
Anforderungen
Kopfzeile: concrtrm.h
Namespace: Parallelität
ITopologyNode::GetExecutionResourceCount-Methode
Gibt die Anzahl der Ausführungsressourcen zurück, die unter diesem Knoten gruppiert sind.
virtual unsigned int GetExecutionResourceCount() const = 0;
Rückgabewert
Die Anzahl der Ausführungsressourcen, die unter diesem Knoten gruppiert sind.
ITopologyNode::GetFirstExecutionResource-Methode
Gibt die erste Ausführungsressource zurück, die unter diesem Knoten in der Enumerationsreihenfolge gruppiert ist.
virtual ITopologyExecutionResource *GetFirstExecutionResource() const = 0;
Rückgabewert
Die erste Ausführungsressource, die in der Enumerationsreihenfolge unter diesem Knoten gruppiert ist.
ITopologyNode::GetId-Methode
Gibt den eindeutigen Bezeichner des Ressourcen-Managers für diesen Knoten zurück.
virtual unsigned int GetId() const = 0;
Rückgabewert
Der eindeutige Bezeichner des Ressourcen-Managers für diesen Knoten.
Hinweise
Die Parallelitäts-Runtime stellt Hardwarethreads auf dem System in Gruppen von Prozessorknoten dar. Knoten werden in der Regel von der Hardwaretopologie des Systems abgeleitet. Beispielsweise gehören alle Prozessoren auf einem bestimmten Socket oder einem bestimmten NUMA-Knoten zum gleichen Prozessorknoten. Der Ressourcen-Manager weist diesen Knoten eindeutige Bezeichner zu, beginnend mit 0
bis zu und einschließlich nodeCount - 1
, wobei nodeCount
die Gesamtanzahl der Prozessorknoten im System darstellt.
Die Anzahl der Knoten kann aus der Funktion GetProcessorNodeCount abgerufen werden.
ITopologyNode::GetNext-Methode
Gibt eine Schnittstelle zum nächsten Topologieknoten in Enumerationsreihenfolge zurück.
virtual ITopologyNode *GetNext() const = 0;
Rückgabewert
Eine Schnittstelle zum nächsten Knoten in Enumerationsreihenfolge. Wenn keine weiteren Knoten in der Enumerationsreihenfolge der Systemtopologie vorhanden sind, gibt diese Methode den Wert NULL
zurück.
ITopologyNode::GetNumaNode-Methode
Gibt die von Windows zugewiesene NUMA-Knotenzahl zurück, zu der dieser Ressource-Manager-Knoten gehört.
virtual unsigned long GetNumaNode() const = 0;
Rückgabewert
Die von Windows zugewiesene NUMA-Knotenzahl, zu der dieser Ressource-Manager-Knoten gehört.
Hinweise
Ein Threadproxy, der auf einem virtuellen Prozessorstamm ausgeführt wird, der zu diesem Knoten gehört, verfügt über Affinität zu mindestens der NUMA-Knotenebene für den NUMA-Knoten, der von dieser Methode zurückgegeben wird.