Towards supporting composability of directive-based programming models for heterogeneous computing

Current trends in High Performance Computing suggest a significant shift towards heterogeneous architectures, utilising GPUs and other accelerators for their combination of computation capacity and power efficiency. Therefore, programming heterogeneous applications becomes increasingly relevant. How...

Full description

Bibliographic Details
Author: Korakitis, Orestis
Format: master thesis
Publication Date:2020
Country:España
Institution:Universitat Politècnica de Catalunya (UPC)
Repository:UPCommons. Portal del coneixement obert de la UPC
Language:English
OAI Identifier:oai:upcommons.upc.edu:2117/335903
Online Access:https://hdl.handle.net/2117/335903
Access Level:Open access
Keyword:Parallel programming (Computer science)
High performance computing
programming
models
composability
interoperability
HPC
heterogeneous
runtime
systems
task
parallelism
GPU
OpenACC
OmpSs-2
programmability
task-parallelism
data-parallelism
Programació en paral·lel (Informàtica)
Càlcul intensiu (Informàtica)
Àrees temàtiques de la UPC::Informàtica
id ES_7fbee2f71b9c6e79f3cc7b01b7cb57a0
oai_identifier_str oai:upcommons.upc.edu:2117/335903
network_acronym_str ES
network_name_str España
repository_id_str
spelling Towards supporting composability of directive-based programming models for heterogeneous computingKorakitis, OrestisParallel programming (Computer science)High performance computingprogrammingmodelscomposabilityinteroperabilityHPCheterogeneousruntimesystemstaskparallelismGPUOpenACCOmpSs-2programmabilitytask-parallelismdata-parallelismProgramació en paral·lel (Informàtica)Càlcul intensiu (Informàtica)Àrees temàtiques de la UPC::InformàticaCurrent trends in High Performance Computing suggest a significant shift towards heterogeneous architectures, utilising GPUs and other accelerators for their combination of computation capacity and power efficiency. Therefore, programming heterogeneous applications becomes increasingly relevant. However, the programming models for accelerators may present challenges that render the development process difficult and require extra effort from developers to handle tha parallelisation issues. OpenACC is a directive-based programming model aiming to facilitate the development of heterogeneous applications, abstracting the accelerator specific details from the programmer. OmpSs-2 is a directive-based, task parallel programming model, designed to ease the development of parallel programs. It is also extendable, in order to support heterogeneity. This work explores the composability of the two programming models, proposes and implements a new feature in the OmpSs-2 model, supporting hybrid OmpSs-2 + OpenACC programs. The two models act complementary to each other, with OmpSs-2 providing task-parallelism and OpenACC handling data-parallelism. Both being directive-based, they present the potential to provide a consistent, flexible and productive parallel programming framework when combined. The resulting new feature has been part of the latest OmpSs-2 release.Universitat Politècnica de CatalunyaPeña Monferrer, Antonio José20202020-07-0320212021-01-25master thesishttp://purl.org/coar/resource_type/c_bdccNAhttp://purl.org/coar/version/c_be7fb7dd8ff6fe43info:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/2117/335903reponame:UPCommons. Portal del coneixement obert de la UPCinstname:Universitat Politècnica de Catalunya (UPC)Inglésengopen accesshttp://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessoai:upcommons.upc.edu:2117/3359032026-05-27T15:37:01Z
dc.title.none.fl_str_mv Towards supporting composability of directive-based programming models for heterogeneous computing
title Towards supporting composability of directive-based programming models for heterogeneous computing
spellingShingle Towards supporting composability of directive-based programming models for heterogeneous computing
Korakitis, Orestis
Parallel programming (Computer science)
High performance computing
programming
models
composability
interoperability
HPC
heterogeneous
runtime
systems
task
parallelism
GPU
OpenACC
OmpSs-2
programmability
task-parallelism
data-parallelism
Programació en paral·lel (Informàtica)
Càlcul intensiu (Informàtica)
Àrees temàtiques de la UPC::Informàtica
title_short Towards supporting composability of directive-based programming models for heterogeneous computing
title_full Towards supporting composability of directive-based programming models for heterogeneous computing
title_fullStr Towards supporting composability of directive-based programming models for heterogeneous computing
title_full_unstemmed Towards supporting composability of directive-based programming models for heterogeneous computing
title_sort Towards supporting composability of directive-based programming models for heterogeneous computing
dc.creator.none.fl_str_mv Korakitis, Orestis
author Korakitis, Orestis
author_facet Korakitis, Orestis
author_role author
dc.contributor.none.fl_str_mv Peña Monferrer, Antonio José
dc.subject.none.fl_str_mv Parallel programming (Computer science)
High performance computing
programming
models
composability
interoperability
HPC
heterogeneous
runtime
systems
task
parallelism
GPU
OpenACC
OmpSs-2
programmability
task-parallelism
data-parallelism
Programació en paral·lel (Informàtica)
Càlcul intensiu (Informàtica)
Àrees temàtiques de la UPC::Informàtica
topic Parallel programming (Computer science)
High performance computing
programming
models
composability
interoperability
HPC
heterogeneous
runtime
systems
task
parallelism
GPU
OpenACC
OmpSs-2
programmability
task-parallelism
data-parallelism
Programació en paral·lel (Informàtica)
Càlcul intensiu (Informàtica)
Àrees temàtiques de la UPC::Informàtica
description Current trends in High Performance Computing suggest a significant shift towards heterogeneous architectures, utilising GPUs and other accelerators for their combination of computation capacity and power efficiency. Therefore, programming heterogeneous applications becomes increasingly relevant. However, the programming models for accelerators may present challenges that render the development process difficult and require extra effort from developers to handle tha parallelisation issues. OpenACC is a directive-based programming model aiming to facilitate the development of heterogeneous applications, abstracting the accelerator specific details from the programmer. OmpSs-2 is a directive-based, task parallel programming model, designed to ease the development of parallel programs. It is also extendable, in order to support heterogeneity. This work explores the composability of the two programming models, proposes and implements a new feature in the OmpSs-2 model, supporting hybrid OmpSs-2 + OpenACC programs. The two models act complementary to each other, with OmpSs-2 providing task-parallelism and OpenACC handling data-parallelism. Both being directive-based, they present the potential to provide a consistent, flexible and productive parallel programming framework when combined. The resulting new feature has been part of the latest OmpSs-2 release.
publishDate 2020
dc.date.none.fl_str_mv 2020
2020-07-03
2021
2021-01-25
dc.type.none.fl_str_mv master thesis
http://purl.org/coar/resource_type/c_bdcc
NA
http://purl.org/coar/version/c_be7fb7dd8ff6fe43
dc.type.openaire.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
dc.identifier.none.fl_str_mv https://hdl.handle.net/2117/335903
url https://hdl.handle.net/2117/335903
dc.language.none.fl_str_mv Inglés
eng
language_invalid_str_mv Inglés
language eng
dc.rights.none.fl_str_mv open access
http://purl.org/coar/access_right/c_abf2
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
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universitat Politècnica de Catalunya
publisher.none.fl_str_mv Universitat Politècnica de Catalunya
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_ 1869411847390625792
score 15.300724