skip to main content
research-article

Algorithm 880: A testing infrastructure for symmetric tridiagonal eigensolvers

Published: 25 July 2008 Publication History

Abstract

LAPACK is often mentioned as a positive example of a software library that encapsulates complex, robust, and widely used numerical algorithms for a wide range of applications. At installation time, the user has the option of running a (limited) number of test cases to verify the integrity of the installation process. On the algorithm developer's side, however, more exhaustive tests are usually performed to study algorithm behavior on a variety of problem settings and also computer architectures. In this process, difficult test cases need to be found that reflect particular challenges of an application or push algorithms to extreme behavior. These tests are then assembled into a comprehensive collection, therefore making it possible for any new or competing algorithm to be stressed in a similar way. This article describes an infrastructure for exhaustively testing the symmetric tridiagonal eigensolvers implemented in LAPACK. It consists of two parts: a selection of carefully chosen test matrices with particular idiosyncrasies and a portable testing framework that allows for easy testing and data processing. The tester facilitates experiments with algorithmic choices, parameter and threshold studies, and performance comparisons on different architectures.

Supplementary Material

ZIP File (880.zip)
Software for A testing infrastructure for symmetric tridiagonal eigensolvers

References

[1]
Abramowitz, M. and Stegun, I. A. 1965. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables 9th Ed. Dover, New York, NY.
[2]
Anderson, E., Bai, Z., Bischof, C., Blackford, S., Demmel, J., Dongarra, J., Croz, J. D., Greenbaum, A., Hammarling, S., McKenney, A., and Sorensen, D. 1999. LAPACK User's Guide 3rd Ed. SIAM, Philadelphia, PA.
[3]
ANSI/IEEE 1985. IEEE Standard for Binary Floating Point Arithmetic, Std 754-1985 ed. ANSI/IEEE, New York, NY.
[4]
Apra, E. et al. 2005. NWChem, a computational chemistry package for parallel computers, version 4.7. Tech. rep., Pacific Northwest National Laboratory, Richland, WA.
[5]
Bai, Z., Day, D., Demmel, J. W., and Dongarra, J. J. 1997. A test matrix collection for non-Hermitian eigenvalue problems. Tech. rep. UT-CS-97-355, University of Tennessee, Knoxville, TN.
[6]
Bai, Z., Demmel, J., Dongarra, J., Ruhe, A., and van der Vorst, H. 2000. Templates for the Solution of Algebraic Eigenvalue Problems—A practical guide. SIAM, Philadelphia, PA.
[7]
Browne, S., Dongarra, J., Garner, N., Ho, G., and Mucci, P. 2000. A portable programming interface for performance evaluation on modern processors. Int. J. High Perf. Comput. Appl. 14, 3, 189--204.
[8]
Bunch, J., Nielsen, P., and Sorensen, D. 1978. Rank-one modification of the symmetric eigenproblem. Numer. Math. 31, 31--48.
[9]
Clement, P. A. 1959. A class of triple-diagonal matrices for test purposes. SIAM Rev. 1, 50--52.
[10]
Cuppen, J. J. M. 1981. A divide and conquer method for the symmetric tridiagonal eigenproblem. Numer. Math. 36, 177--195.
[11]
Davis, T. A. 1994--2007. University of Florida Sparse Matrix Collection. NA Digest 92, 42; NA Digest 96, 28; NA Digest 97, 23.
[12]
Demmel, J. W. 1997. Applied Numerical Linear Algebra. SIAM, Philadelphia, PA.
[13]
Demmel, J. W., Marques, O. A., Parlett, B. N., and Vömel, C. 2006. Lapack working note 183: Performance and accuracy of LAPACK's symmetric tridiagonal eigensolvers. Tech. rep., University of California, Berkeley.
[14]
Demmel, J. W. and McKenney, A. 1989. A test matrix generation suite. Tech. rep. Computer Science Department, Courant Institute, New York, NY.
[15]
Dhillon, I. S. 1997. A new O(n2) algorithm for the symmetric tridiagonal eigenvalue/eigenvector problem. Ph.D. thesis, University of California, Berkeley, CA.
[16]
Dhillon, I. S. 1998. Current inverse iteration software can fail. BIT 38:4, 685--704.
[17]
Dhillon, I. S., Fann, G., and Parlett, B. N. 1997. Application of a new algorithm for the symmetric eigenproblem to computational quantum chemistry. In Proceedings of the 8th SIAM Conference on Parallel Processing for Scientific Computing. SIAM, Philadelphia, PA.
[18]
Dhillon, I. S. and Parlett, B. N. 2004a. Multiple representations to compute orthogonal eigenvectors of symmetric tridiagonal matrices. Linear Algebra Appl. 387, 1--28.
[19]
Dhillon, I. S. and Parlett, B. N. 2004b. Orthogonal eigenvectors and relative gaps. SIAM J. Matrix Analy. Appl. 25, 3, 858--899.
[20]
Dhillon, I. S., Parlett, B. N., and Vömel, C. 2005. Glued matrices and the MRRR algorithm. SIAM J. Sci. Comput. 27, 2, 496--510.
[21]
Dhillon, I. S., Parlett, B. N., and Vömel, C. 2006. The design and implementation of the MRRR algorithm. ACM Trans. Math. Softw. 32, 4, 533--560.
[22]
Dongarra, J. J., Moore, S., Mucci, P., Seymour, K., Terpstra, D., and You, H. 2007. Performance Application Programming Interface (PAPI). http://icl.cs.utk.edu/papi/.
[23]
Duff, I. S., Grimes, R. G., and Lewis, J. G. 1989. Sparse matrix test problems. ACM Trans. Math. Softw. 15, 1--14.
[24]
Duff, I. S., Grimes, R. G., and Lewis, J. G. 1992. Users' guide for the Harwell-Boeing sparse matrix collection (Release I). Tech. rep. RAL-TR-92-086, Atlas Centre, Rutherford Appleton Laboratory.
[25]
Duff, I. S., Grimes, R. G., and Lewis, J. G. 1997. The Rutherford-Boeing sparse matrix collection. Tech. rep. RAL-TR-97-031, Atlas Centre, Rutherford Appleton Laboratory: Tech. rep. ISSTECH-97-017 from Boeing Information & Support Services; Report TR/PA/97/36 from CERFACS, Toulouse.
[26]
Gautschi, W. 1994. Algorithm 726: ORTHPOL--a package of routines for generating orthogonal polynomials and Gauss-type quadrature rules. ACM Trans. Math. Software 20, 1, 21--62.
[27]
Gautschi, W. 2002. The interplay between classical analysis and (numerical) linear algebra—a tribute to Gene H. Golub. Electr. Trans. Num. Analy. 13, 119--147.
[28]
Gautschi, W. 2004. Orthogonal Polynomials: Computation and Approximation. Oxford University Press, Oxford, UK.
[29]
Gautschi, W. 2005. Orthogonal polynomials (in Matlab). J. Comput. Appl. Math. 178, 215--234.
[30]
Godunov, S. K., Antonov, A. G., Kiriljuk, O. P., and Kostin, V. I. 1993. Guaranteed Accuracy in Numerical Linear Algebra. Kluwer Academic, Dordrecht, The Netherlands.
[31]
Golub, G. H. 1973. Some modified matrix eigenvalue problems. SIAM Rev. 15, 318--334.
[32]
Golub, G. H. and van Loan, C. 1996. Matrix Computations 3rd Ed. The John Hopkins University Press, Baltimore, MD.
[33]
Gragg, W. B. and Harrod, W. J. 1984. The numerically stable reconstruction of Jacobi spectral data. Numer. Math. 44, 317--336.
[34]
Gregory, R. and Karney, D. 1969. A Collection of Matrices for Testing Computational Algorithms. Wiley, New York, NY.
[35]
Gu, M. and Eisenstat, S. C. 1994. A stable and efficient algorithm for the rank-one modification of the symmetric eigenproblem. SIAM J. Matrix Analy. Appl. 15, 4, 1266--1276.
[36]
Gu, M. and Eisenstat, S. C. 1995. A divide-and-conquer algorithm for the symmetric tridiagonal eigenproblem. SIAM J. Matrix Analy. Appl. 16, 1, 172--191.
[37]
Hansen, P. C. 1995. Test matrices for regularization methods. SIAM J. Sci. Comput. 16, 2, 506--512.
[38]
Higham, N. J. 1991. Algorithm 694: A collection of test matrices in MATLAB. ACM Trans. Math. Softw. 17, 3, 289--305.
[39]
IEEE 754 2002. IEEE Standard for Binary Floating Point Arithmetic Revision. grouper.ieee.org/groups/754.
[40]
Ipsen, I. C. F. 1997. Computing an eigenvector with inverse iteration. SIAM Rev. 39, 2, 254--291.
[41]
Kendall, R. A., Aprà, E., Bemholdt, D. E., et al. 2000. High Performance Computational Chemistry: An overview of NWChem a distributed parallel application. Comput. Phys. Comm. 128, 260--283.
[42]
Lee, C. R. and Stewart, G. W. 2006. Eigentest: A test matrix generator for large-scale eigenproblems. UMIACS TR-2006-07, CMSC TR-4783, University of Maryland, College Park, MD.
[43]
Marques, O. A., Riedy, E. J., and Vömel, C. 2006. Benefits of IEEE-754 features in modern symmetric tridiagonal eigensolvers. SIAM J. Sci. Comput. 28, 5, 1613--1633.
[44]
Matsekh, A. M. 2005. The Godunov-inverse iteration: A fast and accurate solution to the symmetric tridiagonal eigenvalue problem. Appl. Numer. Math. 54, 2, 208--221.
[45]
Overton, M. 2001. Numerical Computing with IEEE Floating Point Arithmetic. SIAM, Philadelphia, PA.
[46]
Parlett, B. N. 1998. The Symmetric Eigenvalue Problem. SIAM, Philadelphia, PA.
[47]
Parlett, B. N. and Dhillon, I. S. 1997. Fernando's solution to Wilkinson's problem: An application of double factorization. Linear Algebra Appl. 267, 247--279.
[48]
Parlett, B. N. and Dhillon, I. S. 2000. Relatively robust representations of symmetric tridiagonals. Linear Algebra Appl. 309, 1--3, 121--151.
[49]
Parlett, B. N. and Vömel, C. 2007. The spectrum of a glued matrix. Tech. rep. University of California, Berkeley. Submitted.
[50]
Wilkinson, J. H. 1965. The Algebraic Eigenvalue Problem. Oxford University Press, Oxford, UK.

