Asynchronous runtime with distributed manager for task-based programming models

Parallel task-based programming models, like OpenMP, allow application developers to easily create a parallel version of their sequential codes. The standard OpenMP 4.0 introduced the possibility of describing a set of data dependences per task that the runtime uses to order the tasks execution. Thi...

Descripción completa

Detalles Bibliográficos
Autores: Bosch Pons, Jaume|||0000-0002-4040-3416, Álvarez Martínez, Carlos|||0000-0003-0536-5183, Jiménez González, Daniel|||0000-0001-6064-7883, Martorell Bofill, Xavier|||0000-0002-0417-3430, Ayguadé Parra, Eduard|||0000-0002-5146-103X
Tipo de recurso: artículo
Fecha de publicación:2020
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/330058
Acceso en línea:https://hdl.handle.net/2117/330058
https://dx.doi.org/10.1016/j.parco.2020.102664
Access Level:acceso abierto
Palabra clave:Parallel programming (Computer science)
Application program interfaces (Computer software)
OmpSs
OpenMP
Task-based
Task-graph
Dependence manager
Runtime
Programació en paral·lel (Informàtica)
Interfícies de programació d'aplicacions (Programari)
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
id ES_d370f915d2600a0d40e6c9531b18522a
oai_identifier_str oai:upcommons.upc.edu:2117/330058
network_acronym_str ES
network_name_str España
repository_id_str
spelling Asynchronous runtime with distributed manager for task-based programming modelsBosch Pons, Jaume|||0000-0002-4040-3416Álvarez Martínez, Carlos|||0000-0003-0536-5183Jiménez González, Daniel|||0000-0001-6064-7883Martorell Bofill, Xavier|||0000-0002-0417-3430Ayguadé Parra, Eduard|||0000-0002-5146-103XParallel programming (Computer science)Application program interfaces (Computer software)OmpSsOpenMPTask-basedTask-graphDependence managerRuntimeProgramació en paral·lel (Informàtica)Interfícies de programació d'aplicacions (Programari)Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadorsParallel task-based programming models, like OpenMP, allow application developers to easily create a parallel version of their sequential codes. The standard OpenMP 4.0 introduced the possibility of describing a set of data dependences per task that the runtime uses to order the tasks execution. This order is calculated using shared graphs, which are updated by all threads in exclusive access using synchronization mechanisms (locks) to ensure the dependence management correctness. The contention in the access to these structures becomes critical in many-core systems because several threads may be wasting computation resources waiting their turn. This paper proposes an asynchronous management of the runtime structures, like task dependence graphs, suitable for task-based programming model runtimes. In such organization, the threads request actions to the runtime instead of doing them directly. The requests are then handled by a distributed runtime manager (DDAST) which does not require dedicated resources. Instead, the manager uses the idle threads to modify the runtime structures. The paper also presents an implementation, analysis and performance evaluation of such runtime organization. The performance results show that the proposed asynchronous organization outperforms the speedup obtained by the original runtime for different benchmarks and different many-core architectures.This work is partially supported by the European Union H2020 Research and Innovation Action (projects 801051, 754337 and 780681), by the Spanish Government (projects SEV-2015-0493 and TIN2015-65316-P, grant BES-2016-078046), and by the Generalitat de Catalunya (contracts 2017-SGR-1414 and 2017-SGR-1328).Peer Reviewed20202020-09-0120202020-10-08journal articlehttp://purl.org/coar/resource_type/c_6501AMhttp://purl.org/coar/version/c_ab4af688f83e57aainfo:eu-repo/semantics/articleapplication/pdfhttps://hdl.handle.net/2117/330058https://dx.doi.org/10.1016/j.parco.2020.102664reponame:UPCommons. Portal del coneixement obert de la UPCinstname:Universitat Politècnica de Catalunya (UPC)InglésengMinisterio de Economía y Competitividad http://doi.org/10.13039/501100003329 TIN2015-65316-P COMPUTACION DE ALTAS PRESTACIONES VIIEuropean Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 801051 European joint Effort toward a Highly Productive Programming Environment for Heterogeneous Exascale Computing (EPEEC)European Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 754337 Co-designed Innovation and System for Resilient Exascale Computing in Europe: From Applications to SiliconEuropean Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 780681 Low Energy Toolset for Heterogeneous ComputingMinisterio de Economía y Competitividad http://doi.org/10.13039/501100003329 SEV-2015-0493 BARCELONA SUPERCOMPUTING CENTER - CENTRO. NACIONAL DE SUPERCOMPUTACIONopen accesshttp://purl.org/coar/access_right/c_abf2Attribution-NonCommercial-NoDerivatives 4.0 Internationalhttps://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessoai:upcommons.upc.edu:2117/3300582026-05-27T15:37:01Z
dc.title.none.fl_str_mv Asynchronous runtime with distributed manager for task-based programming models
title Asynchronous runtime with distributed manager for task-based programming models
spellingShingle Asynchronous runtime with distributed manager for task-based programming models
Bosch Pons, Jaume|||0000-0002-4040-3416
Parallel programming (Computer science)
Application program interfaces (Computer software)
OmpSs
OpenMP
Task-based
Task-graph
Dependence manager
Runtime
Programació en paral·lel (Informàtica)
Interfícies de programació d'aplicacions (Programari)
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
title_short Asynchronous runtime with distributed manager for task-based programming models
title_full Asynchronous runtime with distributed manager for task-based programming models
title_fullStr Asynchronous runtime with distributed manager for task-based programming models
title_full_unstemmed Asynchronous runtime with distributed manager for task-based programming models
title_sort Asynchronous runtime with distributed manager for task-based programming models
dc.creator.none.fl_str_mv Bosch Pons, Jaume|||0000-0002-4040-3416
Álvarez Martínez, Carlos|||0000-0003-0536-5183
Jiménez González, Daniel|||0000-0001-6064-7883
Martorell Bofill, Xavier|||0000-0002-0417-3430
Ayguadé Parra, Eduard|||0000-0002-5146-103X
author Bosch Pons, Jaume|||0000-0002-4040-3416
author_facet Bosch Pons, Jaume|||0000-0002-4040-3416
Álvarez Martínez, Carlos|||0000-0003-0536-5183
Jiménez González, Daniel|||0000-0001-6064-7883
Martorell Bofill, Xavier|||0000-0002-0417-3430
Ayguadé Parra, Eduard|||0000-0002-5146-103X
author_role author
author2 Álvarez Martínez, Carlos|||0000-0003-0536-5183
Jiménez González, Daniel|||0000-0001-6064-7883
Martorell Bofill, Xavier|||0000-0002-0417-3430
Ayguadé Parra, Eduard|||0000-0002-5146-103X
author2_role author
author
author
author
dc.subject.none.fl_str_mv Parallel programming (Computer science)
Application program interfaces (Computer software)
OmpSs
OpenMP
Task-based
Task-graph
Dependence manager
Runtime
Programació en paral·lel (Informàtica)
Interfícies de programació d'aplicacions (Programari)
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
topic Parallel programming (Computer science)
Application program interfaces (Computer software)
OmpSs
OpenMP
Task-based
Task-graph
Dependence manager
Runtime
Programació en paral·lel (Informàtica)
Interfícies de programació d'aplicacions (Programari)
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
description Parallel task-based programming models, like OpenMP, allow application developers to easily create a parallel version of their sequential codes. The standard OpenMP 4.0 introduced the possibility of describing a set of data dependences per task that the runtime uses to order the tasks execution. This order is calculated using shared graphs, which are updated by all threads in exclusive access using synchronization mechanisms (locks) to ensure the dependence management correctness. The contention in the access to these structures becomes critical in many-core systems because several threads may be wasting computation resources waiting their turn. This paper proposes an asynchronous management of the runtime structures, like task dependence graphs, suitable for task-based programming model runtimes. In such organization, the threads request actions to the runtime instead of doing them directly. The requests are then handled by a distributed runtime manager (DDAST) which does not require dedicated resources. Instead, the manager uses the idle threads to modify the runtime structures. The paper also presents an implementation, analysis and performance evaluation of such runtime organization. The performance results show that the proposed asynchronous organization outperforms the speedup obtained by the original runtime for different benchmarks and different many-core architectures.
publishDate 2020
dc.date.none.fl_str_mv 2020
2020-09-01
2020
2020-10-08
dc.type.none.fl_str_mv journal article
http://purl.org/coar/resource_type/c_6501
AM
http://purl.org/coar/version/c_ab4af688f83e57aa
dc.type.openaire.fl_str_mv info:eu-repo/semantics/article
format article
dc.identifier.none.fl_str_mv https://hdl.handle.net/2117/330058
https://dx.doi.org/10.1016/j.parco.2020.102664
url https://hdl.handle.net/2117/330058
https://dx.doi.org/10.1016/j.parco.2020.102664
dc.language.none.fl_str_mv Inglés
eng
language_invalid_str_mv Inglés
language eng
dc.relation.none.fl_str_mv Ministerio de Economía y Competitividad http://doi.org/10.13039/501100003329 TIN2015-65316-P COMPUTACION DE ALTAS PRESTACIONES VII
European Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 801051 European joint Effort toward a Highly Productive Programming Environment for Heterogeneous Exascale Computing (EPEEC)
European Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 754337 Co-designed Innovation and System for Resilient Exascale Computing in Europe: From Applications to Silicon
European Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 780681 Low Energy Toolset for Heterogeneous Computing
Ministerio de Economía y Competitividad http://doi.org/10.13039/501100003329 SEV-2015-0493 BARCELONA SUPERCOMPUTING CENTER - CENTRO. NACIONAL DE SUPERCOMPUTACION
dc.rights.none.fl_str_mv open access
http://purl.org/coar/access_right/c_abf2
Attribution-NonCommercial-NoDerivatives 4.0 International
https://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.openaire.fl_str_mv info:eu-repo/semantics/openAccess
rights_invalid_str_mv open access
http://purl.org/coar/access_right/c_abf2
Attribution-NonCommercial-NoDerivatives 4.0 International
https://creativecommons.org/licenses/by-nc-nd/4.0/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:UPCommons. Portal del coneixement obert de la UPC
instname:Universitat Politècnica de Catalunya (UPC)
instname_str Universitat Politècnica de Catalunya (UPC)
reponame_str UPCommons. Portal del coneixement obert de la UPC
collection UPCommons. Portal del coneixement obert de la UPC
repository.name.fl_str_mv
repository.mail.fl_str_mv
_version_ 1869420459987042304
score 15,301603