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...
| Author: | |
|---|---|
| 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 |