326x Filetype PDF File size 0.59 MB Source: ti.tuwien.ac.at
Introduction to
OpenCL
Ezio
Bartocci
Vienna
University
of
Technology
Overview
• Overview of OpenCL for NVIDIA GPUs
• API and Languages
• Sample codes walkthrough
• OpenCL Information and Resources
OpenCL – Open Computing Language
• OpenCL is an Open, royalty-free C-language extension
• It is a framework designed for parallel programming of
heterogeneous systems using GPUs, CPUs, FPGA, DSP’s
and other processors including embedded mobile devices
• It was initially introduced by Apple, now is supported by
NVIDIA, Intel, AMD, IBM….(that are in the OpenCL working
group)
• Managed by Khronos Group
OpenCL versions and history (1)
OpenCL 1.0 (2008)
• OpenCL 1.0 has been released with Mac OS X Snow Leopard
OpenCL 1.1 (2010)
• The Khronos Group adds significant functionality for enhanced parallel
programming flexibility, functionality, and performance including:
• New data types including 3-component vectors and additional image formats;
• Handling commands from multiple host threads and processing buffers across
multiple devices;
• Operations on regions of a buffer including read, write and copy of 1D, 2D, or 3D
rectangular regions;
•
• Enhanced use of events to drive and control command execution;
• Additional OpenCL built-in C functions such as integer clamp, shuffle, and
asynchronous strided copies;
• Improved OpenGL interoperability through efficient sharing of images and buffers
by linking OpenCL and OpenGL events.
no reviews yet
Please Login to review.