Skip to main content

gemm_i8_packed_b_unchecked

Function gemm_i8_packed_b_unchecked 

Source
pub unsafe fn gemm_i8_packed_b_unchecked(
    alpha: i32,
    m: usize,
    a: *const i8,
    rsa: isize,
    csa: isize,
    packed: &PackedRhs<i8>,
    beta: i32,
    c: *mut i32,
    rsc: isize,
    csc: isize,
    par: Parallelism,
)
Available on crate feature int8 only.
Expand description

As gemm_i8_packed_b but over raw A/C pointers and strides, with no bounds or alias checks. This is the heterogeneous (i8 -> i32) counterpart of gemm_packed_b_unchecked. The shared k and output n come from packed, and m is A’s row count, the same as C’s. Uses the thread-local workspace pool

§Safety

a must be valid for reads over (m, packed.rows()). c must be valid for read and write over (m, packed.cols()) at the given strides, and must not alias a. When beta == 0, c need not be initialized

§Panics

Panics if C is not column-major-ish (|csc| >= |rsc|), because a prepacked RHS cannot serve a row-major C. Use plain gemm_i8 for that layout