Skip to main content
SHARE
Publication

Experimental Characterization of OpenMP Offloading Memory Operations and Unified Shared Memory Support

by Wael R Elwasif
Publication Type
Conference Paper
Book Title
OpenMP: Advanced Task-Based, Device and Compiler Programming
Publication Date
Page Numbers
210 to 225
Volume
14114
Publisher Location
Cham, Switzerland
Conference Name
19th International Workshop on OpenMP
Conference Location
Bristol, United Kingdom
Conference Sponsor
The OpenMP ARB (Architecture Review Boards), University of Bristol
Conference Date
-

The OpenMP specification recently introduced support for unified shared memory, allowing implementation to leverage underlying system software to provide a simpler GPU offloading model where explicit mapping of variables is optional. Support for this feature is becoming more available in different OpenMP implementations on several hardware platforms. A deeper understanding of the different implementation’s execution profile and performance is crucial for applications as they consider the performance portability implications of adopting a unified memory offloading programming style. This work introduces a benchmark tool to characterize unified memory support in several OepnMP compilers and runtimes, with emphasis on identifying discrepancies between different OpenMP implementations as to how they various memory allocation strategies interact with unified shared memory. The benchmark tool is used to characterize OpenMP compilers on three leading High Performance Computing platforms supporting different CPU and device architectures. The benchmark tool is used to assess the impact of enabling unified shared memory on the performance of memory-bound code, highlighting implementation differences that should be accounted for when applications consider performance portability across platforms and compilers.