(Matrix * Matrix) Multiplication Timing Results:
 
Non-optimized builds (SRT_QUAL = default) Optimized builds (SRT_QUAL = maxopt)
5x5 Matrix 6x6 Matrix 5x5 Matrix 6x6 Matrix
LinearAlgebra
Matrix * Matrix
Matrices not specialized
Matrices not declared symmetric
[tsnmul01]
Min: 8.22 secs (8.22 µsecs)
Max: 8.3 secs (8.3 µsecs)
Min: 12.8 secs (12.8 µsecs)
Max: 13 secs (13 µsecs)
Min: 7.75 secs (7.75  µsecs)
Max: 7.82 secs (7.82 µsecs)
Min: 12.2 secs (12.2 µsecs)
Max: 12.3 secs (12.3 µsecs)
LinearAlgebra
Matrix * Matrix
Matrices not specialized
Matrices declared symmetric
[tsnmul01]
Min: 11.9 secs (11.9 µsecs)
Max: 12.1 secs (12.1 µsecs)
Min: 18.9 secs (18.9 µsecs)
Max: 19.2 secs (19.2 µsecs)
Min: 11.8 secs (11.8  µsecs)
Max: 12 secs (12 µsecs)
Min: 11.8 secs (11.8  µsecs)
Max: 12 secs (12 µsecs)
LinearAlgebra
Matrix * Matrix
Matrices specialized
Matrices not declared symmetric
[tsnmul01]
Min: 2.49 secs (2.49 µsecs)
Max: 2.6 secs (2.6 µsecs)
Min: 3.54 secs (3.54 µsecs)
Max: 3.7 secs (3.7 µsecs)
Min: 2.52 secs (2.52  µsecs)
Max: 2.61 secs (2.61 µsecs)
Min: 3.51 secs (3.51  µsecs)
Max: 3.65 secs (3.65 µsecs)
LinearAlgebra
Matrix * Matrix
Matrices specialized
Matrices declared symmetric
[tsnmul01]
Min: 12.2 secs (12.2 µsecs)
Max: 12.4 secs (12.4 µsecs)
Min: 19.5 secs (19.5 µsecs)
Max: 19.7 secs (19.7 µsecs)
Min: 11.7 secs (11.7 µsecs)
Max: 12 secs (12 µsecs)
Min: 18.9 secs (18.9 µsecs)
Max: 19.1 secs (19.1 µsecs)
CLHEP
HepMatrix * HepMatrix
[tsnmul02]
Min: 6.96 secs (6.96 µsecs)
Max: 7.08 secs (7.08 µsecs)
Min: 8.72 secs (8.72 µsecs)
Max: 8.85 secs (8.85 µsecs)
Min: 6.94 secs (6.94 µsecs)
Max: 7.06 secs (7.06 µsecs)
Min: 8.77 secs (8.77 µsecs)
Max: 8.95 secs (8.95 µsecs)
CLHEP
HepSymMatrix * HepSymMatrix
[tsnmul03]
Min: 10.13 secs (10.13 µsecs)
Max: 10.29 secs (10.29 µsecs)
Min: 16.28 secs (16.28 µsecs)
Max: 16.55 secs (16.55 µsecs)
Min: 10.23 secs (10.23 µsecs)
Max: 10.35 secs (10.35 µsecs)
Min: 16.86 secs (16.86 µsecs)
Max: 17.09 secs (17.09 µsecs)

All timings are based on 1,000,000 multiplications.
The first number is the time for all the multiplications while the time in parenthesis is the time for 1 multiplication.
The string in the bracket is the name of the test module build for the particular test.
When the results say "Non-Optimized builds," then all the libraries and the test module were build with the "SRT_QUAL" variable having the "default" value.
When the results say "Optimized builds," then all the libraries and the test module were build with the "SRT_QUAL" variable having the "maxopt" value.
 

Matrices used in the tests:

LinearAlgebra:
both 5x5 matrices:
     1e+03                    4                    6                    8                  10
             4         1.1e+03                  16                  18                  20
             6                  16         1.2e+03                  28                  30
             8                  18                  28         1.3e+03                  40
           10                  20                  30                  40         1.4e+03
both 6x6 matrices:
     1e+03                    4                    6                    8                  10                  12
             4         1.1e+03                  18                  20                  22                  24
             6                  18         1.2e+03                  32                  34                  36
             8                  20                  32         1.3e+03                  46                  48
            10                 22                  34                  46         1.4e+03                  60
            12                 24                  36                  48                  60         1.5e+03

CLHEP:
both 5x5 matrices:
         1000                4                6                8              10
               4          1100              16              18              20
               6              16          1200              28              30
               8              18              28          1300              40
             10              20              30              40          1400
both 6x6 matrices:
         1000                4                6                8              10              12
               4          1100              18              20              22              24
               6              18          1200              32              34              36
               8              20              32          1300              46              48
             10              22              34              46          1400              60
             12              24              36              48              60          1500

CovMatrices:
both 5x5 matrices:
  +1.0000000000e+03
  +4.0000000000e+00   +1.1000000000e+03
  +6.0000000000e+00   +1.6000000000e+01   +1.2000000000e+03
  +8.0000000000e+00   +1.8000000000e+01   +2.8000000000e+01   +1.3000000000e+03
  +1.0000000000e+01   +2.0000000000e+01   +3.0000000000e+01   +4.0000000000e+01   +1.4000000000e+03
both 6x6 matrices:
  +1.0000000000e+03
  +4.0000000000e+00   +1.1000000000e+03
  +6.0000000000e+00   +1.8000000000e+01   +1.2000000000e+03
  +8.0000000000e+00   +2.0000000000e+01   +3.2000000000e+01   +1.3000000000e+03
  +1.0000000000e+01   +2.2000000000e+01   +3.4000000000e+01   +4.6000000000e+01   +1.4000000000e+03
  +1.2000000000e+01   +2.4000000000e+01   +3.6000000000e+01   +4.8000000000e+01   +6.0000000000e+01   +1.5000000000e+03
 

Testing system specs:

CPU: 500 MHz PentiumIII (Katmai)
Memory: 128MB SDRAM
Cache: 512KB
Hard Disk: IBM 13677MB
Video Card: 16MB Diamond Viper TNT 1.95E

OS: Fermi Linux Release 6.1.1 (Strange)
Kernel: 2.2.16-3 on an i686
X-Server: XFree86 Version 11.0 Release 3360
 

Nick Macks

Tests were compiled and build using GCC 3.0.1