tests all variants of applyP, ftrmm, ftrsm and fgemm for varions m,k,n and leading dimensions combinations.
More...
#include <cassert>
#include "linbox/ring/modular.h"
#include "linbox/linbox-config.h"
#include "fflas-ffpack/fflas/fflas.h"
#include "fflas-ffpack/ffpack/ffpack.h"
#include "linbox/integer.h"
#include <givaro/modular-balanced.h>
#include "fflas-ffpack/utils/Matio.h"
#include "test-common.h"
|
template<class Field , FFLAS::FFLAS_SIDE Side, FFLAS::FFLAS_UPLO UpLo, FFLAS::FFLAS_TRANSPOSE Trans, FFLAS::FFLAS_DIAG Diag> |
int | test_ftrmm (std::ostream &report, const Field &F) |
|
template<class Field > |
int | test_applyP (std::ostream &report, const Field &F) |
|
template<class Field , FFLAS::FFLAS_TRANSPOSE ATRANS, FFLAS::FFLAS_TRANSPOSE BTRANS> |
int | test_fgemm (std::ostream &report, const Field &F) |
|
int | main (int ac, char **av) |
|
tests all variants of applyP, ftrmm, ftrsm and fgemm for varions m,k,n and leading dimensions combinations.
- Bug:
ftrmm fails on non-double transposed versions.
is fgemm correct on null A and B ?
- Test:
- FFLAS::ftrmm, FFPACK::applyP, FFLAS::ftrsm, FFLAS::fgemm
◆ _LB_MAX_SZ
◆ test_ftrmm()
int test_ftrmm |
( |
std::ostream & |
report, |
|
|
const Field & |
F |
|
) |
| |
- Todo:
- F.isInvertible()
- Todo:
- InvertibleRandomIter
- Bug:
- same code as above ?
- Bug:
- same code as above ?
- Bug:
- same code as above ?
- Bug:
- same code as above ?
- Bug:
- same code as above ?
- Bug:
- same code as above ?
- Todo:
- check ftrsm fails nicely with non invertible A !
◆ test_applyP()
int test_applyP |
( |
std::ostream & |
report, |
|
|
const Field & |
F |
|
) |
| |
- Todo:
- test
NULL
permutation
◆ test_fgemm()
int test_fgemm |
( |
std::ostream & |
report, |
|
|
const Field & |
F |
|
) |
| |
- Bug:
- if beta != 0 but A and B are 0 (or don't exist) then C != beta C
- Bug:
- needs p prime.
◆ main()
int main |
( |
int |
ac, |
|
|
char ** |
av |
|
) |
| |
- Bug:
- : this one completely fails :