Table of Contents

Class NumaNode

Namespace
DotCompute.Backends.CPU.Threading.NUMA
Assembly
DotCompute.Backends.CPU.dll

Information about a NUMA node with advanced features.

public sealed class NumaNode
Inheritance
NumaNode
Inherited Members

Properties

CacheCoherencyDomain

Gets the cache coherency domain identifier.

public int CacheCoherencyDomain { get; init; }

Property Value

int

CacheHierarchy

Gets the cache hierarchy information for this node.

public CacheHierarchy? CacheHierarchy { get; init; }

Property Value

CacheHierarchy

CpuList

Gets the list of CPU IDs in this node.

public IEnumerable<int> CpuList { get; }

Property Value

IEnumerable<int>

EstimatedMemoryBandwidth

Gets the memory bandwidth estimate for this node.

public double EstimatedMemoryBandwidth { get; }

Property Value

double

Estimated memory bandwidth in GB/s.

Remarks

This would be implemented with actual memory benchmarks in production. Rough estimate: 25 GB/s per core.

EstimatedUtilization

Gets the CPU utilization estimate for this node.

public static double EstimatedUtilization { get; }

Property Value

double

Estimated utilization between 0.0 and 1.0.

Remarks

This would be implemented with actual performance counters in production.

Group

Gets the processor group (Windows only, 0 for other platforms).

public ushort Group { get; init; }

Property Value

ushort

HugePagesInfo

Gets information about huge pages support on this node.

public HugePagesInfo? HugePagesInfo { get; init; }

Property Value

HugePagesInfo

MemorySize

Gets the memory size in bytes (0 if unknown).

public required long MemorySize { get; init; }

Property Value

long

NodeId

Gets the node ID.

public required int NodeId { get; init; }

Property Value

int

ProcessorCount

Gets the number of processors in this node.

public required int ProcessorCount { get; init; }

Property Value

int

ProcessorMask

Gets the processor affinity mask.

public required ulong ProcessorMask { get; init; }

Property Value

ulong

Methods

ContainsCpu(int)

Checks if a specific CPU belongs to this node.

public bool ContainsCpu(int cpuId)

Parameters

cpuId int

The CPU ID to check.

Returns

bool

True if the CPU belongs to this node.