Computational & Technology Resources
an online resource for computational,
engineering & technology publications |
|
Computational Science, Engineering & Technology Series
ISSN 1759-3158 CSETS: 34
PATTERNS FOR PARALLEL PROGRAMMING ON GPUS Edited by: F. Magoulès
Chapter 8
OpenCL: A Suitable Solution to Simplify and Unify High Performance Computing Developments J. Passerat-Palmbach and D.R.C. Hill
ISIMA, Aubière, France J. Passerat-Palmbach, D.R.C. Hill, "OpenCL: A Suitable Solution to Simplify and Unify High Performance Computing Developments", in F. Magoulès, (Editor), "Patterns for Parallel Programming on GPUs", Saxe-Coburg Publications, Stirlingshire, UK, Chapter 8, pp 187-207, 2014. doi:10.4203/csets.34.8
Keywords: OpenCL, abstraction layers, survey, source-to-source, transformation, manycore.
Abstract
Manycore architectures are now available in a wide range of HPC systems. Going from CPUs to GPUs and FPGAs, modern hardware accelerators can be exploited using heterogeneous software technologies. In this chapter, we study the inputs that OpenCL offers to high performance computing applications, as a solution to unify developments. In order to overcome the lack of native OpenCL support for some architectures, we survey the third-party research works that propose a source-to-source approach to transform OpenCL into other parallel programming languages. We use FPGAs as a case study, because of their dramatic OpenCL support compared to GPUs for instance. These transformation approaches could also lead to potential works in the model driven engineering (MDE) field that we conceptualize in this work. Moreover, OpenCL's standard API is quite rough, thus we also introduce several APIs from the simple high-level binder to the source code generator that intend to ease and boost the development process of any OpenCL application.
purchase the full-text of this chapter (price £20)
go to the previous chapter |
|