Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Anasazi software for the numerical solution of large-scale eigenvalue problems

Published: 23 July 2009 Publication History

Abstract

Anasazi is a package within the Trilinos software project that provides a framework for the iterative, numerical solution of large-scale eigenvalue problems. Anasazi is written in ANSI C++ and exploits modern software paradigms to enable the research and development of eigensolver algorithms. Furthermore, Anasazi provides implementations for some of the most recent eigensolver methods. The purpose of our article is to describe the design and development of the Anasazi framework. A performance comparison of Anasazi and the popular FORTRAN 77 code ARPACK is given.

References

[1]
Absil, P.-A., Baker, C. G., and Gallivan, K. A. 2007. Trust-region methods on Riemannian manifolds. Found. Comput. Math. 7, 3, 303--330.
[2]
Anderson, E., Bai, Z., Bischof, C., Blackford, S., Demmel, J., Dongarra, J., Croz, J. D., Greenbaum, A., Hammarling, S., McKenney, A., Ostrouchov, S., and Sorensen, D. 1999. LAPACK Users' Guide, 3rd Ed. SIAM, Philadelphia.
[3]
Arbenz, P., Hetmaniuk, U., Lehoucq, R., and Tuminaro, R. 2005. A comparison of eigensolvers for large-scale 3D modal analysis using AMG-preconditioned iterative methods. Int. J. Numer. Meth. Engng. 64, 204--236.
[4]
Baker, C. G., Hetmaniuk, U., Lehoucq, R. B., and Thornquist, H. K. Anasazi: Block eigensolver package documentation. http://trilinos.sandia.gov/trilinos/packages/anasazi/index.html.
[5]
Balay, S., Buschelman, K., Gropp, W. D., Kaushik, D., Knepley, M. G., McInnes, L. C., Smith, B. F., and Zhang, H. 2001. PETSc Web page. http://www.mcs.anl.gov/petsc.
[6]
Bartlett, R., Boggs, P., Coffey, T., Heroux, M., Hoekstra, R., Howle, V., Long, K., Pawlowski, R., Phipps, E., Spotz, B., Thornquist, H., and Williams, A. Thyra: Interfaces for abstract numerical algorithms. http://trilinos.sandia.gov/trilinos/packages/thyra/.
[7]
Bartlett, R. A. 2004. Teuchos::RCP Beginner's Guide. Tech. rep. SAND2004-3268. Sandia National Laboratories, Albugusberg.
[8]
Bhardwaj, M., Pierson, K., Reese, G., Walsh, T., Day, D., Alvin, K., Peery, J., Farhat, C., and Lesoinne, M. 16-22 Nov. 2002. Salinas: A scalable software for high-performance structural and solid mechanics simulations. In Proceedings of the ACM/IEEE Conference on Supercomputing. 35--35.
[9]
Blackford, L. S., Demmel, J., Dongarra, J., Duff, I., Hammarling, S., Henry, G., Heroux, M., Kaufman, L., Lumsdaine, A., Petitet, A., Pozo, R., Remington, K., and Whaley, R. C. 2002. An updated set of basic linear algebra subprograms (BLAS). ACM Trans. Math. Softw. 28, 2, 135--151.
[10]
Daniel, J., Gragg, W. B., Kaufman, L., and Stewart, G. W. 1976. Reorthogonalization and stable algorithms for updating the Gram--Schmidt QR factorization. Math. Computat. 30, 772--795.
[11]
Detlefs, D. 1992. Garbage collection and run-time typing as a C++ library. In Proceedings: USENIX C++ Technical Conference, USENIX, Ed. USENIX, pub-USENIX:adr, 37--56.
[12]
Embree, M. and Lehoucq, R. B. 2007. Dynamical systems and non-Hermitian iterative eigensolvers. SIAM J. Numer. Anal. 47, 1445--1473, DOI 10.1137/07070187x.
[13]
Hernández, V., Román, J., Tomás, A., and Vidal, V. 2005. A survey of software for sparse eigenvalue problems. Tech. rep. SLEPc Technical Report STR-6. Universidad Politecnica de Valencia, Valencia, Spain. http://www.grycap.upv.es/slepc.
[14]
Hernández, V., Román, J., Tomás, A., and Vidal, V. 2006. SLEPc users manual: Scalable library for eigenvalue problem computations. Tech. rep. DISC-II/24/02. Universidad Politecnica de Valencia, Valencia, Spain. http://www.grycap.upv.es/slepc.
[15]
Heroux, M., Hoekstra, R., Sexton, P., Spotz, B., Willenbring, J., and Williams, A. Epetra: Linear algebra services package. http://trilinos.sandia.gov/trilinos/packages/epetra/.
[16]
Heroux, M. A., Baker, C. G., Bartlett, R. A., Kampschoff, K., Long, K. R., Sexton, P. M., and Thornquist, H. K. Teuchos: The Trilinos tools library. http://trilinos.sandia.gov/trilinos/packages/teuchos/.
[17]
Heroux, M. A., Bartlett, R. A., Howle, V. E., Hoekstra, R. J., Hu, J. J., Kolda, T. G., Lehoucq, R. B., Long, K. R., Pawlowski, R. P., Phipps, E. T., Salinger, A. G., Thornquist, H. K., Tuminaro, R. S., Willenbring, J. M., Williams, A., and Stanley, K. S. 2005. An overview of the Trilinos project. ACM Trans. Math. Softw. 31, 3, 397--423.
[18]
Hetmaniuk, U. and Lehoucq, R. 2006. Basis selection in LOBPCG. J. Comput. Phys. 218, 324--332.
[19]
Knyazev, A. V. 2001. Toward the optimal preconditioned eigensolver: Locally optimal block preconditioned conjugate gradient method. SIAM J. Sci. Comput. 23, 517--541.
[20]
Lawson, C. L., Hanson, R. J., Kincaid, D. R., and Krogh, F. T. 1979. Basic linear algebra subprograms for Fortran usage. ACM Trans. Math. Softw. 5, 3, 308--323.
[21]
Lehoucq, R. B., Sorensen, D. C., and Yang, C. 1998. ARPACK Users' Guide: Solution of Large-Scale Eigenvalue Problems with Implicitly Restarted Arnoldi Methods. SIAM, Philadelphia.
[22]
Meyers, N. C. 1995. Traits: A new and useful template technique. C++ Rep. 7, 32--35.
[23]
Morgan, R. B. and Scott, D. S. 1986. Generalizations of Davidson's method for computing eigenvalues of sparse symmetric matrices. SIAM J. Sci. Comput. 7, 817--825.
[24]
Musser, D. R. and Stepanov, A. A. 1994. Algorithm-oriented generic libraries. Softw. Pract. Exper. 24, 7, 623--642.
[25]
Saad, Y. 1992. Numerical Methods for Large Eigenvalue Problems. John Wiley and Sons, New York.
[26]
Sala, M., Heroux, M. A., and Day, D. M. 2004. Trilinos tutorial. Tech. rep. SAND2004-2189. Sandia National Laboratories, Albuquerque.
[27]
Salinger, A. G., Burroughs, E. A., Pawlowski, R. P., Phipps, E. T., and Romero, L. A. 2005. Bifurcation tracking algorithms and software for large-scale applications. Int. J. Bifurcat. Chaos 15, 1015--1032.
[28]
Sleijpen, G. L. G. and van der Vorst, H. A. 1996. A Jacobi-Davidson iteration method for linear eigenvalue problems. SIAM J. Matrix Anal. Appl. 17, 2, 401--425.
[29]
Sorensen, D. 2002. Numerical Methods for Large Eigenvalue Problems. Acta Numerica, vol. 11. Cambridge University Press, Cambridge, 519--584.
[30]
Sorensen, D. C. 1992. Implicit application of polynomial filters in a k-step Arnoldi method. SIAM J. Matrix Anal. Appl. 13, 357--385.
[31]
Stathopoulos, A. and McCombs, J. R. 2006. PRIMME home page. http://www.cs.wm.edu/~andreas/software/.
[32]
Stathopoulos, A. and Wu, K. 2002. A block orthogonalization procedure with constant synchronization requirements. SIAM J. Sci. Comput. 23, 2165--2182.
[33]
Stewart, G. W. 2001a. A Krylov-Schur algorithm for large eigenproblems. SIAM J. Matrix Anal. Appl. 23, 601--614.
[34]
Stewart, G. W. 2001b. Matrix Systems: Eigensystems. vol. II. SIAM, Philadelphia.
[35]
van der Vorst, H. A. 2002. Computational methods for large eigenvalue problems. In P. Ciarlet and J. Lions, Eds. Handbook of Numerical Analysis, vol. VIII. North-Holland (Elsevier), Amsterdam, The Netherlands, 3--179.
[36]
Vandevoorde, D. and Josuttis, N. M. 2002. C++ Templates. Addison-Wesley Longman Publishing Co., Inc., Reading.
[37]
Veldhuizen, T. 1996. Using C++ trait classes for scientific computing. http://oonumerics.org/blitz/traits.html.

