#[non_exhaustive]pub enum GpuExtensionCapability {
CubeClKernel,
NativeModule,
RuntimeCompilation,
RawStream,
SameDeviceAsyncCopy,
PeerCopy,
}Expand description
Capability a GPU extension may query before using a provider-specific path.
CudaEngine::supports reports
whether the capability is plausibly available on the current session. This is
orthogonal to the primitive OperationCapability
matrix: extension capabilities describe what the extension seam itself can
do, not which tensor operations the backend implements.
§Examples
use tenferro_gpu::cuda::GpuExtensionCapability;
let capability = GpuExtensionCapability::RawStream;
assert!(matches!(capability, GpuExtensionCapability::RawStream));Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
CubeClKernel
Launch external kernels through the CubeCL client.
NativeModule
Load native (PTX/CUBIN/SPIR-V) module artifacts.
RuntimeCompilation
Compile kernel source at runtime (NVRTC / shader compiler).
RawStream
Borrow a raw provider stream for library interop.
SameDeviceAsyncCopy
Asynchronous same-device copy across runtime/domain boundaries.
PeerCopy
Directional peer-to-peer copy between devices.
Trait Implementations§
Source§impl Clone for GpuExtensionCapability
impl Clone for GpuExtensionCapability
Source§fn clone(&self) -> GpuExtensionCapability
fn clone(&self) -> GpuExtensionCapability
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 GpuExtensionCapability
Source§impl Debug for GpuExtensionCapability
impl Debug for GpuExtensionCapability
impl Eq for GpuExtensionCapability
Source§impl Hash for GpuExtensionCapability
impl Hash for GpuExtensionCapability
Source§impl PartialEq for GpuExtensionCapability
impl PartialEq for GpuExtensionCapability
impl StructuralPartialEq for GpuExtensionCapability
Auto Trait Implementations§
impl Freeze for GpuExtensionCapability
impl RefUnwindSafe for GpuExtensionCapability
impl Send for GpuExtensionCapability
impl Sync for GpuExtensionCapability
impl Unpin for GpuExtensionCapability
impl UnsafeUnpin for GpuExtensionCapability
impl UnwindSafe for GpuExtensionCapability
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more