|
FflasFfpack
|
#include "fflas-ffpack/fflas-ffpack-config.h"#include <givaro/modular-balanced.h>#include <iostream>#include <iomanip>#include "fflas-ffpack/fflas/fflas.h"#include "fflas-ffpack/ffpack/ffpack.h"#include "fflas-ffpack/utils/test-utils.h"#include "fflas-ffpack/utils/args-parser.h"#include <random>Macros | |
| #define | __FFLASFFPACK_PLUQ_THRESHOLD 5 |
| #define | BRUHATGEN |
Functions | |
| template<class Field> | |
| bool | test_reconstruction_compatibility (const Field &F, size_t n, size_t s, typename Field::ConstElement_ptr P, size_t ldp, typename Field::ConstElement_ptr Q, size_t ldq, typename Field::ConstElement_ptr R, size_t ldr, typename Field::ConstElement_ptr U, size_t ldu, typename Field::ConstElement_ptr V, size_t ldv, typename Field::ConstElement_ptr W, size_t ldw, typename Field::ConstElement_ptr D, size_t ldd) |
| test equality between matrix reconstructed by SSSToDense and applied to identity with productSSSxTS | |
| template<class Field> | |
| bool | test_application_compatibility (const Field &F, size_t n, size_t t, size_t s, const typename Field::Element alpha, typename Field::ConstElement_ptr P, size_t ldp, typename Field::ConstElement_ptr Q, size_t ldq, typename Field::ConstElement_ptr R, size_t ldr, typename Field::ConstElement_ptr U, size_t ldu, typename Field::ConstElement_ptr V, size_t ldv, typename Field::ConstElement_ptr W, size_t ldw, typename Field::ConstElement_ptr D, size_t ldd, typename Field::ConstElement_ptr B, size_t ldb, const typename Field::Element beta, typename Field::ConstElement_ptr C, size_t ldc) |
| test equality between applying productSSSxTS or dense matrix | |
| template<class Field> | |
| bool | test_compression (const Field &F, size_t n, size_t s, typename Field::ConstElement_ptr P, size_t ldp, typename Field::ConstElement_ptr Q, size_t ldq, typename Field::ConstElement_ptr R, size_t ldr, typename Field::ConstElement_ptr U, size_t ldu, typename Field::ConstElement_ptr V, size_t ldv, typename Field::ConstElement_ptr W, size_t ldw, typename Field::ConstElement_ptr D, size_t ldd, typename Field::Element_ptr A, size_t lda) |
| test equality between a dense sss matrix and the result of compressing and reconstructing it A dense matrix is given in A, another one is constructed from its random generators | |
| template<class Field> | |
| bool | launch_instance_check (const Field &F, size_t n, size_t s, size_t t, size_t r, typename Field::RandIter &G) |
| template<class Field> | |
| bool | run_with_field (Givaro::Integer q, uint64_t b, size_t n, size_t s, size_t t, size_t r, size_t iters, uint64_t seed) |
| int | main (int argc, char **argv) |
| #define __FFLASFFPACK_PLUQ_THRESHOLD 5 |
| #define BRUHATGEN |
| bool test_reconstruction_compatibility | ( | const Field & | F, |
| size_t | n, | ||
| size_t | s, | ||
| typename Field::ConstElement_ptr | P, | ||
| size_t | ldp, | ||
| typename Field::ConstElement_ptr | Q, | ||
| size_t | ldq, | ||
| typename Field::ConstElement_ptr | R, | ||
| size_t | ldr, | ||
| typename Field::ConstElement_ptr | U, | ||
| size_t | ldu, | ||
| typename Field::ConstElement_ptr | V, | ||
| size_t | ldv, | ||
| typename Field::ConstElement_ptr | W, | ||
| size_t | ldw, | ||
| typename Field::ConstElement_ptr | D, | ||
| size_t | ldd ) |
test equality between matrix reconstructed by SSSToDense and applied to identity with productSSSxTS
| bool test_application_compatibility | ( | const Field & | F, |
| size_t | n, | ||
| size_t | t, | ||
| size_t | s, | ||
| const typename Field::Element | alpha, | ||
| typename Field::ConstElement_ptr | P, | ||
| size_t | ldp, | ||
| typename Field::ConstElement_ptr | Q, | ||
| size_t | ldq, | ||
| typename Field::ConstElement_ptr | R, | ||
| size_t | ldr, | ||
| typename Field::ConstElement_ptr | U, | ||
| size_t | ldu, | ||
| typename Field::ConstElement_ptr | V, | ||
| size_t | ldv, | ||
| typename Field::ConstElement_ptr | W, | ||
| size_t | ldw, | ||
| typename Field::ConstElement_ptr | D, | ||
| size_t | ldd, | ||
| typename Field::ConstElement_ptr | B, | ||
| size_t | ldb, | ||
| const typename Field::Element | beta, | ||
| typename Field::ConstElement_ptr | C, | ||
| size_t | ldc ) |
test equality between applying productSSSxTS or dense matrix
| bool test_compression | ( | const Field & | F, |
| size_t | n, | ||
| size_t | s, | ||
| typename Field::ConstElement_ptr | P, | ||
| size_t | ldp, | ||
| typename Field::ConstElement_ptr | Q, | ||
| size_t | ldq, | ||
| typename Field::ConstElement_ptr | R, | ||
| size_t | ldr, | ||
| typename Field::ConstElement_ptr | U, | ||
| size_t | ldu, | ||
| typename Field::ConstElement_ptr | V, | ||
| size_t | ldv, | ||
| typename Field::ConstElement_ptr | W, | ||
| size_t | ldw, | ||
| typename Field::ConstElement_ptr | D, | ||
| size_t | ldd, | ||
| typename Field::Element_ptr | A, | ||
| size_t | lda ) |
test equality between a dense sss matrix and the result of compressing and reconstructing it A dense matrix is given in A, another one is constructed from its random generators
| bool launch_instance_check | ( | const Field & | F, |
| size_t | n, | ||
| size_t | s, | ||
| size_t | t, | ||
| size_t | r, | ||
| typename Field::RandIter & | G ) |
| bool run_with_field | ( | Givaro::Integer | q, |
| uint64_t | b, | ||
| size_t | n, | ||
| size_t | s, | ||
| size_t | t, | ||
| size_t | r, | ||
| size_t | iters, | ||
| uint64_t | seed ) |
| int main | ( | int | argc, |
| char ** | argv ) |