CpuSnapshot Class

Represents a snapshot of CPU information including processor name, core counts, frequencies, and hardware intrinsics support.

public sealed class CpuSnapshot

Example

Get CPU information:

var snapshot = new ContextSnapshotBuilder().AddCpu().BuildSnapshot();
var cpuInfo = Assert.IsType<CpuSnapshot>(snapshot["CPU"]);

// A value is null when it is not available on the current platform
Assert.NotEqual("", cpuInfo.ProcessorName);
Assert.True(cpuInfo.PhysicalCoreCount is null or > 0);
Assert.True(cpuInfo.LogicalCoreCount is null or > 0);
Assert.True(cpuInfo.MaxFrequency is null or > 0); // in hertz

Properties

NameDescription
HardwareIntrinsics
LogicalCoreCount
MaxFrequency
MinFrequency
NominalFrequency
PhysicalCoreCount
PhysicalProcessorCount
ProcessorName

HardwareIntrinsics

CpuSnapshot.cs
public HardwareIntrinsicsSnapshot? HardwareIntrinsics { get; }

No documentation is available.

LogicalCoreCount

CpuSnapshot.cs
public int? LogicalCoreCount { get; }

Property value

int?

No documentation is available.

MaxFrequency

CpuSnapshot.cs
public double? MaxFrequency { get; }

Property value

double?

No documentation is available.

MinFrequency

CpuSnapshot.cs
public double? MinFrequency { get; }

Property value

double?

No documentation is available.

NominalFrequency

CpuSnapshot.cs
public double? NominalFrequency { get; }

Property value

double?

No documentation is available.

PhysicalCoreCount

CpuSnapshot.cs
public int? PhysicalCoreCount { get; }

Property value

int?

No documentation is available.

PhysicalProcessorCount

CpuSnapshot.cs
public int? PhysicalProcessorCount { get; }

Property value

int?

No documentation is available.

ProcessorName

CpuSnapshot.cs
public string? ProcessorName { get; }

Property value

string?

No documentation is available.