Logo
  • 1. Overview
  • 2. Using OpenACC with the NVIDIA HPC Compilers
  • 3. Implemented Features
OpenACC Getting Started Guide
  • »
  • Contents
  • v25.5 | PDF | Archive  

Contents

  • 1. Overview
    • 1.1. System Prerequisites
    • 1.2. Prepare Your System
    • 1.3. Supporting Documentation and Examples
  • 2. Using OpenACC with the NVIDIA HPC Compilers
    • 2.1. CUDA Versions
    • 2.2. Compute Capability
    • 2.3. PTX JIT Compilation
    • 2.4. C Structs in OpenACC
    • 2.5. C++ Classes in OpenACC
    • 2.6. Fortran Derived Types in OpenACC
    • 2.7. Fortran I/O
      • 2.7.1. OpenACC PRINT Example
    • 2.8. OpenACC Atomic Support
    • 2.9. OpenACC Declare Data Directive for Global and Fortran Module Variables
    • 2.10. OpenACC Error Handling
    • 2.11. C Examples
    • 2.12. Fortran Examples
      • 2.12.1. Vector Addition on the GPU
      • 2.12.2. Multi-Threaded Program Utilizing Multiple Devices
    • 2.13. Troubleshooting Tips and Known Limitations
  • 3. Implemented Features
    • 3.1. OpenACC specification compliance
    • 3.2. Defaults
    • 3.3. Environment Variables
    • 3.4. OpenACC Fortran API Extensions
      • 3.4.1. acc_malloc
      • 3.4.2. acc_free
      • 3.4.3. acc_map_data
      • 3.4.4. acc_unmap_data
      • 3.4.5. acc_deviceptr
      • 3.4.6. acc_hostptr
      • 3.4.7. acc_is_present
      • 3.4.8. acc_memcpy_to_device
      • 3.4.9. acc_memcpy_from_device
      • 3.4.10. acc_get_cuda_stream
      • 3.4.11. acc_set_cuda_stream
    • 3.5. Known Limitations
      • 3.5.1. ACC routine directive Limitations
      • 3.5.2. C++ and OpenACC Limitations
      • 3.5.3. Other Limitations
    • 3.6. Interactions with Optimizations
      • 3.6.1. Interactions with Inlining

Privacy Policy | Manage My Privacy | Do Not Sell or Share My Data | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact

Copyright © 2013-2025, NVIDIA Corporation & affiliates. All rights reserved.

Last updated on May 19, 2025.