1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
//! Corresponds to `mp.h` use crate::mzd::Mzd; use libc; extern "C" { /// Matrix multiplication via the cubic multiplication algorithm on multiple cores /// /// C: Preallocated product matrix, may be NULL for automatic creation /// A: Input matrix A /// B: Input matrix B /// cutoff: Minimal dimension for recursion pub fn mzd_mul_mp(c: *mut Mzd, a: *const Mzd, b: *const Mzd, cutoff: libc::c_int) -> *mut Mzd; /// Matrix multiplication and in-place additoin via th ecubic matrix multiplication /// algorithm on multiple cores. C = C + AB /// /// C: product matrix /// A: Input matrix /// B: Input matrix /// cutoff: Minimal dimension for recursion pub fn mzd_addmul_mp( c: *mut Mzd, a: *const Mzd, b: *const Mzd, cutoff: libc::c_int, ) -> *mut Mzd; }