Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

The OpenACC data model: Preliminary study on its major challenges and implementations

Journal Article · · Parallel Computing
 [1];  [2];  [2];  [1];  [3];  [4];  [5]
  1. NVIDIA, Santa Clara, CA (United States)
  2. Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States)
  3. Dell, Round Rock, TX (United States)
  4. Stony Brook Univ., NY (United States). Dept. of Chemistry
  5. Univ. of Delaware, Newark, DE (United States)

This paper describes how the OpenACC data model is implemented in current OpenACC compilers, ranging from research compilers (OpenUH and OpenARC) to a commercial compiler (the PGI OpenACC compiler). First, we summarize various memory architectures in today’s accelerator systems. We then describe details and issues in implementing the OpenACC data model in three different OpenACC compilers. This includes managing page tables, asynchronous data transfers, asynchronous memory allocate and free, host data construct, aliasing on a data directive, reusing device memory, partially present data, and adjacent data. We also discusses ongoing work to manage large, complex dynamic data structures. We measured the present table lookups, device memory allocation, pinned memory allocation, and managed memory in the three OpenACC compilers using eight OpenACC applications (seven from the SPEC ACCEL benchmark suite and a shock-hydrodynamics mini-application called LULESH).

Research Organization:
Oak Ridge National Laboratory (ORNL), Oak Ridge, TN (United States)
Sponsoring Organization:
USDOE Office of Science (SC)
Grant/Contract Number:
AC05-00OR22725
OSTI ID:
1474544
Alternate ID(s):
OSTI ID: 1703445
Journal Information:
Parallel Computing, Journal Name: Parallel Computing Journal Issue: C Vol. 78; ISSN 0167-8191
Publisher:
ElsevierCopyright Statement
Country of Publication:
United States
Language:
English

References (3)

Cetus: A Source-to-Source Compiler Infrastructure for Multicores journal December 2009
Could supercomputing turn to signal processors (again)? journal October 2012
hiCUDA: High-Level GPGPU Programming journal January 2011

Similar Records

Implementing the OpenACC Data Model
Conference · 2017 · OSTI ID:1399548

OpenARC: Extensible OpenACC Compiler Framework for Directive-Based Accelerator Programming Study
Conference · 2013 · OSTI ID:1286784

KokkACC: Enhancing Kokkos with OpenACC
Conference · 2022 · OSTI ID:2000279

Related Subjects