1 |
This is the report of the project "Automated benchmark suite for |
2 |
numerical libraries in Gentoo" for the week 25 July-1 August. |
3 |
This is also available on my blog [1]. |
4 |
|
5 |
== Project description == |
6 |
|
7 |
The project aims to develop a simple yet powerful automated system of |
8 |
benchmarking for numerical libraries. The Gentoo software system |
9 |
provides many implementations of widely used standards such as BLAS, |
10 |
CBLAS, LAPACK, ScaLAPACK and some other numerical library such as |
11 |
FFTW, MKL. The developed tools will aid the system maintener to choose |
12 |
the best suited implementation with respect to the machine hardware |
13 |
and to test the samer implementation or different ones with different |
14 |
compilers, compiler versions and compile flags. |
15 |
|
16 |
== Progrees during the week == |
17 |
|
18 |
This week has been devoted to the following features: |
19 |
|
20 |
* Management of the dependencies |
21 |
* Improvement of the PBLAS/ScaLAPACK tests and investigation of some |
22 |
BTL-related problem -- see below |
23 |
* 3-Dimensional FFTW tests |
24 |
|
25 |
Before this week's work, only packages without unsatisfied |
26 |
dependencies on the main system could be tested. For example, if one |
27 |
did not have cmake installed in the system, he could not test eigen, |
28 |
as it requires cmake to be installed in order to compile. This is not |
29 |
a problem anymore. The dependencies are emerged into the "sandbox" |
30 |
root along with the package to be tested, and the environment is |
31 |
adjusted in order to make use of the software installed. The delay of |
32 |
this report is due to this work, which has required more work as |
33 |
expected -- a small rewriting of the preliminary part of the script |
34 |
has been done --; now the report can be complete. |
35 |
|
36 |
Some investigation has been done regarding the input matrices and |
37 |
vectors for the tests. In order to be fair, the tests should produce |
38 |
the same inputfor the libraries, as different input could require |
39 |
different work by the libraries. The linear congruential random number |
40 |
generatorhas been written, along with the new-style matrix generator. |
41 |
This will not completely solve the problem, but it represents a step |
42 |
in the right direction. Now the PBLAS/ScaLAPACK tests use this method, |
43 |
and the results are satisfactory. |
44 |
|
45 |
The work with FFTW is finished for now. 1-dimensional, 2-dimensional |
46 |
and 3-dimensional complex discrete Fourier transformations are tested |
47 |
in both forward and backward versions and with the "estimate" and |
48 |
"measure" strategies. If the time will allow it, I will also add sinus |
49 |
and cosinus tranformations. |
50 |
|
51 |
== Plan for the next week == |
52 |
|
53 |
During the following week I will implement the tests for METIS. This |
54 |
is a set of executables and libraries that compute graph and mesh |
55 |
partitioning -- along with other numerical functions --, which are |
56 |
widely used in the field of numerical simulations and other scientific |
57 |
computations. |
58 |
|
59 |
The project has intensively gained features in the last weeks. After |
60 |
the METIS tests implementation, the quality of the whole project will |
61 |
be tested and improved. A considerable part of the time has been |
62 |
devoted to the BTL library, and more work will be performed in order |
63 |
to submit the new code upstream. Some work has to be also done in |
64 |
order to make the script more user-friendly; this means managing the |
65 |
exceptions that occur sometimes, avoid conflicts between tests already |
66 |
done and the currect ones, reduce the probability of errors. Much |
67 |
documentation has to be written. The ebuild will be splitted in two |
68 |
part, a Gentoo-specific one and a general one containing the modified |
69 |
BTL. |
70 |
|
71 |
All this work will eventually provide a finished and usable project, |
72 |
which is my primary objective for the programme. I do not want to |
73 |
provide an incomplete or undocumented software; I rather prefer |
74 |
pospone the inclusion of new features after the programme end, if the |
75 |
time is not enough. |
76 |
|
77 |
Best regards |
78 |
Andrea Arteaga |
79 |
|
80 |
[1] http://wp.me/pzWEm-8A |