pub enum CubeCountPlanSelection {
FromProblem,
Sm {
cubes_first: bool,
num_sms: u32,
sm_usage: SmAllocation,
},
Flattened,
Spread,
}
Expand description
Front-facing configuration when crafting a MatmulSelection Allows choosing a strategy before knowing actual values
Variants§
FromProblem
X: num cubes in m, Y: num cubes in n, Z: num cubes in batch
Sm
If not cubes_first: X: num SMs, Y: num cubes per SM If cubes_first: X: num cubes per SM, Y: num SMs
Flattened
X: total cubes flattened (num SMs * num cubes per SM)
Spread
Heuristically find a balance for X, Y, Z that respects hardware limits
Trait Implementations§
Source§impl Clone for CubeCountPlanSelection
impl Clone for CubeCountPlanSelection
Source§fn clone(&self) -> CubeCountPlanSelection
fn clone(&self) -> CubeCountPlanSelection
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for CubeCountPlanSelection
impl Debug for CubeCountPlanSelection
Source§impl Default for CubeCountPlanSelection
impl Default for CubeCountPlanSelection
Source§fn default() -> CubeCountPlanSelection
fn default() -> CubeCountPlanSelection
Returns the “default value” for a type. Read more
Source§impl Hash for CubeCountPlanSelection
impl Hash for CubeCountPlanSelection
Source§impl PartialEq for CubeCountPlanSelection
impl PartialEq for CubeCountPlanSelection
impl Copy for CubeCountPlanSelection
impl Eq for CubeCountPlanSelection
impl StructuralPartialEq for CubeCountPlanSelection
Auto Trait Implementations§
impl Freeze for CubeCountPlanSelection
impl RefUnwindSafe for CubeCountPlanSelection
impl Send for CubeCountPlanSelection
impl Sync for CubeCountPlanSelection
impl Unpin for CubeCountPlanSelection
impl UnwindSafe for CubeCountPlanSelection
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> 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.