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 language | English |
---|---|
Title of host publication | Proceedings of WACCPD 2016 |
Subtitle of host publication | 3rd Workshop on Accelerator Programming using Directives - Held in conjunction with SC 2016: The International Conference for High Performance Computing, Networking, Storage and Analysis |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 13-24 |
Number of pages | 12 |
ISBN (Electronic) | 9781509061525 |
DOIs | |
State | Published - Jan 30 2017 |
Event | 3rd Workshop on Accelerator Programming using Directives, WACCPD 2016 - Salt Lake City, United States Duration: Nov 14 2016 → … |
Publication series
Name | Proceedings 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
Conference | 3rd Workshop on Accelerator Programming using Directives, WACCPD 2016 |
---|---|
Country/Territory | United States |
City | Salt Lake City |
Period | 11/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.