{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,12]],"date-time":"2025-12-12T13:44:21Z","timestamp":1765547061615,"version":"3.40.3"},"publisher-location":"Cham","reference-count":25,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031320408"},{"type":"electronic","value":"9783031320415"}],"license":[{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2023]]},"DOI":"10.1007\/978-3-031-32041-5_5","type":"book-chapter","created":{"date-parts":[[2023,5,10]],"date-time":"2023-05-10T21:56:29Z","timestamp":1683755789000},"page":"86-105","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":6,"title":["Shallow Water DG Simulations on\u00a0FPGAs: Design and\u00a0Comparison of\u00a0a\u00a0Novel Code Generation Pipeline"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-8897-5205","authenticated-orcid":false,"given":"Christoph","family":"Alt","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5088-0267","authenticated-orcid":false,"given":"Tobias","family":"Kenter","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0009-1880-2822","authenticated-orcid":false,"given":"Sara","family":"Faghih-Naini","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jennifer","family":"Faj","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jan-Oliver","family":"Opdenh\u00f6vel","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5728-9982","authenticated-orcid":false,"given":"Christian","family":"Plessl","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1061-3084","authenticated-orcid":false,"given":"Vadym","family":"Aizinger","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6200-9321","authenticated-orcid":false,"given":"Jan","family":"H\u00f6nig","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6992-2690","authenticated-orcid":false,"given":"Harald","family":"K\u00f6stler","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2023,5,10]]},"reference":[{"issue":"1","key":"5_CR1","doi-asserted-by":"publisher","first-page":"67","DOI":"10.1016\/S0309-1708(01)00019-7","volume":"25","author":"V Aizinger","year":"2002","unstructured":"Aizinger, V., Dawson, C.: A discontinuous Galerkin method for two-dimensional flow and transport in shallow water. Adv. Water Resour. 25(1), 67\u201384 (2002). https:\/\/doi.org\/10.1016\/S0309-1708(01)00019-7","journal-title":"Adv. Water Resour."},{"key":"5_CR2","doi-asserted-by":"publisher","unstructured":"Bauer, M., et al.: Code generation for massively parallel phase-field simulations. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC 2019), pp. 1\u201332. Association for Computing Machinery, New York, NY, USA (2019). https:\/\/doi.org\/10.1145\/3295500.3356186","DOI":"10.1145\/3295500.3356186"},{"key":"5_CR3","doi-asserted-by":"publisher","unstructured":"Chi, Y., Cong, J.: Exploiting computation reuse for stencil accelerators. In: 2020 57th ACM\/IEEE Design Automation Conference (DAC), pp. 1\u20136. IEEE, San Francisco, CA, USA (2020). https:\/\/doi.org\/10.1109\/DAC18072.2020.9218680","DOI":"10.1109\/DAC18072.2020.9218680"},{"issue":"1","key":"5_CR4","doi-asserted-by":"publisher","first-page":"18","DOI":"10.1007\/s13137-022-00208-3","volume":"13","author":"S Faghih-Naini","year":"2022","unstructured":"Faghih-Naini, S., Aizinger, V.: p-adaptive discontinuous Galerkin method for the shallow water equations with a parameter-free error indicator. Int. J. Geomath. 13(1), 18 (2022). https:\/\/doi.org\/10.1007\/s13137-022-00208-3","journal-title":"Int. J. Geomath."},{"key":"5_CR5","doi-asserted-by":"publisher","DOI":"10.1016\/j.advwatres.2020.103552","volume":"138","author":"S Faghih-Naini","year":"2020","unstructured":"Faghih-Naini, S., Kuckuk, S., Aizinger, V., Zint, D., et al.: Quadrature-free discontinuous Galerkin method with code generation features for shallow water equations on automatically generated block-structured meshes. Adv. Water Resour. 138, 103552 (2020). https:\/\/doi.org\/10.1016\/j.advwatres.2020.103552","journal-title":"Adv. Water Resour."},{"key":"5_CR6","doi-asserted-by":"crossref","unstructured":"Faj, J., Plessl, C., Kenter, T., Faghih-Naini, S., Aizinger, V.: Scalable multi-FPGA design of a discontinuous Galerkin shallow-water model on unstructured meshes. In: Proceedings of the Platform for Advanced Scientific Computing Conference (PASC) (2023, to appear)","DOI":"10.1145\/3592979.3593407"},{"key":"5_CR7","doi-asserted-by":"publisher","unstructured":"de Fine Licht, J., Kuster, A., De Matteis, T., Ben-Nun, T., et al.: Stencilflow: mapping large stencil programs to distributed spatial computing systems. In: 2021 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), pp. 315\u2013326. IEEE (2021). https:\/\/doi.org\/10.1109\/CGO51591.2021.9370315","DOI":"10.1109\/CGO51591.2021.9370315"},{"key":"5_CR8","doi-asserted-by":"publisher","unstructured":"Gruber, T., Eitzinger, J., Hager, G., Wellein, G.: LIKWID. Zenodo (2022). https:\/\/doi.org\/10.5281\/ZENODO.7432487","DOI":"10.5281\/ZENODO.7432487"},{"key":"5_CR9","doi-asserted-by":"publisher","first-page":"308","DOI":"10.1016\/j.jcp.2019.01.032","volume":"384","author":"H Hajduk","year":"2019","unstructured":"Hajduk, H., Kuzmin, D., Aizinger, V.: New directional vector limiters for discontinuous Galerkin methods. J. Comput. Phys. 384, 308\u2013325 (2019). https:\/\/doi.org\/10.1016\/j.jcp.2019.01.032","journal-title":"J. Comput. Phys."},{"key":"5_CR10","unstructured":"Kenter, T.: Invited tutorial: OpenCL design flows for Intel and Xilinx FPGAs: using common design patterns and dealing with vendor-specific differences. In: Proc. Int. Workshop on FPGAs for Software Programmers (FSP), collocated with Int. Conf. on Field Programmable Logic and Applications (FPL) (2019)"},{"key":"5_CR11","doi-asserted-by":"publisher","unstructured":"Kenter, T., F\u00f6rstner, J., Plessl, C.: Flexible FPGA design for FDTD using OpenCL. In: Proc. Int. Conf. on Field Programmable Logic and Applications (FPL), pp. 1\u20137. IEEE (2017). https:\/\/doi.org\/10.23919\/FPL.2017.8056844","DOI":"10.23919\/FPL.2017.8056844"},{"key":"5_CR12","doi-asserted-by":"publisher","unstructured":"Kenter, T., et al.: OpenCL-based FPGA design to accelerate the nodal discontinuous Galerkin method for unstructured meshes. In: Proc. IEEE Symp. on Field-Programmable Custom Computing Machines (FCCM), pp. 189\u2013196. IEEE (2018). https:\/\/doi.org\/10.1109\/FCCM.2018.00037","DOI":"10.1109\/FCCM.2018.00037"},{"key":"5_CR13","doi-asserted-by":"publisher","unstructured":"Kenter, T., Shambhu, A., Faghih-Naini, S., Aizinger, V.: Algorithm-hardware co-design of a discontinuous Galerkin shallow-water model for a dataflow architecture on FPGA. In: Proceedings of the Platform for Advanced Scientific Computing Conference, pp. 1\u201311. ACM, Geneva, Switzerland (2021). https:\/\/doi.org\/10.1145\/3468267.3470617","DOI":"10.1145\/3468267.3470617"},{"issue":"6","key":"5_CR14","doi-asserted-by":"publisher","first-page":"2747","DOI":"10.1007\/s11227-018-2315-8","volume":"74","author":"F Kono","year":"2018","unstructured":"Kono, F., Nakasato, N., Hayashi, K., Vazhenin, A., Sedukhin, S.: Evaluations of OpenCL-written tsunami simulation on FPGA and comparison with GPU implementation. J. Supercomput. 74(6), 2747\u20132775 (2018). https:\/\/doi.org\/10.1007\/s11227-018-2315-8","journal-title":"J. Supercomput."},{"issue":"12","key":"5_CR15","doi-asserted-by":"publisher","first-page":"343","DOI":"10.3390\/a14120343","volume":"14","author":"M Lavrentiev","year":"2021","unstructured":"Lavrentiev, M., Lysakov, K., Marchuk, A., Oblaukhov, K., et al.: Algorithmic design of an FPGA-based calculator for fast evaluation of tsunami wave danger. Algorithms 14(12), 343 (2021). https:\/\/doi.org\/10.3390\/a14120343","journal-title":"Algorithms"},{"key":"5_CR16","series-title":"Lecture Notes in Computational Science and Engineering","doi-asserted-by":"publisher","first-page":"405","DOI":"10.1007\/978-3-030-47956-5_14","volume-title":"Software for Exascale Computing - SPPEXA 2016-2019","author":"C Lengauer","year":"2020","unstructured":"Lengauer, C., et al.: ExaStencils: advanced multigrid solver generation. In: Bungartz, H.-J., Reiz, S., Uekermann, B., Neumann, P., Nagel, W.E. (eds.) Software for Exascale Computing - SPPEXA 2016-2019. LNCSE, vol. 136, pp. 405\u2013452. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-47956-5_14"},{"key":"5_CR17","doi-asserted-by":"publisher","DOI":"10.7717\/peerj-cs.103","volume":"3","author":"A Meurer","year":"2017","unstructured":"Meurer, A., Smith, C.P., Paprocki, M., \u010cert\u00edk, O., et al.: SymPy: symbolic computing in python. PeerJ Comput. Sci. 3, e103 (2017). https:\/\/doi.org\/10.7717\/peerj-cs.103","journal-title":"PeerJ Comput. Sci."},{"key":"5_CR18","doi-asserted-by":"publisher","first-page":"153","DOI":"10.1016\/j.jpdc.2016.12.015","volume":"106","author":"K Nagasu","year":"2017","unstructured":"Nagasu, K., Sano, K., Kono, F., Nakasato, N.: FPGA-based tsunami simulation: Performance comparison with GPUs, and roofline model for scalability analysis. J. Parallel Distrib. Comput. 106, 153\u2013169 (2017). https:\/\/doi.org\/10.1016\/j.jpdc.2016.12.015","journal-title":"J. Parallel Distrib. Comput."},{"key":"5_CR19","doi-asserted-by":"publisher","first-page":"7","DOI":"10.1155\/2013\/428078","volume":"2013","author":"B Silva","year":"2013","unstructured":"Silva, B., Braeken, A., Touhafi, A., D\u2019Hollander, E.: Performance modeling for FPGAs: extending the roofline model with high-level synthesis tools. Int. J. Reconfigurable Comput. 2013, 7 (2013). https:\/\/doi.org\/10.1155\/2013\/428078","journal-title":"Int. J. Reconfigurable Comput."},{"issue":"8","key":"5_CR20","doi-asserted-by":"publisher","first-page":"1903","DOI":"10.1109\/TC.2021.3111761","volume":"71","author":"M Siracusa","year":"2022","unstructured":"Siracusa, M., Del Sozzo, E., Rabozzi, M., Di Tucci, L., et al.: A comprehensive methodology to optimize FPGA designs via the roofline model. IEEE Trans. Comput. 71(8), 1903\u20131915 (2022). https:\/\/doi.org\/10.1109\/TC.2021.3111761","journal-title":"IEEE Trans. Comput."},{"issue":"2","key":"5_CR21","doi-asserted-by":"publisher","first-page":"16","DOI":"10.1109\/MSSC.2018.2822862","volume":"10","author":"SMS Trimberger","year":"2018","unstructured":"Trimberger, S.M.S.: Three ages of FPGAs: a retrospective on the first thirty years of FPGA technology: this paper reflects on how Moore\u2019s law has driven the design of FPGAs through three epochs: the age of invention, the age of expansion, and the age of accumulation. IEEE Solid-State Circuits Mag. 10(2), 16\u201329 (2018). https:\/\/doi.org\/10.1109\/MSSC.2018.2822862","journal-title":"IEEE Solid-State Circuits Mag."},{"issue":"4","key":"5_CR22","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1145\/1498765.1498785","volume":"52","author":"S Williams","year":"2009","unstructured":"Williams, S., Waterman, A., Patterson, D.: Roofline: an insightful visual performance model for multicore architectures. Commun. ACM 52(4), 65\u201376 (2009). https:\/\/doi.org\/10.1145\/1498765.1498785","journal-title":"Commun. ACM"},{"key":"5_CR23","doi-asserted-by":"publisher","unstructured":"Zint, D., Grosso, R., Aizinger, V., Faghih-Naini, S., et al.: Automatic generation of load-balancing-aware block-structured grids for complex ocean domains. In: 30th International Meshing Roundtable (SIAM IMR 2022). Zenodo (2022). https:\/\/doi.org\/10.5281\/zenodo.6562440","DOI":"10.5281\/zenodo.6562440"},{"issue":"12","key":"5_CR24","doi-asserted-by":"publisher","first-page":"2108","DOI":"10.1134\/S0965542519120182","volume":"59","author":"D Zint","year":"2019","unstructured":"Zint, D., Grosso, R., Aizinger, V., K\u00f6stler, H.: Generation of block structured grids on complex domains for high performance simulation. Comput. Math. Math. Phys. 59(12), 2108\u20132123 (2019). https:\/\/doi.org\/10.1134\/S0965542519120182","journal-title":"Comput. Math. Math. Phys."},{"key":"5_CR25","doi-asserted-by":"publisher","unstructured":"Zohouri, H.R., Podobas, A., Matsuoka, S.: Combined spatial and temporal blocking for high-performance stencil computation on FPGAs using OpenCL. In: Proc. Int. Symp. on Field-Programmable Gate Arrays (FPGA 2018), pp. 153\u2013162. ACM, New York, NY, USA (2018). https:\/\/doi.org\/10.1145\/3174243.3174248","DOI":"10.1145\/3174243.3174248"}],"container-title":["Lecture Notes in Computer Science","High Performance Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-32041-5_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,12,12]],"date-time":"2023-12-12T16:02:39Z","timestamp":1702396959000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-32041-5_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023]]},"ISBN":["9783031320408","9783031320415"],"references-count":25,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-32041-5_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2023]]},"assertion":[{"value":"10 May 2023","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ISC High Performance","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on High Performance Computing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Hamburg","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Germany","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2023","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"21 May 2023","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"25 May 2023","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"38","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"supercomputing2023","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/www.isc-hpc.com\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Double-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Linklings","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"78","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"21","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"27% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3.74","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4.49","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}