pub enum TileOp {
LoadShared {
src: String,
tile_size: (u32, u32),
},
Mma {
a: String,
b: String,
c: String,
},
Elementwise {
op: ElementwiseOp,
operands: Vec<String>,
output: Option<String>,
},
StoreShared {
dst: String,
},
Barrier,
Reduce {
kind: ReduceKind,
input: String,
output: String,
},
}Expand description
Tile operation in compute shader
Variants§
Load tile from global to shared memory
Mma
Matrix multiply accumulate (tensor core pattern)
Elementwise
Element-wise operation
Fields
§
op: ElementwiseOpOperation type
Store tile from shared to global memory
Barrier
Synchronization barrier
Reduce
Reduction operation (sum, max, min)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TileOp
impl RefUnwindSafe for TileOp
impl Send for TileOp
impl Sync for TileOp
impl Unpin for TileOp
impl UnsafeUnpin for TileOp
impl UnwindSafe for TileOp
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more