Cited By

View all
  • (2024)Numerical eigen-spectrum slicing, accurate orthogonal eigen-basis, and mixed-precision eigenvalue refinement using OpenMP data-dependent tasks and accelerator offloadThe International Journal of High Performance Computing Applications10.1177/1094342024128105038:6(671-691)Online publication date: 23-Sep-2024
  • (2023)Advancing the distributed Multi-GPU ChASE library through algorithm optimization and NCCL libraryProceedings of the SC '23 Workshops of the International Conference on High Performance Computing, Network, Storage, and Analysis10.1145/3624062.3624249(1688-1696)Online publication date: 12-Nov-2023
  • (2022)ChASEProceedings of the Platform for Advanced Scientific Computing Conference10.1145/3539781.3539792(1-12)Online publication date: 27-Jun-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Mathematical Software
ACM Transactions on Mathematical Software  Volume 35, Issue 1
July 2008
136 pages
ISSN:0098-3500
EISSN:1557-7295
DOI:10.1145/1377603
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 July 2008
Accepted: 01 November 2007
Revised: 01 September 2007
Received: 01 October 2006
Published in TOMS Volume 35, Issue 1

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. Eigenvalues
  2. LAPACK
  3. accuracy
  4. design
  5. eigenvectors
  6. implementation
  7. numerical software
  8. performance
  9. symmetric matrix
  10. test matrices
  11. testing

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Numerical eigen-spectrum slicing, accurate orthogonal eigen-basis, and mixed-precision eigenvalue refinement using OpenMP data-dependent tasks and accelerator offloadThe International Journal of High Performance Computing Applications10.1177/1094342024128105038:6(671-691)Online publication date: 23-Sep-2024
  • (2023)Advancing the distributed Multi-GPU ChASE library through algorithm optimization and NCCL libraryProceedings of the SC '23 Workshops of the International Conference on High Performance Computing, Network, Storage, and Analysis10.1145/3624062.3624249(1688-1696)Online publication date: 12-Nov-2023
  • (2022)ChASEProceedings of the Platform for Advanced Scientific Computing Conference10.1145/3539781.3539792(1-12)Online publication date: 27-Jun-2022
  • (2021)A Parallel Structured Divide-and-Conquer Algorithm for Symmetric Tridiagonal Eigenvalue ProblemsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2020.301947132:2(367-378)Online publication date: 1-Feb-2021
  • (2021)A fast spectral divide‐and‐conquer method for banded matricesNumerical Linear Algebra with Applications10.1002/nla.236528:4Online publication date: 8-Mar-2021
  • (2020)Discovering discrepancies in numerical librariesProceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3395363.3397380(488-501)Online publication date: 18-Jul-2020
  • (2020)Bidiagonal SVD Computation via an Associated Tridiagonal EigenproblemACM Transactions on Mathematical Software10.1145/336174646:2(1-25)Online publication date: 19-May-2020
  • (2018)An efficient hybrid tridiagonal divide-and-conquer algorithm on distributed memory architecturesJournal of Computational and Applied Mathematics10.1016/j.cam.2018.05.051344(512-520)Online publication date: Dec-2018
  • (2017)Computing the Bidiagonal SVD Through an Associated Tridiagonal EigenproblemHigh Performance Computing for Computational Science – VECPAR 201610.1007/978-3-319-61982-8_8(64-74)Online publication date: 14-Jul-2017
  • (2016)Matrix Depot: an extensible test matrix collection for JuliaPeerJ Computer Science10.7717/peerj-cs.582(e58)Online publication date: 6-Apr-2016
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media