pub enum SmAllocation {
Exact,
Full,
Ratio {
max_extra_numerator: u32,
max_extra_denominator: u32,
},
}Expand description
Controls how Streaming Multiprocessors (SMs) are assigned cubes.
Exact: Balanced allocation using GCD (e.g., 120 cubes, 16 SMs → 4 SMs × 30 cubes)Full: Uses all SMs even if it overallocates (e.g., 120 cubes, 16 SMs → 16 SMs × 8 cubes = 128 total cubes)Overallocate: Allows extra SMs within a specified fraction (e.g., up to 25% overuse)
Variants§
Exact
Balanced: uses GCD to never exceed total cubes.
Full
Uses all SMs, possibly overallocating total cubes.
Ratio
Allows overallocating SMs up to a ratio.
Implementations§
Trait Implementations§
Source§impl Clone for SmAllocation
impl Clone for SmAllocation
Source§fn clone(&self) -> SmAllocation
fn clone(&self) -> SmAllocation
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 moreSource§impl Debug for SmAllocation
impl Debug for SmAllocation
Source§impl Hash for SmAllocation
impl Hash for SmAllocation
Source§impl PartialEq for SmAllocation
impl PartialEq for SmAllocation
Source§fn eq(&self, other: &SmAllocation) -> bool
fn eq(&self, other: &SmAllocation) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for SmAllocation
impl Eq for SmAllocation
impl StructuralPartialEq for SmAllocation
Auto Trait Implementations§
impl Freeze for SmAllocation
impl RefUnwindSafe for SmAllocation
impl Send for SmAllocation
impl Sync for SmAllocation
impl Unpin for SmAllocation
impl UnsafeUnpin for SmAllocation
impl UnwindSafe for SmAllocation
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<C> CloneExpand for Cwhere
C: Clone,
impl<C> CloneExpand for Cwhere
C: Clone,
fn __expand_clone_method(&self, _scope: &mut Scope) -> C
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CompilationArg for T
impl<T> CompilationArg for T
Source§fn dynamic_cast<Arg>(&self) -> Argwhere
Arg: CompilationArg,
fn dynamic_cast<Arg>(&self) -> Argwhere
Arg: CompilationArg,
Compilation args should be the same even with different element types. However, it isn’t
possible to enforce it with the type system. So, we make the compilation args serializable
and dynamically cast them. Read more
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.