M4RI  20140914
Functions
mp.h File Reference

multicore matrix operations More...

#include <m4ri/mzd.h>

Go to the source code of this file.

Functions

mzd_tmzd_mul_mp (mzd_t *C, mzd_t const *A, mzd_t const *B, int cutoff)
 Matrix multiplication via the cubic multiplication algorithm on multiple cores, i.e. compute C = AB. More...
 
mzd_tmzd_addmul_mp (mzd_t *C, mzd_t const *A, mzd_t const *B, int cutoff)
 Matrix multiplication and in-place addition via the cubic matrix multiplication algorithm on multiple cores, i.e. compute C = C+ AB. More...
 
mzd_t_mzd_addmul_mp4 (mzd_t *C, mzd_t const *A, mzd_t const *B, int cutoff)
 Matrix multiplication and in-place addition via cubic matrix multiplication algorithm on up to four cores, i.e. compute C = C+ AB. More...
 
mzd_t_mzd_mul_mp4 (mzd_t *C, mzd_t const *A, mzd_t const *B, int cutoff)
 Matrix multiplication via cubic matrix multiplication algorithm on up to four cores, i.e. compute C = C+ AB. More...
 

Detailed Description

multicore matrix operations

Author
Martin Albrecht marti.nosp@m.nral.nosp@m.brech.nosp@m.t@go.nosp@m.oglem.nosp@m.ail..nosp@m.com

Function Documentation

mzd_t* _mzd_addmul_mp4 ( mzd_t C,
mzd_t const *  A,
mzd_t const *  B,
int  cutoff 
)

Matrix multiplication and in-place addition via cubic matrix multiplication algorithm on up to four cores, i.e. compute C = C+ AB.

Parameters
CProduct matrix
AInput matrix A
BInput matrix B
cutoffMinimal dimension for recursion.
mzd_t* _mzd_mul_mp4 ( mzd_t C,
mzd_t const *  A,
mzd_t const *  B,
int  cutoff 
)

Matrix multiplication via cubic matrix multiplication algorithm on up to four cores, i.e. compute C = C+ AB.

Parameters
CProduct matrix
AInput matrix A
BInput matrix B
cutoffMinimal dimension for recursion.
mzd_t* mzd_addmul_mp ( mzd_t C,
mzd_t const *  A,
mzd_t const *  B,
int  cutoff 
)

Matrix multiplication and in-place addition via the cubic matrix multiplication algorithm on multiple cores, i.e. compute C = C+ AB.

This is the wrapper function including bounds checks. See _mzd_addmul_mp4 for implementation details.

Parameters
Cproduct matrix
AInput matrix A
BInput matrix B
cutoffMinimal dimension for recursion.
Examples:
testsuite/test_multiplication.c.
mzd_t* mzd_mul_mp ( mzd_t C,
mzd_t const *  A,
mzd_t const *  B,
int  cutoff 
)

Matrix multiplication via the cubic multiplication algorithm on multiple cores, i.e. compute C = AB.

This is the wrapper function including bounds checks. See _mzd_mul_mp4 for implementation details.

Parameters
CPreallocated product matrix, may be NULL for automatic creation.
AInput matrix A
BInput matrix B
cutoffMinimal dimension for recursion.
Examples:
testsuite/test_multiplication.c.