by
Hidehiko Masuhara and Yusuke Nishiguchi
Abstract:
We propose Ikra, a data-parallel extension to Ruby for general-purpose computing on graphical processing unit (GPGPU). Our approach is to provide a special array class with higher-order methods for describing computation on a GPU. With a static type inference system that identifies code fragments that shall be executed on a GPU and with a skeleton-based compiler that generates CUDA code, we aim at separating application logic and parallelization and optimizations. The paper presents the design of Ikra and an overview of its implementation along with preliminary performance evaluation.
Reference:
A Data-Parallel Extension to Ruby for GPGPU: Toward a Framework for Implementing Domain-Specific Optimizations (Hidehiko Masuhara and Yusuke Nishiguchi), In Proceedings of the 9th Workshop on Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'12), ACM, 2012.
Bibtex Entry:
@inproceedings{masuhara2012ramse,
pdf = {ramse2012.pdf},
author = {Hidehiko Masuhara and Yusuke Nishiguchi},
title = {A Data-Parallel Extension to {Ruby} for {GPGPU}:
Toward a Framework for Implementing Domain-Specific Optimizations},
booktitle = {Proceedings of the 9th Workshop on
Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'12)},
pages = {3--6},
doi = {10.1145/2237887.2237888},
year = 2012,
month = jun,
day = 13,
location = {Beijing, China},
keywords = {Ikra},
publisher = {{ACM}},
abstract = {We propose Ikra, a data-parallel extension to Ruby for general-purpose computing on graphical processing unit (GPGPU). Our approach is to provide a special array class with higher-order methods for describing computation on a GPU. With a static type inference system that identifies code fragments that shall be executed on a GPU and with a skeleton-based compiler that generates CUDA code, we aim at separating application logic and parallelization and optimizations. The paper presents the design of Ikra and an overview of its implementation along with preliminary performance evaluation.}
}