Function matrixmultiply::sgemm

source ·
pub unsafe fn sgemm(
    m: usize,
    k: usize,
    n: usize,
    alpha: f32,
    a: *const f32,
    rsa: isize,
    csa: isize,
    b: *const f32,
    rsb: isize,
    csb: isize,
    beta: f32,
    c: *mut f32,
    rsc: isize,
    csc: isize
Expand description

General matrix multiplication (f32)

C ← α A B + β C

  • m, k, n: dimensions
  • a, b, c: pointer to the first element in the matrix
  • A: m by k matrix
  • B: k by n matrix
  • C: m by n matrix
  • rsx: row stride of x
  • csx: col stride of x

Strides for A and B may be arbitrary. Strides for C must not result in elements that alias each other, for example they can not be zero.

If β is zero, then C does not need to be initialized.