MXV is a FORTRAN90 program which sets up several matrix vector multiplication problems y=A*x, and carries them out using
The user is allowed to specify M and N, the number of matrix rows and columns.
mxv m n
M N FLOP doIdoJ doJdoI MATMUL
10 10 100 8 11 3
10 100 1,000 27 29 32
100 10 1,000 23 31 32
10 1,000 10,000 35 33 172
100 100 10,000 31 36 200
1,000 10 10,000 42 54 277
10 10,000 100,000 18 33 159
10,000 10 100,000 25 34 176
10 100,000 1,000,000 16 32 142
100 10,000 1,000,000 6 37 174
1,000 1,000 1,000,000 17 40 234
10,000 100 1,000,000 28 37 171
100,000 10 1,000,000 24 33 88
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
F90_INTRINSICS is a directory of FORTRAN90 programs which illustrate the use of FORTRAN90 intrinsic functions.
LINPACK_BENCH is a FORTRAN90 program which measures the time needed to factor and solve a "large" (N=1000) dense linear system of equations, and is used as a benchmark.
MATMUL is a FORTRAN90 program which is an interactive matrix multiplication benchmark program.
MDBNCH is a FORTRAN77 program which is a benchmark molecular simulation calculation.
MXV is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.
MXV_OPEN_MP is a FORTRAN90 program which compares the performance of plain vanilla Fortran and the FORTRAN90 intrinsic routine MATMUL, for the matrix multiplication problem y=A*x, with and without parallelization by OpenMP.
SUM_MILLION is a FORTRAN90 program which sums the integers from 1 to 1,000,000, as a demonstration of how to rate a computer's speed;
TIMER is a directory of FORTRAN90 programs which demonstrate how to compute CPU time or elapsed time.
You can go up one level to the FORTRAN90 source codes.