A Translation Framework for Automatic Translation of Annotated LLVM IR into OpenCL Kernel Function

Chen Ting Chang*, Yu Sheng Chen, I. Wei Wu, Jyh-Jiun Shann

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingChapterpeer-review

4 Scopus citations


Heterogeneous multi-core processor is proposed to accelerate applications using an application-specific hardware, such as graphics processing unit (GPU). However, heterogeneous multi-core processor is difficult to program. Therefore, OpenCL (Open Computing Language) standard recently has been proposed to reduce the difficulty. A program of OpenCL mainly consists of the host code (executed on CPU) and the device code (executed on GPU or other accelerators). LLVM (Low Level Virtual Machine) is a compiler infrastructure and supports a variety of front-ends into LLVM IR (Intermediate Representation). To help translate programs written by different programming languages of LLVM front-ends to OpenCL, this work defines some extensions of LLVM IR to represent the kernel function of OpenCL. Furthermore, a translation framework is designed and implemented to translate annotated LLVM IR to OpenCL kernel function.

Original languageEnglish
Title of host publicationAdvances in Intelligent Systems and Applications - Volume 2
Subtitle of host publicationProceedings of the International Computer
EditorsChang Ruay-Shiung, Peng Sheng-Lung, Lin Chia-Chen
Number of pages10
StatePublished - 28 Jun 2013

Publication series

NameSmart Innovation, Systems and Technologies
ISSN (Print)2190-3018
ISSN (Electronic)2190-3026


  • Heterogeneous multi-core
  • LLVM
  • OpenCL


Dive into the research topics of 'A Translation Framework for Automatic Translation of Annotated LLVM IR into OpenCL Kernel Function'. Together they form a unique fingerprint.

Cite this