pub enum Feature {
Show 13 variants
Plane,
Cmma {
a: Elem,
b: Elem,
c: Elem,
m: u8,
k: u8,
n: u8,
},
CmmaWarpSize(i32),
Type(Elem),
AtomicFloat(AtomicFeature),
AtomicInt(AtomicFeature),
AtomicUInt(AtomicFeature),
Pipeline,
Barrier,
Tma(TmaFeature),
CubeCluster,
DynamicLineSize,
SyncPlane,
}
Expand description
Every feature that can be supported by a cube runtime.
Variants§
Plane
The plane feature enables all basic warp/subgroup operations.
Cmma
The cmma feature enables cooperative matrix-multiply and accumulate operations.
CmmaWarpSize(i32)
Type(Elem)
AtomicFloat(AtomicFeature)
Features supported for floating point atomics.
AtomicInt(AtomicFeature)
Features supported for integer atomics.
AtomicUInt(AtomicFeature)
Features supported for unsigned integer atomics.
Pipeline
The pipeline feature enables pipelined (async) operations
Barrier
The barrier feature enables barrier (async) operations
Tma(TmaFeature)
Tensor Memory Accelerator features. Minimum H100/RTX 5000 series for base set
CubeCluster
Clustered launches and intra-cluster operations like cluster shared memory
DynamicLineSize
Enables to change the line size of containers during kernel execution.
SyncPlane
Enables synchronization within a plane only
Trait Implementations§
Source§impl Ord for Feature
impl Ord for Feature
Source§impl PartialOrd for Feature
impl PartialOrd for Feature
impl Copy for Feature
impl Eq for Feature
impl StructuralPartialEq for Feature
Auto Trait Implementations§
impl Freeze for Feature
impl RefUnwindSafe for Feature
impl Send for Feature
impl Sync for Feature
impl Unpin for Feature
impl UnwindSafe for Feature
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,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.