The execution time of a symmetric eigendecomposition depends upon the application, the algorithm, the implementation, and the computer. Symmetric eigensolvers are used in a variety of applications, and the requirements of the eigensolver vary from application to application. Many different algorithms can be used to perform a symmetric eigendecompostion, each with differing computational properties. Different implementations of the same algorithm may also have greatly differing computational properties. The computer on which the eigensolver is run not only affects execution time but may favor certain algorithms and implementations over others.

This thesis explains the performance of the ScaLAPACK symmetric eigensolver, the algorithms that it uses, and other important algorithms for solving the symmetric eigenproblem on today's fastest computers. We offer advice on how to pick the best eigensolver for particular situations and propose a design for the next ScaLAPACK symmetric eigensolver which will offer greater flexibility and 50% better performance.




Download Full History