FflasFfpack
Macros | Functions
test-lu.C File Reference
#include "fflas-ffpack/fflas-ffpack-config.h"
#include <givaro/modular-balanced.h>
#include <iostream>
#include <iomanip>
#include "fflas-ffpack/utils/Matio.h"
#include "fflas-ffpack/utils/timer.h"
#include "fflas-ffpack/ffpack/ffpack.h"
#include "test-utils.h"
#include "fflas-ffpack/utils/args-parser.h"

Macros

#define __FFLASFFPACK_SEQUENTIAL
 
#define __LUDIVINE_CUTOFF   1
 

Functions

template<class Field , FFLAS::FFLAS_DIAG diag, FFLAS::FFLAS_TRANSPOSE trans>
bool test_LUdivine (const Field &F, typename Field::ConstElement_ptr A, size_t lda, size_t r, size_t m, size_t n)
 Tests the LUdivine routine. More...
 
template<class Field , FFLAS::FFLAS_DIAG diag>
bool verifPLUQ (const Field &F, typename Field::ConstElement_ptr A, size_t lda, typename Field::Element_ptr PLUQ, size_t ldpluq, size_t *P, size_t *Q, size_t m, size_t n, size_t R)
 Verifies that B = PLUQ where A stores [L]. More...
 
template<class Field , FFLAS::FFLAS_DIAG diag>
bool test_pluq (const Field &F, typename Field::ConstElement_ptr A, size_t r, size_t m, size_t n, size_t lda)
 Tests the LUdivine routine. More...
 
template<class Field , FFLAS::FFLAS_DIAG diag, FFLAS::FFLAS_TRANSPOSE trans>
bool launch_test (const Field &F, size_t r, size_t m, size_t n)
 Tests the LUpdate routine. More...
 
template<class Field >
bool run_with_field (Givaro::Integer q, uint64_t b, size_t m, size_t n, size_t r, size_t iters)
 
int main (int argc, char **argv)
 

Macro Definition Documentation

#define __FFLASFFPACK_SEQUENTIAL
#define __LUDIVINE_CUTOFF   1

Function Documentation

bool test_LUdivine ( const Field F,
typename Field::ConstElement_ptr  A,
size_t  lda,
size_t  r,
size_t  m,
size_t  n 
)

Tests the LUdivine routine.

Template Parameters
FieldField
DiagUnit diagonal in U
Trans
Parameters
Ffield
AMatrix (preallocated)
rrank of A
mrows
ncols
ldaleading dim of A
Returns
0 iff correct, 1 otherwise
bool verifPLUQ ( const Field F,
typename Field::ConstElement_ptr  A,
size_t  lda,
typename Field::Element_ptr  PLUQ,
size_t  ldpluq,
size_t *  P,
size_t *  Q,
size_t  m,
size_t  n,
size_t  R 
)

Verifies that B = PLUQ where A stores [L].

Template Parameters
FieldField
DiagUnit diagonal in U
Parameters
Ffield
AMatrix (preallocated)
rrank of A
mrows
ncols
ldaleading dim of A
Returns
0 iff correct, 1 otherwise
bool test_pluq ( const Field F,
typename Field::ConstElement_ptr  A,
size_t  r,
size_t  m,
size_t  n,
size_t  lda 
)

Tests the LUdivine routine.

Template Parameters
FieldField
DiagUnit diagonal in U
Trans
Parameters
Ffield
AMatrix (preallocated)
rrank of A
mrows
ncols
ldaleading dim of A
Returns
0 iff correct, 1 otherwise
bool launch_test ( const Field F,
size_t  r,
size_t  m,
size_t  n 
)

Tests the LUpdate routine.

Template Parameters
FieldField
DiagUnit diagonal in L ?
Trans?
Parameters
Ffield
AMatrix (preallocated)
rrank of A
BMatrix (preallocated)
mrows in A
ncols in A (and B)
krows in B
ldaleading dim of A (and B)
Returns
0 iff correct, 1 otherwise
bool run_with_field ( Givaro::Integer  q,
uint64_t  b,
size_t  m,
size_t  n,
size_t  r,
size_t  iters 
)
int main ( int  argc,
char **  argv 
)