|
linbox
|
Benchmarking triangular matrix multiplication on finite fields. More...
#include "benchmarks/benchmark.h"#include "linbox/util/error.h"#include "linbox/field/modular.h"#include "linbox/field/modular-balanced.h"#include "fflas-ffpack/ffpack/ffpack.h"#include "fflas-ffpack/fflas/fflas.h"#include "linbox/matrix/random-matrix.h"#include "linbox/matrix/blas-matrix.h"#include "linbox/algorithms/blas-domain.h"
Include dependency graph for benchmark-ftrXm.C:Functions | |
| bool | keepon (index_t &repet, Timer &tim, double maxtime=0.5) |
| Watches a timer and a number and repet and signals if over. More... | |
| bool | whatchon (index_t &repet, Timer &tim, double maxtime=0.5) |
| Watches a timer and a number and repet and signals if over. More... | |
| template<class Field , bool LeftSide, bool UnitDiag, bool TriSup, bool tA> | |
| void | launch_bench_scalar (Field &F, int m, int n, const typename Field::Element &alpha, LinBox::PlotData< std::string > &Data, index_t point_nb) |
| void | bench_square (index_t min, index_t max, int step, int charac) |
| Benchmark square ftrmm for differenct parameters. More... | |
| void | bench_fields (index_t min, index_t max, int step) |
| Benchmark square ftrmm for several fields. More... | |
| void | bench_blas (index_t min, index_t max, int step) |
| Benchmark fgemm Y=AX for several sizes of sqare matrices. More... | |
| void | bench_rectangular (index_t k, int charac) |
| Benchmark fgemm Y=AX for several shapes. More... | |
| void | bench_transpose (index_t k, int charac) |
| Benchmark ftrmm with transpose or alpha parameters on. More... | |
| int | main (int ac, char **av) |
Benchmarking triangular matrix multiplication on finite fields.
This file benchmarks the FFLAS::ftrmm, FFLAS::ftrsm implementation for various fields, shape and parameters. Actually, we use the wrapper member mul of LinBox::BlasMatrixDomain.
ftrmm has an 'alpha' but mul/mulin in BMd don't... That could be useful for
...
benchmark ftrsm too here.
| bool keepon | ( | index_t & | repet, |
| Timer & | tim, | ||
| double | maxtime = 0.5 |
||
| ) |
Watches a timer and a number and repet and signals if over.
We want at least 2 repetions but not more than maxtime spent on timing.
| repet | number of previous repetitions. Should be 0 on the first time whatchon is called. |
| tim | timer to watch |
| maxtime | maximum time (in seconds) until watchon tells stop. |
true if we conditions are not met to stop, false otherwise. tim was clear at the beginning and never started. | bool whatchon | ( | index_t & | repet, |
| Timer & | tim, | ||
| double | maxtime = 0.5 |
||
| ) |
Watches a timer and a number and repet and signals if over.
We want at least 2 repetions but not more than maxtime spent on timing.
| repet | number of previous repetitions. Should be 0 on the first time whatchon is called. |
| tim | timer to watch |
| maxtime | maximum time (in seconds) until watchon tells stop. |
true if we conditions are not met to stop, false otherwise. tim should have been started previously ! | void launch_bench_scalar | ( | Field & | F, |
| int | m, | ||
| int | n, | ||
| const typename Field::Element & | alpha, | ||
| LinBox::PlotData< std::string > & | Data, | ||
| index_t | point_nb | ||
| ) |
| alpha |
| void bench_square | ( | index_t | min, |
| index_t | max, | ||
| int | step, | ||
| int | charac | ||
| ) |
Benchmark square ftrmm for differenct parameters.
| min | min size |
| max | max size |
| step | step of the size between 2 benchmarks |
| charac | characteristic of the field. |
| void bench_fields | ( | index_t | min, |
| index_t | max, | ||
| int | step | ||
| ) |
Benchmark square ftrmm for several fields.
| min | min size |
| max | max size |
| step | step of the size between 2 benchmarks |
| void bench_blas | ( | index_t | min, |
| index_t | max, | ||
| int | step | ||
| ) |
Benchmark fgemm Y=AX for several sizes of sqare matrices.
| min | min size |
| max | max size |
| step | step of the size between 2 benchmarks |
| void bench_rectangular | ( | index_t | k, |
| int | charac | ||
| ) |
| void bench_transpose | ( | index_t | k, |
| int | charac | ||
| ) |
Benchmark ftrmm with transpose or alpha parameters on.
| k | parameter. |
| charac | characteristic of the field. |
| int main | ( | int | ac, |
| char ** | av | ||
| ) |
1.8.6