pub struct TuningConfig {
pub block_m: usize,
pub block_n: usize,
pub block_k: usize,
pub l2_block: usize,
pub simd_level: SimdLevel,
pub parallel: bool,
pub par_threshold: usize,
}Expand description
Tuning configuration for matrix operations.
Fields§
§block_m: usizeBlock size for M dimension in GEMM.
block_n: usizeBlock size for N dimension in GEMM.
block_k: usizeBlock size for K dimension in GEMM.
l2_block: usizeBlock size for Level 2 operations.
simd_level: SimdLevelSIMD level to use.
parallel: boolWhether to use parallel execution.
par_threshold: usizeThreshold for parallelization (matrix size).
Implementations§
Source§impl TuningConfig
impl TuningConfig
Sourcepub fn for_dimensions(m: usize, n: usize, _k: usize) -> Self
pub fn for_dimensions(m: usize, n: usize, _k: usize) -> Self
Creates a tuning configuration optimized for the given matrix dimensions.
This uses heuristics based on cache sizes and SIMD width to determine optimal block sizes.
Sourcepub fn gemv_block_size(&self) -> usize
pub fn gemv_block_size(&self) -> usize
Returns the optimal block size for GEMV operations.
Sourcepub fn factorization_panel_width(&self) -> usize
pub fn factorization_panel_width(&self) -> usize
Returns the optimal panel width for factorizations.
Trait Implementations§
Source§impl Clone for TuningConfig
impl Clone for TuningConfig
Source§fn clone(&self) -> TuningConfig
fn clone(&self) -> TuningConfig
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 TuningConfig
impl Debug for TuningConfig
Source§impl Default for TuningConfig
impl Default for TuningConfig
impl Copy for TuningConfig
Auto Trait Implementations§
impl Freeze for TuningConfig
impl RefUnwindSafe for TuningConfig
impl Send for TuningConfig
impl Sync for TuningConfig
impl Unpin for TuningConfig
impl UnwindSafe for TuningConfig
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