Struct tract_hir::prelude::tract_linalg::frame::mmm::MatMatMulImpl     [−][src]
pub struct MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>,  { /* fields omitted */ }Implementations
impl<K, TI> MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
impl<K, TI> MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
Trait Implementations
impl<K, TI> Debug for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
impl<K, TI> Debug for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
impl<K, TI> Display for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: MatMatMulKer<TI>, 
impl<K, TI> Display for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: MatMatMulKer<TI>, 
impl<K, TI> MatMatMul for MatMatMulImpl<K, TI> where
    TI: 'static + Datum + Copy + Add<TI> + Mul<TI, Output = TI> + Zero + Debug + Neg<Output = TI>,
    K: 'static + MatMatMulKer<TI>,
    i32: AsPrimitive<TI>,
    usize: AsPrimitive<TI>, 
impl<K, TI> MatMatMul for MatMatMulImpl<K, TI> where
    TI: 'static + Datum + Copy + Add<TI> + Mul<TI, Output = TI> + Zero + Debug + Neg<Output = TI>,
    K: 'static + MatMatMulKer<TI>,
    i32: AsPrimitive<TI>,
    usize: AsPrimitive<TI>, 
pub unsafe fn b_from_data_and_offsets(
    &self, 
    item_size: usize, 
    rows_offsets: &[isize], 
    cols_offsets: &[isize]
) -> MatrixStoreSpec
pub unsafe fn c_from_data_and_strides(
    &self, 
    item_size: usize, 
    row_stride: isize, 
    col_stride: isize
) -> MatrixStoreSpec
pub unsafe fn allocate_scratch_space(
    &self
) -> Box<dyn ScratchSpace + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
    W: Write + ?Sized, impl<R> Read for Box<R, Global> where
    R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
    F: Future + Unpin + ?Sized,
    A: Allocator + 'static,     type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator,     type Item = <I as Iterator>::Item;
impl<W> Write for Box<W, Global> where
    W: Write + ?Sized, impl<R> Read for Box<R, Global> where
    R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
    F: Future + Unpin + ?Sized,
    A: Allocator + 'static,     type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator,     type Item = <I as Iterator>::Item;pub unsafe fn run_with_scratch_space(
    &self, 
    m: usize, 
    k: usize, 
    n: usize, 
    scratch: &mut (dyn ScratchSpace + 'static), 
    a: &MatrixStore<'_, '_>, 
    b: &MatrixStore<'_, '_>, 
    c: &mut MatrixStore<'_, '_>, 
    non_linear: &[FusedSpec<'_>]
) -> Result<(), Error>
unsafe fn run(
    &self, 
    m: usize, 
    k: usize, 
    n: usize, 
    a: &MatrixStore<'_, '_>, 
    b: &MatrixStore<'_, '_>, 
    c: &mut MatrixStore<'_, '_>, 
    non_linear: &[FusedSpec<'_>]
) -> Result<(), Error>
impl<K, TI> Send for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
impl<K, TI> Sync for MatMatMulImpl<K, TI> where
    TI: 'static + Copy + Add<TI> + Mul<TI> + Zero + Debug,
    K: 'static + MatMatMulKer<TI>, 
Auto Trait Implementations
impl<K, TI> !RefUnwindSafe for MatMatMulImpl<K, TI>
impl<K, TI> Unpin for MatMatMulImpl<K, TI> where
    K: Unpin,
    TI: Unpin, 
impl<K, TI> !UnwindSafe for MatMatMulImpl<K, TI>
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
    W: Write + ?Sized, impl<R> Read for Box<R, Global> where
    R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
    F: Future + Unpin + ?Sized,
    A: Allocator + 'static,     type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator,     type Item = <I as Iterator>::Item;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
    W: Write + ?Sized, impl<R> Read for Box<R, Global> where
    R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
    F: Future + Unpin + ?Sized,
    A: Allocator + 'static,     type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator,     type Item = <I as Iterator>::Item;
impl<W> Write for Box<W, Global> where
    W: Write + ?Sized, impl<R> Read for Box<R, Global> where
    R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
    F: Future + Unpin + ?Sized,
    A: Allocator + 'static,     type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
    I: Iterator + ?Sized,
    A: Allocator,     type Item = <I as Iterator>::Item;Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more
Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read more
Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more