117 captures
17 Sep 2012 - 31 Jan 2026
Apr MAY Jun
03
2012 2013 2014
success
fail

About this capture

COLLECTED BY

Organization: Internet Archive

The Internet Archive discovers and captures web pages through many different web crawls. At any given time several distinct crawls are running, some for months, and some every day or longer. View the web archive through the Wayback Machine.

Collection: Wide Crawl started April 2013

Web wide crawl with initial seedlist and crawler configuration from April 2013.
TIMESTAMPS

The Wayback Machine - http://web.archive.org/web/20130503174451/http://en.wikipedia.org/wiki/OpenACC
 



OpenACC

 

From Wikipedia, the free encyclopedia
 

Jump to: navigation, search  
OpenACC
Stable release 1.0
Written in C, C++, and Fortran
Operating system Cross-platform
Platform Cross-platform
Type API
Website http://www.openacc.org/

OpenACC is a programming standard for parallel computing developed by Cray, CAPS, Nvidia and PGI. The standard is designed to simplify parallel programming of heterogeneous CPU/GPU systems.[1]

Like in OpenMP, the programmer can annotate C, C++ and Fortran source code to identify the areas that should be accelerated using PRAGMA compiler directives and additional functions.[2] Unlike OpenMP, code can be started not only on the CPU, but also on the GPU.

OpenACC members have worked as members of the OpenMP standard group to merge into OpenMP specification to create a common specification which extends OpenMP to support accelerators in a future release of OpenMP.[3][4] These efforts resulted in a technical report[5] for comment and discussion timed to include the annual Supercomputing Conference (November 2012, Salt Lake City) and to address non-NVIDIA accelerator support with input from hardware vendors who participate in OpenMP.[6]

At ISC’12 OpenACC was demonstrated to work on NVIDIA, AMD and Intel accelerators, without performance data.[7]

In November 12, 2012, at the SC12 conference, a draft of the OpenACC version 2.0 specification was presented.[8] New suggested capabilities include new controls over data movement (such as better handling of unstructured data and improvements in support for non-contiguous memory), and support for explicit function calls and separate compilation (allowing the creation and reuse of libraries of accelerated code).

Contents

[edit] Compiler support

Support of OpenACC is available in compilers from PGI (from version 12.6), Cray, and CAPS.[7][9]

[edit] Usage

To use OpenACC, user should include "openacc.h" in C or "openacc_lib.h" in Fortran;[10] and then call acc_init() function.

OpenACC defines some pragmas (directives), for example:

#pragma acc parallel
#pragma acc kernels
#pragma acc data
#pragma acc loop
#pragma acc cache
#pragma acc update
#pragma acc declare
#pragma acc wait

There are some runtime API functions defined too: acc_get_num_devices(), acc_set_device_type(), acc_get_device_type(), acc_set_device_num(), acc_get_device_num(), acc_async_test(), acc_async_test_all(), acc_async_wait(), acc_async_wait_all(), acc_init(), acc_shutdown(), acc_on_device(), acc_malloc(), acc_free().

OpenACC generally takes care of work organisation for the target device however this can be overridden through the use of gangs and workers. A gang consists of workers and operates over a number of processing elements (as with a workgroup in OpenCL).

[edit] See also

[edit] References

  1. ^ http://www.theinquirer.net/inquirer/news/2124878/nvidia-cray-pgi-caps-launch-openacc-programming-standard-parallel-computing.  Missing or empty |title= (help)
  • ^ http://www.openacc-standard.org/Downloads/OpenACC.1.0.pdf?attredirects=0&d=1 OpenACC standard version 1.0
  • ^ http://www.openacc-standard.org/node/49
  • ^ http://www.openacc-standard.org/node/47
  • ^ http://openmp.org/wp/2012/11/the-openmp-consortium-releases-first-technical-report/
  • ^ http://openmp.org/wp/sc12
  • ^ a b http://www.hpcwire.com/hpcwire/2012-06-20/openacc_group_reports_expanding_support_for_accelerator_programming_standard.html
  • ^ http://www.openacc.org/node/173
  • ^ http://www.xbitlabs.com/news/other/display/20111116234815_OpenACC_Standard_to_Help_Developers_to_Take_Advantage_of_GPU_Compute_Accelerators.html
  • ^ http://www.nvidia.com/docs/IO/116711/OpenACC-API.pdf OpenACC API QuickReference Card, version 1.0 November 2011
  • [edit] External links


    Retrieved from "http://en.wikipedia.org/w/index.php?title=OpenACC&oldid=550500859" 

    Categories: 
    Parallel computing
    Standards
    Application programming interfaces
    C programming language family
    Hidden categories: 
    Pages with citations lacking titles
    Pages with citations having bare URLs
     

    Navigation menu

     

    Personal tools



    Create account
    Log in
     



    Namespaces



    Article

    Talk
     


    Variants








    Views



    Read

    Edit

    View history
     


    Actions












    Navigation




    Main page

    Contents

    Featured content

    Current events

    Random article

    Donate to Wikipedia
     



    Interaction




    Help

    About Wikipedia

    Community portal

    Recent changes

    Contact Wikipedia
     



    Toolbox




    What links here

    Related changes

    Upload file

    Special pages

    Permanent link

    Page information

    Cite this page
     



    Print/export




    Create a book

    Download as PDF

    Printable version
     



    Languages




    Русский

    Edit links
     





    This page was last modified on 15 April 2013 at 17:04.

    Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. 
    Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
     


    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Mobile view
     


    Wikimedia Foundation
    Powered by MediaWiki