Table of Contents

Class DeviceSelectionCriteria

Namespace
Orleans.GpuBridge.Abstractions.Models
Assembly
Orleans.GpuBridge.Abstractions.dll

Criteria for selecting a compute device

[GenerateSerializer]
public sealed record DeviceSelectionCriteria : IEquatable<DeviceSelectionCriteria>
Inheritance
DeviceSelectionCriteria
Implements
Inherited Members

Properties

AllowCpuFallback

Allow CPU fallback if no GPU available

[Id(8)]
public bool AllowCpuFallback { get; init; }

Property Value

bool

DeviceIndexHint

Device index hint (-1 for any)

[Id(7)]
public int DeviceIndexHint { get; init; }

Property Value

int

ExcludeDevices

Device IDs to exclude

[Id(11)]
public List<int> ExcludeDevices { get; init; }

Property Value

List<int>

MaxQueueDepth

Maximum allowed queue depth

[Id(3)]
public int MaxQueueDepth { get; init; }

Property Value

int

MinComputeUnits

Minimum compute units required

[Id(10)]
public int MinComputeUnits { get; init; }

Property Value

int

MinMemoryBytes

Minimum memory size in bytes (legacy property)

[Id(9)]
public long MinMemoryBytes { get; init; }

Property Value

long

MinimumComputeCapability

Minimum compute capability (for CUDA devices)

[Id(2)]
public Version? MinimumComputeCapability { get; init; }

Property Value

Version

MinimumMemoryBytes

Minimum required memory in bytes

[Id(1)]
public long MinimumMemoryBytes { get; init; }

Property Value

long

PreferHighThroughput

Prefer high-throughput devices

[Id(5)]
public bool PreferHighThroughput { get; init; }

Property Value

bool

PreferHighestPerformance

Prefer highest performance devices

[Id(12)]
public bool PreferHighestPerformance { get; init; }

Property Value

bool

PreferLowLatency

Prefer low-latency devices

[Id(4)]
public bool PreferLowLatency { get; init; }

Property Value

bool

PreferredType

Preferred device type (null for any)

[Id(0)]
public DeviceType? PreferredType { get; init; }

Property Value

DeviceType?

RequireUnifiedMemory

Require unified memory support

[Id(13)]
public bool RequireUnifiedMemory { get; init; }

Property Value

bool

RequiredFeature

Required feature for device selection

[Id(14)]
public DeviceFeatures RequiredFeature { get; init; }

Property Value

DeviceFeatures

RequiredFeatures

Required device features

[Id(6)]
public DeviceFeatures RequiredFeatures { get; init; }

Property Value

DeviceFeatures