LINPACK_BENCH is a FORTRAN77 program, using single or double precision, that carries out the LINPACK Benchmark.
The LINPACK benchmark is a test problem used to rate the performance of a computer on a simple linear algebra problem.
The test problem requires the user to set up a random dense matrix A of size N = 1000, and a right hand side vector B which is the product of A and a vector X of all 1's. The first task is to compute an LU factorization of A. The second task is to use the LU factorization to solve the linear system
A * X = B.
The number of floating point operations required for these two tasks is roughly
ops = 2 * N*N*N / 3 + 2 * N * N,therefore, the "MegaFLOPS" rating, or millions of floating point operations per second, can be found as
mflops = ops / ( cpu * 1000000 ).
| Language | Precision | Type | Machine | Comment | MegaFLOPS |
|---|---|---|---|---|---|
| Fortran77 | Single | Real | DHCP95 (Apple G5) | gfortran | 221 |
| Fortran77 | Double | Real | DHCP95 (Apple G5) | gfortran | 202 |
LINPACK is a FORTRAN90 library which supplies the solvers used by LINPACK_BENCH.
LINPACK_BENCH is also available in a C version and a C++ version and a FORTRAN90 version and a JAVA version and a MATLAB version.
MATMUL is an executable FORTRAN90 program which is an interactive matrix multiplication benchmark program.
MDBNCH is an executable FORTRAN77 program which is a benchmark code for a molecular dynamics calculation.
MEMORY_TEST is a FORTRAN90 program which declares and uses a sequence of larger and larger vectors, to see how big a vector can be used on a given machine and compiler.
TIMER is a FORTRAN77 example which demonstrates how to measure CPU time or elapsed time.
LINPACK_BENCH_S is the single precision version:
LINPACK_BENCH_D is the double precision version:
This is the list of routines for the double precision version of the benchmark program. The single precision names are similar.
You can go up one level to the FORTRAN77 source codes.