{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T08:40:33Z","timestamp":1743064833415,"version":"3.40.3"},"publisher-location":"Cham","reference-count":14,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031506833"},{"type":"electronic","value":"9783031506840"}],"license":[{"start":{"date-parts":[[2024,1,1]],"date-time":"2024-01-01T00:00:00Z","timestamp":1704067200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2024,1,1]],"date-time":"2024-01-01T00:00:00Z","timestamp":1704067200000},"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":[[2024]]},"DOI":"10.1007\/978-3-031-50684-0_22","type":"book-chapter","created":{"date-parts":[[2024,4,15]],"date-time":"2024-04-15T10:02:09Z","timestamp":1713175329000},"page":"282-293","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["An Approach to\u00a0Performance Portability Through Generic Programming"],"prefix":"10.1007","author":[{"given":"Andreas","family":"Hadjigeorgiou","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Christodoulos","family":"Stylianou","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mich\u00e8le","family":"Weiland","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Dirk Jacob","family":"Verschuur","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jacob","family":"Finkenrath","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2024,4,16]]},"reference":[{"key":"22_CR1","doi-asserted-by":"crossref","unstructured":"Ang, J.A., et. al.: Abstract machine models and proxy architectures for exascale computing, Lawrence Berkeley National Laboratory (2014)","DOI":"10.1109\/Co-HPC.2014.4"},{"key":"22_CR2","doi-asserted-by":"crossref","unstructured":"Beckingsale, D.A., et al.: RAJA: portable performance for large-scale scientific applications. In: IEEE\/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC), Denver, CO, USA (2019)","DOI":"10.1109\/P3HPC49587.2019.00012"},{"issue":"12","key":"22_CR3","doi-asserted-by":"publisher","first-page":"3202","DOI":"10.1016\/j.jpdc.2014.07.003","volume":"74","author":"H Carter","year":"2014","unstructured":"Carter, H., et al.: Kokkos: enabling manycore performance portability through polymorphic memory access patterns. J. Parall. Distrib. Comput. 74(12), 3202\u20133216 (2014)","journal-title":"J. Parall. Distrib. Comput."},{"key":"22_CR4","doi-asserted-by":"crossref","unstructured":"Deakin, T., et al.: Performance portability across diverse computing architectures. In: IEEE\/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC), Denver, CO, USA (2019)","DOI":"10.1109\/P3HPC49587.2019.00006"},{"key":"22_CR5","doi-asserted-by":"crossref","unstructured":"Deakin, T., et al.: Evaluating attainable memory bandwidth of parallel programming models via BabelStream. Int. J. Comput. Sci. Eng. Special issue 17(3), 247\u2013262 (2018)","DOI":"10.1504\/IJCSE.2018.095847"},{"key":"22_CR6","doi-asserted-by":"publisher","first-page":"169","DOI":"10.1007\/978-3-319-73897-0_10","volume-title":"The Essence of Software Engineering","author":"W Hasselbring","year":"2018","unstructured":"Hasselbring, W.: Software architecture: past, present, future. In: The Essence of Software Engineering, pp. 169\u2013184. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-73897-0_10"},{"key":"22_CR7","unstructured":"Iglberger, K.: C++ Software Design: Design Principles and Patterns for High-Quality Software. O\u2019Reilly Media Inc, 1005 (2022)"},{"key":"22_CR8","doi-asserted-by":"publisher","first-page":"90","DOI":"10.1109\/MCSE.2018.021651343","volume":"20","author":"NA Johanson","year":"2018","unstructured":"Johanson, N.A.: Software engineering for computational science: past, present, future. Comput. Sci. Eng. 20, 90\u2013109 (2018)","journal-title":"Comput. Sci. Eng."},{"issue":"6","key":"22_CR9","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3354584","volume":"52","author":"Y Lilis","year":"2019","unstructured":"Lilis, Y., Savidis, A.: A survey of metaprogramming languages. ACM Comput. Surv. 52(6), 1\u201339 (2019)","journal-title":"ACM Comput. Surv."},{"key":"22_CR10","doi-asserted-by":"crossref","unstructured":"Prabhu, P., et al.: A survey of the practice of computational science. In: Association for Computing Machinery, New York, NY, USA, Article 19, 1\u201312 (2011)","DOI":"10.1145\/2063348.2063374"},{"key":"22_CR11","unstructured":"Rompf, T., et al.: Go Meta! a case for generative programming and DSLs in performance critical systems. In: 1st Summit on Advances in Programming Languages (SNAPL 2015), Asilomar, CA, USA, May 3\u20136 (2015)"},{"key":"22_CR12","unstructured":"Stroustrup, B.: The C++ Programming Language, Fourth Edition, ch. 17, pp. 481\u2013526. Addison-Wesley (2013)"},{"issue":"10","key":"22_CR13","doi-asserted-by":"publisher","first-page":"3007","DOI":"10.1109\/TPDS.2017.2703149","volume":"28","author":"D Unat","year":"2017","unstructured":"Unat, D., et al.: Trends in data locality abstractions for HPC systems. IEEE Trans. Parall. Distrib. Syst. 28(10), 3007\u20133020 (2017)","journal-title":"IEEE Trans. Parall. Distrib. Syst."},{"key":"22_CR14","doi-asserted-by":"crossref","unstructured":"Stylianou, C., Weiland, M.: Exploiting dynamic sparse matrices for performance portable linear algebra operations. In: 2022 IEEE\/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC). Los Alamitos, CA, USA: IEEE Computer Society, Nov 2022, pp. 47\u201357 (2022)","DOI":"10.1109\/P3HPC56579.2022.00010"}],"container-title":["Lecture Notes in Computer Science","Euro-Par 2023: Parallel Processing Workshops"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-50684-0_22","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,5,7]],"date-time":"2024-05-07T17:04:05Z","timestamp":1715101445000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-50684-0_22"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024]]},"ISBN":["9783031506833","9783031506840"],"references-count":14,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-50684-0_22","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2024]]},"assertion":[{"value":"16 April 2024","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"Euro-Par","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"European Conference on Parallel Processing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Limassol","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Cyprus","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":"28 August 2023","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"1 September 2023","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"europar2023","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/2023.euro-par.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"easychair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"164","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":"49","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":"30% - 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.98","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","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":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}