Mostrar o rexistro simple do ítem
A new thread-level speculative automatic parallelization model and library based on duplicate code execution
dc.contributor.author | Álvarez Martínez, Millán | |
dc.contributor.author | Fraguela, Basilio B. | |
dc.contributor.author | Cabaleiro, José Carlos | |
dc.contributor.author | Rivera, Francisco F. | |
dc.date.accessioned | 2024-04-18T09:06:27Z | |
dc.date.available | 2024-04-18T09:06:27Z | |
dc.date.issued | 2024-03-11 | |
dc.identifier.citation | Martínez, M.A., Fraguela, B.B., Cabaleiro, J.C. et al. A new thread-level speculative automatic parallelization model and library based on duplicate code execution. J Supercomput (2024). https://doi.org/10.1007/s11227-024-05987-0 | es_ES |
dc.identifier.issn | 1573-0484 | |
dc.identifier.issn | 0920-8542 | |
dc.identifier.uri | http://hdl.handle.net/2183/36240 | |
dc.description | Funding for open access charge: Universidade da Coruña/CISUG | es_ES |
dc.description.abstract | Loop-efficient automatic parallelization has become increasingly relevant due to the growing number of cores in current processors and the programming effort needed to parallelize codes in these systems efficiently. However, automatic tools fail to extract all the available parallelism in irregular loops with indirections, race conditions or potential data dependency violations, among many other possible causes. One of the successful ways to automatically parallelize these loops is the use of speculative parallelization techniques. This paper presents a new model and the corresponding C++ library that supports the speculative automatic parallelization of loops in shared memory systems, seeking competitive performance and scalability while keeping user effort to a minimum. The primary speculative strategy consists of redundantly executing chunks of loop iterations in a duplicate fashion. Namely, each chunk is executed speculatively in parallel to obtain results as soon as possible and sequentially in a different thread to validate the speculative results. The implementation uses C++11 threads and it makes intensive use of templates and advanced multithreading techniques. An evaluation based on various benchmarks confirms that our proposal provides a competitive level of performance and scalability. | es_ES |
dc.description.sponsorship | Open Access funding provided thanks to the CRUE-CSIC agreement with Springer Nature. This research was supported by Grants PID2019-104184RB-I00, PID2019-104834GB-I00, PID2022-141623NB-I00, and PID2022-136435NB-I00, funded by MCIN/AEI/ 10.13039/501100011033, PID2022 also funded by "ERDF A way of making Europe", EU, and the predoctoral Grant of Millán Álvarez Ref. BES-2017-081320, and by the Xunta de Galicia co-founded by the European Regional Development Fund (ERDF) under the Consolidation Programme of Competitive Reference Groups (ED431C 2021/30 and ED431C 2022/16). Funding for open access charge: Universidade da Coruña/CISUG. We also acknowledge the support from the Centro Singular de Investigación de Galicia "CITIC" and the Centro Singular de Investigación en Tecnoloxías Intelixentes "CiTIUS", funded by Xunta de Galicia and the European Union (European Regional Development Fund- Galicia 2014-2020 Program), by grants ED431G 2019/01 and ED431G 2019/04. We also acknowledge the Centro de Supercomputación de Galicia (CESGA). | es_ES |
dc.description.sponsorship | Xunta de Galicia; ED431C 2021/30 | es_ES |
dc.description.sponsorship | Xunta de Galicia; ED431C 2022/16 | es_ES |
dc.description.sponsorship | Xunta de Galicia; ED431G 2019/01 | es_ES |
dc.description.sponsorship | Xunta de Galicia; ED431G 2019/04 | es_ES |
dc.language.iso | eng | es_ES |
dc.publisher | Springer Nature | es_ES |
dc.relation | info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2017-2020/PID2019-104184RB-I00/ES/DESAFÍOS ACTUALES EN HPC: ARQUITECTURAS, SOFTWARE Y APLICACIONES | es_ES |
dc.relation | info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2017-2020/PID2019-104834GB-I00/ES/COMPUTACION DE ALTAS PRESTACIONES Y CLOUD PARA APLICACIONES DE ALTO INTERES | es_ES |
dc.relation | info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2021-2023/PID2022-141623NB-I00/ES/COMPUTACION DE ALTAS PRESTACIONES, HETEROGENEA Y EN LA NUBE PARA APLICACIONES DE ALTA DEMANDA | es_ES |
dc.relation | info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2021-2023/PID2022-136435NB-I00/ES/ARQUITECTURAS, FRAMEWORKS Y APLICACIONES DE LA COMPUTACION DE ALTAS PRESTACIONES | es_ES |
dc.relation | info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2017-2020/BES-2017-081320/ES/ | es_ES |
dc.relation.uri | https://doi.org/10.1007/s11227-024-05987-0 | es_ES |
dc.rights | Atribución 3.0 España | es_ES |
dc.rights.uri | http://creativecommons.org/licenses/by/3.0/es/ | * |
dc.subject | Speculative parallelism | es_ES |
dc.subject | Automatic parallelization | es_ES |
dc.subject | Thread-level speculation | es_ES |
dc.subject | Template metaprogramming | es_ES |
dc.title | A new thread-level speculative automatic parallelization model and library based on duplicate code execution | es_ES |
dc.type | info:eu-repo/semantics/article | es_ES |
dc.rights.access | info:eu-repo/semantics/openAccess | es_ES |
UDC.journalTitle | The Journal of Supercomputing | es_ES |
Ficheiros no ítem
Este ítem aparece na(s) seguinte(s) colección(s)
-
GI-GAC - Artigos [189]