Skip to main content

MicrokernelWithArgmax

Trait MicrokernelWithArgmax 

Source
pub trait MicrokernelWithArgmax<T: TropicalWithArgmax<Index = u32>>: Microkernel<T> {
    // Required method
    unsafe fn execute_with_argmax(
        &self,
        mr: usize,
        nr: usize,
        k: usize,
        k_offset: usize,
        a: *const T::Scalar,
        b: *const T::Scalar,
        c: *mut T,
        argmax: *mut u32,
        ldc: usize,
    );
}
Expand description

Trait for microkernels that track argmax during computation.

Required Methods§

Source

unsafe fn execute_with_argmax( &self, mr: usize, nr: usize, k: usize, k_offset: usize, a: *const T::Scalar, b: *const T::Scalar, c: *mut T, argmax: *mut u32, ldc: usize, )

Execute the microkernel with argmax tracking.

Same as execute, but also fills argmax with the k-index that produced each optimal C[i,j] value.

§Safety

Same requirements as execute, plus:

  • argmax must point to the mr by nr output rectangle with row stride ldc

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§