pub struct SelectionRequest {
pub require_gpu: bool,
pub require_fp16: bool,
pub require_bf16: bool,
pub require_fp8: bool,
pub require_tensor_cores: bool,
pub require_unified_memory: bool,
pub require_peer_access: bool,
pub pin: Option<BackendKind>,
}Expand description
Required-feature predicate used to filter backends during selection.
A backend is eligible only if it is available and its capabilities satisfy every requested flag. All fields default to “don’t care”.
Fields§
§require_gpu: boolRequire a GPU backend (exclude the CPU fallback from the primary pick).
require_fp16: boolRequire native FP16 compute.
require_bf16: boolRequire native BF16 compute.
require_fp8: boolRequire FP8 compute.
require_tensor_cores: boolRequire Tensor-Core / matrix units.
require_unified_memory: boolRequire unified / managed memory.
require_peer_access: boolRequire peer-to-peer device access.
pin: Option<BackendKind>If Some, only this exact backend kind is acceptable.
Implementations§
Source§impl SelectionRequest
impl SelectionRequest
Sourcepub const fn require_gpu() -> Self
pub const fn require_gpu() -> Self
A request that demands a GPU (used by callers that must not silently fall back to the CPU reference path).
Sourcepub const fn pinned(kind: BackendKind) -> Self
pub const fn pinned(kind: BackendKind) -> Self
Pin selection to one specific backend kind.
Sourcepub fn is_satisfied_by(&self, entry: &BackendEntry) -> bool
pub fn is_satisfied_by(&self, entry: &BackendEntry) -> bool
Returns true if entry satisfies every constraint in this request.
Trait Implementations§
Source§impl Clone for SelectionRequest
impl Clone for SelectionRequest
Source§fn clone(&self) -> SelectionRequest
fn clone(&self) -> SelectionRequest
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for SelectionRequest
Source§impl Debug for SelectionRequest
impl Debug for SelectionRequest
Source§impl Default for SelectionRequest
impl Default for SelectionRequest
Source§fn default() -> SelectionRequest
fn default() -> SelectionRequest
Returns the “default value” for a type. Read more
impl Eq for SelectionRequest
Source§impl PartialEq for SelectionRequest
impl PartialEq for SelectionRequest
Source§fn eq(&self, other: &SelectionRequest) -> bool
fn eq(&self, other: &SelectionRequest) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SelectionRequest
Auto Trait Implementations§
impl Freeze for SelectionRequest
impl RefUnwindSafe for SelectionRequest
impl Send for SelectionRequest
impl Sync for SelectionRequest
impl Unpin for SelectionRequest
impl UnsafeUnpin for SelectionRequest
impl UnwindSafe for SelectionRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more