Abstract
A task-based parallel algorithm for reordering the eigenvalues of a matrix in real Schur form is presented. The algorithm is realized on top of the StarPU runtime system. Only the aspects which are relevant for shared memory machines are discussed here, but the implementation can be configured to run on distributed memory machines as well. Various techniques to reduce the overhead and the core idle time are discussed. Computational experiments indicate that the new algorithm is between 1.5 and 6.6 times faster than a state of the art MPI-based implementation found in ScaLAPACK. With medium to large matrices, strong scaling efficiencies above 60% up to 28 CPU cores are reported. The overhead and the core idle time are shown to be negligible with the exception of the smallest matrices and highest core counts.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
The word tile is used here to differentiate the diagonal \(1 \times 1\) and \(2 \times 2\) blocks from the data partitioning blocks/tiles.
References
LAPACK—Linear Algebra PACKage. http://www.netlib.org/lapack/
ScaLAPACK—Scalable Linear Algebra PACKage. http://www.netlib.org/scalapack/
StarPU—A Unified Runtime System for Heterogeneous Multicore Architectures. http://starpu.gforge.inria.fr/
Bai, Z., Demmel, J.W.: On swapping diagonal blocks in real Schur form. Linear Algebra Appl. 186, 73–95 (1993). https://doi.org/10.1016/0024-3795(93)90286-W
Granat, R., Kågström, B., Kressner, D.: Parallel eigenvalue reordering in real Schur forms. Concurr. Comput.: Pract. Exp. 21(9), 1225–1250 (2009). https://doi.org/10.1002/cpe.1386
Kressner, D.: Block algorithms for reordering standard and generalized Schur forms. ACM Trans. Math. Softw. 32(4), 521–532 (2006). https://doi.org/10.1145/1186785.1186787
Myllykoski, M., Kjelgaard Mikkelsen, C.C., Karlsson, L., Kågström, B.: Task-based parallel algorithms for eigenvalue reordering of matrices in real Schur form. NLAFET Working Note WN-11, April 2017. Also as Report UMINF 17.11, Department of Computing Science, Umeå University, SE-901 87 Umeå, Sweden
Acknowledgements
This work is part of a project that has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 671633 (NLAFET). Support has also been received from eSSENCE, a collaborative e-Science program funded by the Swedish Government via the Swedish Research Council (VR). The author would like to extend his gratitude to Asst. Prof. Lars Karlsson and Dr. Carl Christian Kjelgaard Mikkelsen for their valuable comments and suggestions. Moreover, the author would like to thank Lic. Björn Adlerborn, Prof. Daniel Kressner (EPFL) and Prof. Bo Kågström, who is coordinator and scientific director of the NLAFET project, as well as the StarPU development team for answering various question on StarPU. Finally, the author thanks the anonymous reviewers for their valuable feedback.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Myllykoski, M. (2018). A Task-Based Algorithm for Reordering the Eigenvalues of a Matrix in Real Schur Form. In: Wyrzykowski, R., Dongarra, J., Deelman, E., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2017. Lecture Notes in Computer Science(), vol 10777. Springer, Cham. https://doi.org/10.1007/978-3-319-78024-5_19
Download citation
DOI: https://doi.org/10.1007/978-3-319-78024-5_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-78023-8
Online ISBN: 978-3-319-78024-5
eBook Packages: Computer ScienceComputer Science (R0)