QuantizedType

Trait QuantizedType 

Source
pub trait QuantizedType: Send + Sync {
    // Required methods
    fn dtype(&self) -> GgmlDType;
    fn matmul_t(
        &self,
        mkn: (usize, usize, usize),
        lhs: &[f32],
        dst: &mut [f32],
    ) -> Result<()>;
    fn matmul_t_f16(
        &self,
        mkn: (usize, usize, usize),
        lhs: &[f16],
        dst: &mut [f16],
    ) -> Result<()>;
    fn dequantize(&self, elem_count: usize) -> Result<CpuStorage>;
    fn storage_size_in_bytes(&self) -> usize;
    fn as_ptr(&self) -> *const u8;
    fn block_size(&self) -> usize;
    fn from_float(&mut self, xs: &[f32]);
    fn from_float_imatrix(
        &mut self,
        xs: &[f32],
        imatrix_weights: &[f32],
        n_per_row: usize,
    );
    fn size(&self) -> usize;
}

Required Methods§

Source

fn dtype(&self) -> GgmlDType

Source

fn matmul_t( &self, mkn: (usize, usize, usize), lhs: &[f32], dst: &mut [f32], ) -> Result<()>

Source

fn matmul_t_f16( &self, mkn: (usize, usize, usize), lhs: &[f16], dst: &mut [f16], ) -> Result<()>

Source

fn dequantize(&self, elem_count: usize) -> Result<CpuStorage>

Source

fn storage_size_in_bytes(&self) -> usize

Source

fn as_ptr(&self) -> *const u8

Source

fn block_size(&self) -> usize

Source

fn from_float(&mut self, xs: &[f32])

Source

fn from_float_imatrix( &mut self, xs: &[f32], imatrix_weights: &[f32], n_per_row: usize, )

Source

fn size(&self) -> usize

Implementations on Foreign Types§

Source§

impl<T: GgmlType + Send + Sync> QuantizedType for Vec<T>

Source§

fn matmul_t( &self, mkn: (usize, usize, usize), lhs: &[f32], dst: &mut [f32], ) -> Result<()>

Source§

fn matmul_t_f16( &self, mkn: (usize, usize, usize), lhs: &[f16], dst: &mut [f16], ) -> Result<()>

Source§

fn size(&self) -> usize

Source§

fn from_float(&mut self, xs: &[f32])

Source§

fn from_float_imatrix( &mut self, xs: &[f32], imatrix_weights: &[f32], n_per_row: usize, )

Source§

fn dtype(&self) -> GgmlDType

Source§

fn block_size(&self) -> usize

Source§

fn dequantize(&self, elem_count: usize) -> Result<CpuStorage>

Source§

fn storage_size_in_bytes(&self) -> usize

Source§

fn as_ptr(&self) -> *const u8

Implementors§