August 2018

Conference Paper

Evaluating Support for OpenMP Offload Features

By:
Monsalve Diaz, Jose M; Pophale, Swaroop S; Friedline, Kyle; Hernandez Mendoza, Oscar R; Bernholdt, David E; Chandrasekaran, Sunita
Page Number:
31
Book Title:
ICPP Workshops '18: Workshop Proceedings of the 47th International Conference on Parallel Processing
Publication Date:
August 2018
Conference Name:
International Conference on Parallel Processing (ICPP 2018) (P2S2)
Conference Location:
Eugene, Oregon, United States of America
Conference Sponsor:
University of Oregon
View DOI Listing:
https://doi.org/10.1145/3229710.3229717

Abstract

The OpenMP language features have been evolving to meet the rapid development in hardware platforms. DOE applications tend to push the bleeding edge of features ratified in the OpenMP specification and tend to expose the rough edges of the features' implementations. The software harness on DOE supercomputers such as Titan and (upcoming) Summit include Cray, Clang, Flang, XL and GCC compilers. It is critical, especially for Summit, that the compilers support OpenMP offloading features. This paper focuses on evaluating support for OpenMP 4.5 target offload directives across compiler implementations on Titan and Summitdev, an early access system, which is one generation removed from Summit's architecture enabling application teams to test the systems' architecture. Our tests not only evaluate the OpenMP implementations but also expose ambiguities in the OpenMP 4.5 specification. We also evaluate compiler implementations using kernels extracted from production DOE applications. This helps in assessing the interaction of different OpenMP directives independent of other application artifacts. We are aware that the implementations are constantly evolving and are advertised as having only partial OpenMP 4.x support. We see this as a synergistic effort to help identify and correct features that are required by DOE applications and prevent deployment delays later on. Going forward, we also plan to interact with standard benchmarking bodies like SPEC/HPG to donate our tests and mini-apps/kernels for potential inclusion in the next release versions of SPEC OMP and SPEC ACCEL benchmark suites.