Skip to main content

QuantizePerTensorArgs

Struct QuantizePerTensorArgs 

Source
pub struct QuantizePerTensorArgs<'a, TIn: Element, TOut: IntElement> {
    pub input: TensorRef<'a, TIn, 1>,
    pub scale: <TIn as Element>::Scalar,
    pub zero_point: i32,
    pub output: TensorMut<'a, TOut, 1>,
}
Expand description

Args bundle for a quantize_per_tensor forward launch.

The input / output tensors are 1-D for the trailblazer — the caller flattens a multi-D tensor down to its numel (per-tensor quantization is axis-agnostic). The 1-D shape is [numel].

Fields§

§input: TensorRef<'a, TIn, 1>

Input tensor in FP. Flat [numel].

§scale: <TIn as Element>::Scalar

Scalar scale (FP), passed by value. The plan converts to the appropriate FFI scalar (f32 or f64) based on TIn.

§zero_point: i32

Scalar zero point (i32), passed by value.

§output: TensorMut<'a, TOut, 1>

Output tensor in int. Flat [numel].

Auto Trait Implementations§

§

impl<'a, TIn, TOut> !UnwindSafe for QuantizePerTensorArgs<'a, TIn, TOut>

§

impl<'a, TIn, TOut> Freeze for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: Freeze,

§

impl<'a, TIn, TOut> RefUnwindSafe for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: RefUnwindSafe, TIn: RefUnwindSafe, TOut: RefUnwindSafe,

§

impl<'a, TIn, TOut> Send for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: Send, TIn: Sync, TOut: Send,

§

impl<'a, TIn, TOut> Sync for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: Sync, TIn: Sync, TOut: Sync,

§

impl<'a, TIn, TOut> Unpin for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: Unpin,

§

impl<'a, TIn, TOut> UnsafeUnpin for QuantizePerTensorArgs<'a, TIn, TOut>
where <TIn as Element>::Scalar: UnsafeUnpin,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.