Next: Send the Results to
Up: Run the LAPACK Timing
Previous: Timing the BLAS
Contents
Timing the Eigensystem Routines
The eigensystem timing program is found in LAPACK/TIMING/EIG
and the input files are in LAPACK/TIMING.
Four input files are provided in each data type for timing the
eigensystem routines,
one for the generalized nonsymmetric eigenvalue problem,
one for the nonsymmetric eigenvalue problem,
one for the symmetric and generalized symmetric eigenvalue problem,
and one for the singular value decomposition.
For the REAL version, the small data sets are called sgeptim_small.in,
sneptim_small.in, sseptim_small.in, and ssvdtim_small.in, respectively.
and the large data sets are called sgeptim_large.in, sneptim_large.in,
sseptim_large.in, and ssvdtim_large.in.
Each of the four input files reads a different set of parameters,
and the format of the input is indicated by a 3-character code
on the first line.
The timing program for eigenvalue/singular value routines accumulates
the operation count as the routines are executing using special
instrumented versions of the LAPACK routines. The first step in
compiling the timing program is therefore to make a library of the
instrumented routines.
- a)
- To make a library of the instrumented LAPACK routines, first
go to LAPACK/TIMING/EIG/EIGSRC and type make followed
by the data types desired, as in the examples of Section 5.3.
The library of instrumented code is created in
LAPACK/TIMING/EIG/eigsrc_PLAT.a,
where PLAT is the user-defined architecture suffix specified in the
file LAPACK/make.inc.
- b)
- To make the eigensystem timing programs,
go to LAPACK/TIMING/EIG and
type make followed by the data types desired, as in the examples
of Section 5.3. The executable files are called
xeigtims, xeigtimc, xeigtimd, and xeigtimz
and are created in LAPACK/TIMING.
- c)
- Go to LAPACK/TIMING and
make any necessary modifications to the input files.
You may need to set the minimum time a subroutine will
be timed to a positive value, or to restrict the number of tests
if you are using a computer with performance in between that of a
workstation and that of a supercomputer.
Instead of decreasing the matrix dimensions to reduce the time,
it would be better to reduce the number of matrix types to be timed,
since the performance varies more with the matrix size than with the
type. For example, for the nonsymmetric eigenvalue routines,
you could use only one matrix of type 4 instead of four matrices of
types 1, 3, 4, and 6.
Refer to LAPACK Working Note 41 [3] for further details.
- d)
- Run the programs for each data type you are using.
For the REAL version, the commands for the small data sets are
- xeigtims < sgeptim_small.in > sgeptim_small.out
- xeigtims < sneptim_small.in > sneptim_small.out
- xeigtims < sseptim_small.in > sseptim_small.out
- xeigtims < ssvdtim_small.in > ssvdtim_small.out
or the commands for the large data sets are
- xeigtims < sgeptim_large.in > sgeptim_large.out
- xeigtims < sneptim_large.in > sneptim_large.out
- xeigtims < sseptim_large.in > sseptim_large.out
- xeigtims < ssvdtim_large.in > ssvdtim_large.out
Similar commands should be used for the other data types.
Next: Send the Results to
Up: Run the LAPACK Timing
Previous: Timing the BLAS
Contents
Julie Langou
2007-02-26