{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,21]],"date-time":"2026-08-21T18:29:35Z","timestamp":1787336975307,"version":"build-2736575974"},"reference-count":27,"publisher":"Society for Industrial & Applied Mathematics (SIAM)","issue":"6","funder":[{"name":"ARCHER2 UK National Supercomputing Service"},{"name":"Swiss Platform for Advanced Scientific Computing"},{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["1931524"],"award-info":[{"award-number":["1931524"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100000015","name":"U.S. Department of Energy","doi-asserted-by":"publisher","award":["DE-AC02-06CH11357"],"award-info":[{"award-number":["DE-AC02-06CH11357"]}],"id":[{"id":"10.13039\/100000015","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/R029423\/1"],"award-info":[{"award-number":["EP\/R029423\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/W029731\/1"],"award-info":[{"award-number":["EP\/W029731\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/W026066\/1"],"award-info":[{"award-number":["EP\/W026066\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["SIAM J. Sci. Comput."],"published-print":{"date-parts":[[2024,12,31]]},"abstract":"<jats:p>Abstract.<\/jats:p>\n                  <jats:p>In this work, we introduce a new algorithm for N-to-M checkpointing in finite element simulations. This new algorithm allows efficient saving\/loading of functions representing physical quantities associated with the mesh representing the physical domain. Specifically, the algorithm allows for using different numbers of parallel processes for saving and loading, allowing for restarting and postprocessing on the process count appropriate to the given phase of the simulation and other conditions. For demonstration, we implemented this algorithm in PETSc, the Portable, Extensible Toolkit for Scientific Computation, and added a convenient high-level interface into Firedrake, a system for solving partial differential equations using finite element methods. We evaluated our new implementation by saving and loading data involving 8.2 billion finite element degrees of freedom using 8,192 parallel processes on ARCHER2, the UK National Supercomputing Service.<\/jats:p>\n                  <jats:p>Reproducibility of computational results. This paper has been awarded the \u201cSIAM Reproducibility Badge: Code and data available\u201d as a recognition that the authors have followed reproducibility principles valued by SISC and the scientific computing community. Code and data that allow readers to reproduce the results in this paper are available at https:\/\/zenodo.org\/records\/7675345 . [Formula: see text]<\/jats:p>","DOI":"10.1137\/23m1613724","type":"journal-article","created":{"date-parts":[[2024,11,21]],"date-time":"2024-11-21T04:31:27Z","timestamp":1732163487000},"page":"B830-B859","source":"Crossref","is-referenced-by-count":2,"title":["Efficient N-to-M Checkpointing Algorithm for Finite Element Simulations"],"prefix":"10.1137","volume":"46","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-9545-9110","authenticated-orcid":true,"given":"David A.","family":"Ham","sequence":"first","affiliation":[{"name":"Department of Mathematics, Imperial College London, London SW7 2AZ, UK."}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Vaclav","family":"Hapla","sequence":"additional","affiliation":[{"name":"Department of Earth and Planetary Sciences, ETH Zurich, 8092 Zurich, Switzerland, and Department of Applied Mathematics, FEECS at VSB-TU Ostrava, 708 00 Ostrava, Czech Republic."}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2292-0735","authenticated-orcid":true,"given":"Matthew G.","family":"Knepley","sequence":"additional","affiliation":[{"name":"Department of Computer Science and Engineering, University of Buffalo, Getzville, NY 14068 USA."}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8062-1453","authenticated-orcid":true,"given":"Lawrence","family":"Mitchell","sequence":"additional","affiliation":[{"name":"NVIDIA Corporation, Santa Clara, CA 95051 USA."}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5570-4951","authenticated-orcid":true,"given":"Koki","family":"Sagiyama","sequence":"additional","affiliation":[{"name":"Department of Mathematics, Imperial College London, London SW7 2AZ, UK."}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"351","published-online":{"date-parts":[[2024,11,21]]},"reference":[{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1145\/2566630"},{"key":"ref2","doi-asserted-by":"publisher","DOI":"10.1515\/jnma-2022-0054"},{"key":"ref3","unstructured":"S. Balay, S. Abhyankar, M. F. Adams, S. Benson, J. Brown, P. Brune, K. Buschelman, E. Constantinescu, L. Dalcin, A. Dener, V. Eijkhout, W. D. Gropp, V. Hapla, T. Isaac, P. Jolivet, D. Karpeev, D. Kaushik, M. G. Knepley, F. Kong, S. Kruger, D. A. May, L. C. McInnes, R. T. Mills, L. Mitchell, T. Munson, J. E. Roman, K. Rupp, P. Sanan, J. Sarich, B. F. Smith, S. Zampini, H. Zhang, H. Zhang, and J. Zhang, PETSc\/TAO Users Manual, Technical Report ANL-21\/39 - Revision 3.16, Argonne National Laboratory, 2021, https:\/\/petsc.org\/release\/docs\/manual\/."},{"key":"ref4","unstructured":"S. Balay, S. Abhyankar, M. F. Adams, S. Benson, J. Brown, P. Brune, K. Buschelman, E. M. Constantinescu, L. Dalcin, A. Dener, V. Eijkhout, W. D. Gropp, V. Hapla, T. Isaac, P. Jolivet, D. Karpeev, D. Kaushik, M. G. Knepley, F. Kong, S. Kruger, D. A. May, L. C. McInnes, R. T. Mills, L. Mitchell, T. Munson, J. E. Roman, K. Rupp, P. Sanan, J. Sarich, B. F. Smith, S. Zampini, H. Zhang, H. Zhang, and J. Zhang, PETSc Web page, 2021, https:\/\/petsc.org\/."},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4612-1986-6_8"},{"key":"ref6","volume-title":"Lattice Theory","author":"Birkhoff G.","year":"1948"},{"key":"ref7","doi-asserted-by":"publisher","DOI":"10.1137\/100791634"},{"key":"ref8","unstructured":"firedrake zenodo, Software used in \u2018Scalable HDF5 I\/O for Firedrake and PETSc\u2019 (Firedrake_20230224.1), 2023, https:\/\/doi.org\/10.5281\/zenodo.7675345."},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1002\/nme.2579"},{"key":"ref10","volume-title":"Firedrake User Manual","author":"Ham D. A.","year":"2023"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1137\/20M1332748"},{"key":"ref12","unstructured":"D. Henty, benchio, https:\/\/github.com\/davidhenty\/benchio. Accessed 2023-07-03."},{"key":"ref13","unstructured":"M. Homolya, R. C. Kirby, and D. A. Ham, Exposing and Exploiting Structure: Optimal Code Generation for High-Order Finite Element Methods, https:\/\/arxiv.org\/abs\/1711.02473, 2017."},{"key":"ref14","unstructured":"T. Isaac and M. G. Knepley, Support for Non-conformal Meshes in PETSc\u2019s DMPlex Interface, https:\/\/arxiv.org\/abs\/1508.02470, 2015."},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1109\/PDP.2011.16"},{"key":"ref16","unstructured":"G. Karypis, K. Schloegel, and V. Kumar, PARMETIS: Parallel Graph Partitioning and Sparse Matrix Ordering Library, Technical Report 97-060, University of Minnesota, 1997, https:\/\/hdl.handle.net\/11299\/215345."},{"key":"ref17","doi-asserted-by":"publisher","DOI":"10.1145\/1039813.1039820"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1155\/2009\/948613"},{"key":"ref19","unstructured":"M. Lange, M. G. Knepley, and G. J. Gorman, Flexible, scalable mesh and data management using PETSc DMPlex, in Proceedings of the 3rd International Conference on Exascale Applications and Software, EASC \u201915, GBR, University of Edinburgh, 2015, pp. 71\u201376, https:\/\/dl.acm.org\/doi\/abs\/10.5555\/2820083.2820097."},{"key":"ref20","doi-asserted-by":"publisher","DOI":"10.1137\/15M1026092"},{"key":"ref21","doi-asserted-by":"publisher","DOI":"10.1016\/j.softx.2022.101202"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-24855-9"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1145\/2998441"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1137\/08073901X"},{"key":"ref25","author":"Sagiyama K.","year":"2022","journal-title":"Scalable I\/O and Checkpointing for Firedrake"},{"key":"ref26","unstructured":"The HDF Group, The HDF Group, HDF5. https:\/\/www.hdfgroup.org\/solutions\/hdf5\/. Accessed 2023-07-03."},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2021.3084070"}],"container-title":["SIAM Journal on Scientific Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/epubs.siam.org\/doi\/pdf\/10.1137\/23M1613724","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,8,21]],"date-time":"2026-08-21T17:39:00Z","timestamp":1787333940000},"score":1,"resource":{"primary":{"URL":"https:\/\/epubs.siam.org\/doi\/10.1137\/23M1613724"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,11,21]]},"references-count":27,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2024,12,31]]}},"alternative-id":["10.1137\/23M1613724"],"URL":"https:\/\/doi.org\/10.1137\/23m1613724","relation":{},"ISSN":["1064-8275","1095-7197"],"issn-type":[{"value":"1064-8275","type":"print"},{"value":"1095-7197","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,11,21]]}}}