Struct tract_pulse::internal::tract_core::ops::matmul::QMatMul     [−]
pub struct QMatMul {
    pub a_trans: bool,
    pub b_trans: bool,
    pub c_trans: bool,
    pub output_type: DatumType,
    pub params: MatMulQParams,
}Fields
a_trans: boolb_trans: boolc_trans: booloutput_type: DatumTypeparams: MatMulQParamsImplementations
impl QMatMul
impl QMatMul
pub fn with_a_trans(self, a_trans: bool) -> QMatMul
pub fn with_b_trans(self, b_trans: bool) -> QMatMul
pub fn with_c_trans(self, c_trans: bool) -> QMatMul
impl QMatMul
impl QMatMul
Trait Implementations
Vector of short strings defining what families the op belongs too. tract-core defines “core”, “mir”, “lir”. Read more
fn validation(&self) -> Validation
fn validation(&self) -> Validation
The kind of accuracy check that should be performed on operation when testing them. Read more
Deduce output facts from input facts.
Declutter the op to the tract_core operator set as much as possible.
Computes a cost hint of the operation. Read more
Translate the op into the most efficient form possible for execution. Read more
fn invariants(
    &self, 
    inputs: &[&TypedFact], 
    outputs: &[&TypedFact]
) -> Result<Invariants, Error>
Fuse op after codegen to deal with local optimisations.
fn change_axes(
    &self, 
    model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    io: InOut, 
    change: &AxisOp
) -> Result<Option<AxisChangeConsequence>, Error>
fn slice_output(
    &self, 
    model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    patch: &mut ModelPatch<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    slice_suffix: &str, 
    output_slot: usize, 
    axis: usize, 
    start: usize, 
    end: usize
) -> Result<Option<OutletId>, Error>
Transforms the op in an equivalent one, operating on dt (i8 or u8). Read more
fn concretize_dims(
    &self, 
    source: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    target: &mut Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    mapping: &HashMap<OutletId, OutletId, RandomState>, 
    values: &SymbolValues
) -> Result<SmallVec<[OutletId; 4]>, Error>
fn concretize_dims(
    &self, 
    source: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    target: &mut Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>, 
    mapping: &HashMap<OutletId, OutletId, RandomState>, 
    values: &SymbolValues
) -> Result<SmallVec<[OutletId; 4]>, Error>
Transform the op into by providing a value to one or more symbols.
Auto Trait Implementations
impl RefUnwindSafe for QMatMul
impl UnwindSafe for QMatMul
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