 |
Here we present a table of test results generated automatically by a
nightly script. The script comprehensively tests compilation and
execution of MTL on all currently supported platforms. Although MTL
itself is reasonable in size, there are a combinatorial number of data
structures that can be constructed from MTL components, as well as a
combinatorial number of algorithm / data structure combinations.
We test as many of these combinations as we can. Presently, there
are well over 350,000 separate tests invoked as part
of the test suite.
|
 |
The following components are included in the testing process.
- Element types
- complex<double>, double
- Rectangular storage
- array<linked_list>, array< compressed<> >, array<sparse_pair>, array<tree>, array< dense<> >, dense<>, compressed<>
- Banded shapes
- symmetric<lower>, symmetric<upper>, diagonal<>, triangle<lower>, triangle<unit_lower>, triangle<upper>, triangle<unit_upper>, banded<>
- Banded storage
- packed<>, array< dense<> >, banded<>, banded_view<>
- Orientations
- row_major,column_major
The test script tests all combinations of the above rectangular
storage types, orientation, and element types as well as all
combinations of banded shapes, banded storage, orientations, and
element types.
For each matrix type, the script builds a test program that tests
all of the MTL algorithms that are applicable to that
type (approximately 50 test routines for each data type). The test
program also tests for proper operation of all class member functions
and member data.
|