Towards achieving performance portability using directives for accelerators

M. Graham Lopez, Veronica Vergara Larrea, Wayne Joubert, Oscar Hernandez, Azzam Haidar, Stanimire Tomov, Jack Dongarra

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

19 Scopus citations

Abstract

In this paper we explore the performance portability of directives provided by OpenMP 4 and OpenACC to program various types of node architectures with attached accelerators, both self-hosted multicore and offload multicore/GPU. Our goal is to examine how successful OpenACC and the newer offload features of OpenMP 4.5 are for moving codes between architectures, how much tuning might be required and what lessons we can learn from this experience. To do this, we use examples of algorithms with varying computational intensities for our evaluation, as both compute and data access efficiency are important considerations for overall application performance. We implement these kernels using various methods provided by newer OpenACC and OpenMP implementations, and we evaluate their performance on various platforms including both X86-64 with attached NVIDIA GPUs, self-hosted Intel Xeon Phi KNL, as well as an X86-64 host system with Intel Xeon Phi coprocessors. In this paper, we explain what factors affected the performance portability such as how to pick the right programming model, its programming style, its availability on different platforms, and how well compilers can optimize and target to multiple platforms.

Original languageEnglish
Title of host publicationProceedings of WACCPD 2016
Subtitle of host publication3rd Workshop on Accelerator Programming using Directives - Held in conjunction with SC 2016: The International Conference for High Performance Computing, Networking, Storage and Analysis
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages13-24
Number of pages12
ISBN (Electronic)9781509061525
DOIs
StatePublished - Jan 30 2017
Event3rd Workshop on Accelerator Programming using Directives, WACCPD 2016 - Salt Lake City, United States
Duration: Nov 14 2016 → …

Publication series

NameProceedings of WACCPD 2016: 3rd Workshop on Accelerator Programming using Directives - Held in conjunction with SC 2016: The International Conference for High Performance Computing, Networking, Storage and Analysis

Conference

Conference3rd Workshop on Accelerator Programming using Directives, WACCPD 2016
Country/TerritoryUnited States
CitySalt Lake City
Period11/14/16 → …

Funding

This material is based upon work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research, under contract number DEAC05-00OR22725.

FundersFunder number
U.S. Department of Energy
Office of Science
Advanced Scientific Computing ResearchDEAC05-00OR22725
Advanced Scientific Computing Research

    Fingerprint

    Dive into the research topics of 'Towards achieving performance portability using directives for accelerators'. Together they form a unique fingerprint.

    Cite this