1 |
> How about FFTs rather than DFTs? |
2 |
|
3 |
"A fast Fourier transform (FFT) is an efficient algorithm to compute |
4 |
the discrete Fourier transform (DFT) and its inverse" [0] |
5 |
The tests compute the DFT by using FFTW, which of course implements |
6 |
the FFT algorithms. |
7 |
Or did you mean something else? |
8 |
|
9 |
|
10 |
> Is there any intent that it be able to automatically select the best |
11 |
> parameters in addition to just graphing the results? From looking at |
12 |
> some of those graphs, it seems like if you applied some smoothing, you |
13 |
> could pick the peaks out fairly easily. |
14 |
|
15 |
It would actually quite easy to find the best implementation for a |
16 |
specific operation and matrix size. But... |
17 |
Have a look of my BLAS results [1]: you can notice that eigen is very |
18 |
slow for some opeartion like axpy, while it is very fast with matrix |
19 |
multiplications or system solution; the gotoblas and openblas |
20 |
implementations are usually the slowest with small matrices, but are |
21 |
really fast with big matrices; atlas has swinging performances (see |
22 |
matrix-matrix multiply), making it sometimes quite fast, sometimes |
23 |
very slow. |
24 |
|
25 |
Bref: there are quite a few parameters that the user would insert in |
26 |
order to decide automatically the best suited implementation. Big |
27 |
matrices or tiny ones? Just Level 2 and 3 operations or Level 1, too? |
28 |
Constancy or peak performance? Constructing such an automatic "filter" |
29 |
would require a lot of work and would probabily be difficult making it |
30 |
so good as the human eye is... I could maybe create kinda score |
31 |
system, and give the user an hint of the most performing |
32 |
implementation, but having a 2-minutes look at the graphical results |
33 |
would always be the best thing to do. The only drawback of a manual |
34 |
decision is that only a few (6-7) implementation can be shown at the |
35 |
same time in order to keep the plots readable. |
36 |
|
37 |
Thanks for the comments. |
38 |
Cheers |
39 |
Andrea |
40 |
|
41 |
[0] http://en.wikipedia.org/wiki/Fast_Fourier_transform |
42 |
[1] http://www.phys.ethz.ch/~arteagaa/soc/blas/ |