{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,30]],"date-time":"2025-10-30T07:13:22Z","timestamp":1761808402586,"version":"3.41.0"},"reference-count":27,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2020,10,16]],"date-time":"2020-10-16T00:00:00Z","timestamp":1602806400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"ESSEX"},{"name":"German Research Council (DFG) under priority program","award":["1648"],"award-info":[{"award-number":["1648"]}]},{"name":"\u201cLarge-scale HPC Challenge\u201d project"},{"name":"JCAHPC"},{"name":"SPPEXA, \u201cSoftware for Exa-Scale\u201d"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Math. Softw."],"published-print":{"date-parts":[[2020,12,31]]},"abstract":"<jats:p>The increasing complexity of hardware and software environments in high-performance computing poses big challenges on the development of sustainable and hardware-efficient numerical software. This article addresses these challenges in the context of sparse solvers. Existing solutions typically target sustainability, flexibility, or performance, but rarely all of them.<\/jats:p>\n          <jats:p>Our new library PHIST provides implementations of solvers for sparse linear systems and eigenvalue problems. It is a productivity platform for performance-aware developers of algorithms and application software with abstractions that do not obscure the view on hardware-software interaction.<\/jats:p>\n          <jats:p>The PHIST software architecture and the PHIST development process were designed to overcome shortcomings of existing packages. An interface layer for basic sparse linear algebra functionality that can be provided by multiple backends ensures sustainability, and PHIST supports common techniques for improving scalability and performance of algorithms such as blocking and kernel fusion.<\/jats:p>\n          <jats:p>We showcase these concepts using the PHIST implementation of a block Jacobi-Davidson solver for non-Hermitian and generalized eigenproblems. We study its performance on a multi-core CPU, a GPU, and a large-scale many-core system. Furthermore, we show how an existing implementation of a block Krylov-Schur method in the Trilinos package Anasazi can benefit from the performance engineering techniques used in PHIST.<\/jats:p>","DOI":"10.1145\/3402227","type":"journal-article","created":{"date-parts":[[2020,10,16]],"date-time":"2020-10-16T22:30:30Z","timestamp":1602887430000},"page":"1-26","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":7,"title":["PHIST"],"prefix":"10.1145","volume":"46","author":[{"given":"Jonas","family":"Thies","sequence":"first","affiliation":[{"name":"German Aerospace Center (DLR), Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Melven","family":"R\u00f6hrig-Z\u00f6llner","sequence":"additional","affiliation":[{"name":"German Aerospace Center (DLR), Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nigel","family":"Overmars","sequence":"additional","affiliation":[{"name":"German Aerospace Center (DLR), Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Achim","family":"Basermann","sequence":"additional","affiliation":[{"name":"German Aerospace Center (DLR), Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Dominik","family":"Ernst","sequence":"additional","affiliation":[{"name":"University of Erlangen-Nuremberg, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Georg","family":"Hager","sequence":"additional","affiliation":[{"name":"University of Erlangen-Nuremberg, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gerhard","family":"Wellein","sequence":"additional","affiliation":[{"name":"University of Erlangen-Nuremberg, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2020,10,16]]},"reference":[{"key":"e_1_2_1_1_1","first-page":"2","article-title":"Tpetra, and the use of generic programming in scientific computing. Sci","volume":"20","author":"Baker C. G.","year":"2012","unstructured":"C. G. Baker and M. A. Heroux . 2012 . Tpetra, and the use of generic programming in scientific computing. Sci . Program. 20 , 2 (April 2012), 115--128. DOI:https:\/\/doi.org\/10.1155\/2012\/693861 C. G. Baker and M. A. Heroux. 2012. Tpetra, and the use of generic programming in scientific computing. Sci. Program. 20, 2 (April 2012), 115--128. DOI:https:\/\/doi.org\/10.1155\/2012\/693861","journal-title":"Program."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1527286.1527287"},{"key":"e_1_2_1_3_1","volume-title":"Retrieved","author":"Balay Satish","year":"2016","unstructured":"Satish Balay , Shrirang Abhyankar , Mark F. Adams , Jed Brown , Peter Brune , Kris Buschelman , Lisandro Dalcin , et\u00a0al. 2016 . PETSc Home Page . Retrieved September 13, 2020 from http:\/\/www.mcs.anl.gov\/petsc. Satish Balay, Shrirang Abhyankar, Mark F. Adams, Jed Brown, Peter Brune, Kris Buschelman, Lisandro Dalcin, et\u00a0al. 2016. PETSc Home Page. Retrieved September 13, 2020 from http:\/\/www.mcs.anl.gov\/petsc."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01930845"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1137\/080731992"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.parco.2015.06.005"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1137\/12086563X"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1391989.1391991"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.parco.2010.05.004"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cam.2012.07.024"},{"volume-title":"Proceedings of the Conference on Parallel Computational Fluid Dynamics (Parallel CFD\u201999)","author":"Gropp W. D.","key":"e_1_2_1_11_1","unstructured":"W. D. Gropp , D. K. Kaushik , D. E. Keyes , and B. F. Smith . 1999. Towards realistic performance bounds for implicit CFD codes . In Proceedings of the Conference on Parallel Computational Fluid Dynamics (Parallel CFD\u201999) . 233--240. W. D. Gropp, D. K. Kaushik, D. E. Keyes, and B. F. Smith. 1999. Towards realistic performance bounds for implicit CFD codes. In Proceedings of the Conference on Parallel Computational Fluid Dynamics (Parallel CFD\u201999). 233--240."},{"volume-title":"Modern Mathematical Models, Methods and Algorithms for Real World Systems","author":"Gutknecht Martin H.","key":"e_1_2_1_12_1","unstructured":"Martin H. Gutknecht . 2007. Block Krylov space methods for linear systems with multiple right-hand sides: An introduction . In Modern Mathematical Models, Methods and Algorithms for Real World Systems . Anamaya Publishers , New Delhi , India, 420--447. Martin H. Gutknecht. 2007. Block Krylov space methods for linear systems with multiple right-hand sides: An introduction. In Modern Mathematical Models, Methods and Algorithms for Real World Systems. Anamaya Publishers, New Delhi, India, 420--447."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1089014.1089019"},{"key":"e_1_2_1_14_1","volume-title":"An Overview of Trilinos. Technical Report SAND2003-2927","author":"Heroux Michael","year":"2003","unstructured":"Michael Heroux , Roscoe Bartlett , Vicki Howle Robert Hoekstra , Jonathan Hu , Tamara Kolda , Richard Lehoucq , et\u00a0al. 2003 . An Overview of Trilinos. Technical Report SAND2003-2927 . Sandia National Laboratories. http:\/\/trilinos.sandia.gov\/TrilinosOverview.pdf. Michael Heroux, Roscoe Bartlett, Vicki Howle Robert Hoekstra, Jonathan Hu, Tamara Kolda, Richard Lehoucq, et\u00a0al. 2003. An Overview of Trilinos. Technical Report SAND2003-2927. Sandia National Laboratories. http:\/\/trilinos.sandia.gov\/TrilinosOverview.pdf."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1089014.1089021"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1002\/gamm.201490038"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1137\/130930352"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10766-016-0464-z"},{"key":"e_1_2_1_20_1","doi-asserted-by":"crossref","unstructured":"R. Lehoucq D. Sorensen and C. Yang. 1998. ARPACK Users\u2019 Guide. Society for Industrial and Applied Mathematics. DOI:https:\/\/doi.org\/10.1137\/1.9780898719628  R. Lehoucq D. Sorensen and C. Yang. 1998. ARPACK Users\u2019 Guide. Society for Industrial and Applied Mathematics. DOI:https:\/\/doi.org\/10.1137\/1.9780898719628","DOI":"10.1137\/1.9780898719628"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1654059.1654096"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1137\/140976017"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1731022.1731031"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1137\/S1064827500370883"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1137\/S0895479800371529"},{"key":"e_1_2_1_27_1","volume-title":"et\u00a0al","author":"Thies J.","year":"2016","unstructured":"J. Thies , M. Galgon , F. Shahzad , A. Alvermann , M. Kreutzer , A. Pieper , M. R\u00f6hrig-Z\u00f6llner , et\u00a0al . 2016 . Towards an exascale enabled sparse solver repository. In Software for Exascale Computing\u2014SPPEXA 2013--2015, H.-J. Bungartz, P. Neumann, and W. E. Nagel (Eds.), Vol. 113 . Springer , 295--316. J. Thies, M. Galgon, F. Shahzad, A. Alvermann, M. Kreutzer, A. Pieper, M. R\u00f6hrig-Z\u00f6llner, et\u00a0al. 2016. Towards an exascale enabled sparse solver repository. In Software for Exascale Computing\u2014SPPEXA 2013--2015, H.-J. Bungartz, P. Neumann, and W. E. Nagel (Eds.), Vol. 113. Springer, 295--316."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1103\/RevModPhys.78.275"},{"key":"e_1_2_1_29_1","volume-title":"Roofline: An Insightful Visual Performance Model for Floating-Point Programs and Multicore Architectures. Technical Report UCB\/EECS-2008-134. EECS Department","author":"Williams S. W.","year":"2008","unstructured":"S. W. Williams , A. Waterman , and D. A. Patterson . 2008 . Roofline: An Insightful Visual Performance Model for Floating-Point Programs and Multicore Architectures. Technical Report UCB\/EECS-2008-134. EECS Department , University of California , Berkeley. http:\/\/www.eecs.berkeley.edu\/Pubs\/TechRpts\/2008\/EECS-2008-134.html. S. W. Williams, A. Waterman, and D. A. Patterson. 2008. Roofline: An Insightful Visual Performance Model for Floating-Point Programs and Multicore Architectures. Technical Report UCB\/EECS-2008-134. EECS Department, University of California, Berkeley. http:\/\/www.eecs.berkeley.edu\/Pubs\/TechRpts\/2008\/EECS-2008-134.html."}],"container-title":["ACM Transactions on Mathematical Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3402227","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3402227","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:41:34Z","timestamp":1750200094000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3402227"}},"subtitle":["A Pipelined, Hybrid-Parallel Iterative Solver Toolkit"],"short-title":[],"issued":{"date-parts":[[2020,10,16]]},"references-count":27,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2020,12,31]]}},"alternative-id":["10.1145\/3402227"],"URL":"https:\/\/doi.org\/10.1145\/3402227","relation":{},"ISSN":["0098-3500","1557-7295"],"issn-type":[{"type":"print","value":"0098-3500"},{"type":"electronic","value":"1557-7295"}],"subject":[],"published":{"date-parts":[[2020,10,16]]},"assertion":[{"value":"2018-11-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-05-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-10-16","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}