Cited By

View all
  • (2024)Superexchange coupling of donor qubits in siliconPhysical Review Applied10.1103/PhysRevApplied.21.01403821:1Online publication date: 22-Jan-2024
  • (2023)Orthogonal Layers of Parallelism in Large-Scale Eigenvalue ComputationsACM Transactions on Parallel Computing10.1145/361444410:3(1-31)Online publication date: 22-Sep-2023
  • (2023)Parallel Software for Million-scale Exact Kernel RegressionProceedings of the 37th International Conference on Supercomputing10.1145/3577193.3593737(313-323)Online publication date: 21-Jun-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Mathematical Software
ACM Transactions on Mathematical Software  Volume 36, Issue 3
July 2009
122 pages
ISSN:0098-3500
EISSN:1557-7295
DOI:10.1145/1527286
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: 23 July 2009
Accepted: 01 October 2008
Revised: 01 January 2008
Received: 01 January 2007
Published in TOMS Volume 36, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Eigenvalue problems
  2. generic programming
  3. large-scale scientific computing
  4. numerical algorithms
  5. object-oriented programming

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)25
  • Downloads (Last 6 weeks)3
Reflects downloads up to 12 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Superexchange coupling of donor qubits in siliconPhysical Review Applied10.1103/PhysRevApplied.21.01403821:1Online publication date: 22-Jan-2024
  • (2023)Orthogonal Layers of Parallelism in Large-Scale Eigenvalue ComputationsACM Transactions on Parallel Computing10.1145/361444410:3(1-31)Online publication date: 22-Sep-2023
  • (2023)Parallel Software for Million-scale Exact Kernel RegressionProceedings of the 37th International Conference on Supercomputing10.1145/3577193.3593737(313-323)Online publication date: 21-Jun-2023
  • (2023)Fast Spectral Graph Partitioning with a Randomized Eigensolver2023 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC58863.2023.10363585(1-7)Online publication date: 25-Sep-2023
  • (2022)Recovery of Distributed Iterative Solvers for Linear Systems Using Non-Volatile RAM2022 IEEE/ACM 12th Workshop on Fault Tolerance for HPC at eXtreme Scale (FTXS)10.1109/FTXS56515.2022.00007(11-23)Online publication date: Nov-2022
  • (2021)Sphynx: A parallel multi-GPU graph partitioner for distributed-memory systemsParallel Computing10.1016/j.parco.2021.102769106(102769)Online publication date: Sep-2021
  • (2021)Application of the augmented block Householder Arnoldi method to the calculation of non-fundamental modes of the diffusion equationAnnals of Nuclear Energy10.1016/j.anucene.2020.107912151(107912)Online publication date: Feb-2021
  • (2020)Comparison of Numerical Methods and Open-Source Libraries for Eigenvalue Analysis of Large-Scale Power SystemsApplied Sciences10.3390/app1021759210:21(7592)Online publication date: 28-Oct-2020
  • (2020)PHISTACM Transactions on Mathematical Software10.1145/340222746:4(1-26)Online publication date: 16-Oct-2020
  • (2020)SPHYNX: Spectral Partitioning for HYbrid aNd aXelerator-enabled systems2020 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)10.1109/IPDPSW50202.2020.00082(440-449)Online publication date: May-2020
  • 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

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media