next up previous contents
Next: Timing the Singular Value Up: More About Timing Previous: Input File for Timing   Contents

Timing the Symmetric and Generalized Symmetric Eigenproblem

A separate input file drives the timing codes for the symmetric eigenproblem. The input file specifies

A goal of this timing code is to determine the values of NB which maximize the speed of the block algorithms.

The number and size of the input values are limited by certain program maximums which are defined in PARAMETER statements in the main timing program:



566#566

The computations that may be timed depend on whether the data is real or complex. For the REAL version the possible computations are

  1. SSYTRD (LAPACK reduction to symmetric tridiagonal form)
  2. SORGTR (LAPACK generation of orthogonal martrix as returned by SSYTRD)
  3. SORMTR (LAPACK multiplication of orthogonal matrix as returned by SSYTRD)
  4. SSTEQR(N) (LAPACK computation of eigenvalues only of a symmetric tridiagonal matrix)
  5. SSTEQR(V) (LAPACK computation of the eigenvalues and eigenvectors of a symmetric tridiagonal matrix)
  6. SSTERF (LAPACK computation of the eigenvalues only of a symmetric tridiagonal matrix using a square-root free algorithm)
  7. SPTEQR(COMPZ='N') (LAPACK computation of the eigenvalues of a symmetric positive definite tridiagonal matrix)
  8. SPTEQR(COMPZ='V') (LAPACK computation of the eigenvalues and eigenvectors of a symmetric positive definite tridiagonal matrix)
  9. SSTEBZ(RANGE='I') (LAPACK computation of the eigenvalues in a specified interval for a symmetric tridiagonal matrix)
  10. SSTEBZ(RANGE='V') (LAPACK computation of the eigenvalues in a half-open interval for a symmetric tridiagonal matrix)
  11. SSTEIN (LAPACK computation of the eigenvectors of a symmetric tridiagonal matrix corresponding to specified eigenvalues using inverse iteration)
  12. SSTEDC(COMPQ='N')
  13. SSTEDC(COMPQ='I')
  14. SSTEDC(COMPQ='V')
  15. SSTEGR(COMPQ='N')
  16. SSTEGR(COMPQ='V')
  17. TRED1 (EISPACK reduction to symmetric tridiagonal form, to be compared to SSYTRD)
  18. IMTQL1 (EISPACK computation of eigenvalues only of a symmetric tridiagonal matrix, to be compared to SSTEQR(N))
  19. IMTQL2 (EISPACK computation of eigenvalues and eigenvectors of a symmetric tridiagonal matrix, to be compared to SSTEQR(V))
  20. TQLRAT (EISPACK computation of eigenvalues only of a symmetric tridiagonal matrix, to be compared to SSTERF).
  21. TRIDIB (EISPACK computation of the eigenvalues of )(compare with SSTEBZ - RANGE='I')
  22. BISECT (EISPACK computation of the eigenvalues of )(compare with SSTEBZ - RANGE='V')
  23. TINVIT (EISPACK computation of the eigenvectors of a triangular matrix using inverse iteration) (compare with SSTEIN)

For complex matrices the possible computations are

  1. CHETRD (LAPACK reduction of a complex Hermitian matrix to real symmetric tridiagonal form)
  2. CSTEQR(N) (LAPACK computation of eigenvalues only of a symmetric tridiagonal matrix)
  3. CUNGTR+CSTEQR(V) (LAPACK computation of the eigenvalues and eigenvectors of a symmetric diagonal matrix)
  4. CPTEQR(VECT='N') (LAPACK computation of the eigenvalues only of a symmetric positive definite tridiagonal matrix)
  5. CUNGTR+CPTEQR(VECT='V') (LAPACK computation of the eigenvalues and eigenvectors of a symmetric positive definite tridiagonal matrix)
  6. SSTEBZ+CSTEIN+CUNMTR (LAPACK computation of the eigenvalues and eigenvectors of a symmetric tridiagonal matrix)
  7. CSTEDC(COMPQ='I')+CUNMTR
  8. CSTEGR(COMPQ='V')
  9. HTRIDI (EISPACK reduction to symmetric tridiagonal form, to be compared to CHETRD)
  10. IMTQL1 (EISPACK computation of eigenvalues only of a symmetric tridiagonal matrix, to be compared to CSTEQR(V))
  11. IMTQL2+HTRIBK (EISPACK computation of eigenvalues and eigenvectors of a complex Hermitian matrix given the reduction to real symmetric tridiagonal form, to be compared to CUNGTR+CSTEQR(V)).

Four different matrix types are provided for timing the symmetric eigenvalue routines. The matrices used for timing are of the form 567#567, where 98#98 is orthogonal and 282#282 is diagonal with entries

An annotated example of an input file for timing the REAL symmetric eigenproblem routines is shown below.

SEP:  Data file for timing Symmetric Eigenvalue Problem routines
5                               Number of values of N
10 20 40 60 80                  Values of N (dimension)
2                               Number of values of parameters
1  16                           Values of NB (blocksize)
81 81                           Values of LDA (leading dimension)
0.05                            Minimum time in seconds
4                               Number of matrix types
SST    T T T T T T T T T T T T T T T T T T T T T T T

The first line of the input file must contain the characters SEP in columns 1-3. Lines 2-8 are read using list-directed input and specify the following values:



568#568

If 0 565#565, then line 9 specifies NTYPES integer values which are the numbers of the matrix types to be used. The remaining lines specify a path name and the specific computations to be timed. For the symmetric eigenvalue problem, the path names for the four data types are SST, DST, CST, and ZST. The (optional) characters after the path name indicate the computations to be timed, as in the input file for the nonsymmetric eigenvalue problem.


next up previous contents
Next: Timing the Singular Value Up: More About Timing Previous: Input File for Timing   Contents
Susan Blackford 2001-08-13