Table of Contents

Class ProviderSelectionCriteria

Namespace
Orleans.GpuBridge.Abstractions.Providers
Assembly
Orleans.GpuBridge.Abstractions.dll

Criteria for selecting a backend provider

public sealed record ProviderSelectionCriteria : IEquatable<ProviderSelectionCriteria>
Inheritance
ProviderSelectionCriteria
Implements
Inherited Members

Constructors

ProviderSelectionCriteria(string?, GpuBackend?, IReadOnlyList<string>?, bool, bool, bool, bool, IReadOnlyList<string>?, bool)

Criteria for selecting a backend provider

public ProviderSelectionCriteria(string? PreferredProviderId = null, GpuBackend? PreferredBackend = null, IReadOnlyList<string>? RequiredCapabilities = null, bool RequireJitCompilation = false, bool RequireUnifiedMemory = false, bool RequireProfiling = false, bool RequireCpuDebugging = false, IReadOnlyList<string>? ExcludeProviders = null, bool PreferGpu = true)

Parameters

PreferredProviderId string
PreferredBackend GpuBackend?
RequiredCapabilities IReadOnlyList<string>
RequireJitCompilation bool
RequireUnifiedMemory bool
RequireProfiling bool
RequireCpuDebugging bool
ExcludeProviders IReadOnlyList<string>
PreferGpu bool

Properties

Default

Gets the default provider selection criteria with GPU preference enabled.

public static ProviderSelectionCriteria Default { get; }

Property Value

ProviderSelectionCriteria

ExcludeProviders

public IReadOnlyList<string>? ExcludeProviders { get; init; }

Property Value

IReadOnlyList<string>

PreferDotCompute

Gets provider selection criteria that prefers the DotCompute backend with JIT compilation.

public static ProviderSelectionCriteria PreferDotCompute { get; }

Property Value

ProviderSelectionCriteria

PreferGpu

public bool PreferGpu { get; init; }

Property Value

bool

PreferredBackend

public GpuBackend? PreferredBackend { get; init; }

Property Value

GpuBackend?

PreferredProviderId

public string? PreferredProviderId { get; init; }

Property Value

string

RequireCpuDebugging

public bool RequireCpuDebugging { get; init; }

Property Value

bool

RequireJitCompilation

public bool RequireJitCompilation { get; init; }

Property Value

bool

RequireProfiling

public bool RequireProfiling { get; init; }

Property Value

bool

RequireUnifiedMemory

public bool RequireUnifiedMemory { get; init; }

Property Value

bool

RequiredCapabilities

public IReadOnlyList<string>? RequiredCapabilities { get; init; }

Property Value

IReadOnlyList<string>