SparkCL: A Unified Programming Framework for Accelerators on Heterogeneous Clusters
Department of Electrical and Computer Engineering, University of Massachusetts Lowell, Lowell, MA
arXiv:1505.01120 [cs.DC], (5 May 2015)
@article{segal2015sparkcl,
title={SparkCL: A Unified Programming Framework for Accelerators on Heterogeneous Clusters},
author={Segal, Oren and Colangelo, Philip and Nasiri, Nasibeh and Qian, Zhuo and Margala, Martin},
year={2015},
month={may},
archivePrefix={"arXiv"},
primaryClass={cs.DC}
}
We introduce SparkCL, an open source unified programming framework based on Java, OpenCL and the Apache Spark framework. The motivation behind this work is to bring unconventional compute cores such as FPGAs/GPUs/APUs/DSPs and future core types into mainstream programming use. The framework allows equal treatment of different computing devices under the Spark framework and introduces the ability to offload computations to acceleration devices. The new framework is seamlessly integrated into the standard Spark framework via a Java-OpenCL device programming layer which is based on Aparapi and a Spark programming layer that includes new kernel function types and modified Spark transformations and actions. The framework allows a single code base to target any type of compute core that supports OpenCL and easy integration of new core types into a Spark cluster.
May 7, 2015 by hgpu