An Analysis of OpenACC Programming Model: Image Processing Algorithms as a Case Study

Graphics processing units and similar accelerators have been intensively used in general purpose computations for several years. In the last decade, GPU architecture and organization changed dramatically to support an ever-increasing demand for computing power. Along with changes in hardware, novel...

Full description

Bibliographic Details
Main Authors: M. J. Mišić, D. D. Dašić, M. V. Tomašević
Format: Article
Language:English
Published: Telecommunications Society, Academic Mind 2014-06-01
Series:Telfor Journal
Subjects:
Online Access: http://journal.telfor.rs/Published/Vol6No1/Vol6No1_A10.pdf
Description
Summary:Graphics processing units and similar accelerators have been intensively used in general purpose computations for several years. In the last decade, GPU architecture and organization changed dramatically to support an ever-increasing demand for computing power. Along with changes in hardware, novel programming models have been proposed, such as NVIDIA’s Compute Unified Device Architecture (CUDA) and Open Computing Language (OpenCL) by Khronos group. Although numerous commercial and scientific applications have been developed using these two models, they still impose a significant challenge for less experienced users. There are users from various scientific and engineering communities who would like to speed up their applications without the need to deeply understand a low-level programming model and underlying hardware. In 2011, OpenACC programming model was launched. Much like OpenMP for multicore processors, OpenACC is a high-level, directive-based programming model for manycore processors like GPUs. This paper presents an analysis of OpenACC programming model and its applicability in typical domains like image processing. Three, simple image processing algorithms have been implemented for execution on the GPU with OpenACC. The results were compared with their sequential counterparts, and results are briefly discussed.
ISSN:1821-3251