2011 IEEE 17th International Conference on Parallel and Distributed Systems 2011
DOI: 10.1109/icpads.2011.48
|View full text |Cite
|
Sign up to set email alerts
|

CU2CL: A CUDA-to-OpenCL Translator for Multi- and Many-Core Architectures

Abstract: The use of graphics processing units (GPUs) in high-performance parallel computing continues to steadily become more prevalent, often as part of a heterogeneous system. For years, CUDA has been the de facto programming environment for nearly all general-purpose GPU (GPGPU) applications. In spite of this, the framework is available only on NVIDIA GPUs, traditionally requiring reimplementation in other frameworks in order to utilize additional multi-or many-core devices. On the other hand, OpenCL provides an ope… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
38
0
3

Year Published

2012
2012
2020
2020

Publication Types

Select...
7
2

Relationship

2
7

Authors

Journals

citations
Cited by 46 publications
(42 citation statements)
references
References 17 publications
(20 reference statements)
0
38
0
3
Order By: Relevance
“…It provides a compilation infrastructure and helper APIs that handle the boilerplate initialization and compilation and simplify data exchange between the host and accelerators, such that MetaMorph developers can focus on developing the new kernels. In addition, we used our source-to-source translator [7], [8] to largely automate the generation of MetaMorph kernels, and in the future, we aim to release a family of such source-to-source translators and leverage the LLVM Just-InTime compiler to simplify the expansion of the MetaMorph library with new design patterns.…”
Section: B Abstraction Layermentioning
confidence: 99%
“…It provides a compilation infrastructure and helper APIs that handle the boilerplate initialization and compilation and simplify data exchange between the host and accelerators, such that MetaMorph developers can focus on developing the new kernels. In addition, we used our source-to-source translator [7], [8] to largely automate the generation of MetaMorph kernels, and in the future, we aim to release a family of such source-to-source translators and leverage the LLVM Just-InTime compiler to simplify the expansion of the MetaMorph library with new design patterns.…”
Section: B Abstraction Layermentioning
confidence: 99%
“…In addition, its source code has not been released, and as such, cannot be compared directly to our translator, CU2CL. We note that both CUDAtoOpenCL and CU2CL have recursion-based expression rewriting, propagation of the cl mem type, and support for the most commonly-used environment setup, memory management, and kernel launch functions [8] [9].…”
Section: A Related Workmentioning
confidence: 99%
“…While a full discussion of CU2CL's implementation is outside the scope of this paper, we provide a brief introduction to its high-level construction as context. A more detailed exposition is available in [9].…”
Section: Translator Prototypementioning
confidence: 99%
“…[196][197][198] Though such a translation is trivial in view of the similar architecture of both CUDA and OpenCL, challenges exist for a robust porting between them. 199 For example, separate compilation of CUDA source¯les is possible, yet it is quite di±cult to link the code translated in OpenCL format due to the required reorganization of the initialization code throughout all the source¯les.…”
Section: Computing Based On Gpumentioning
confidence: 99%