Title :
Code generation for embedded heterogeneous architectures on android
Author :
Membarth, Richard ; Reiche, Oliver ; Hannig, Frank ; Teich, Jurgen
Author_Institution :
Dept. of Comput. Sci., Univ. of Erlangen-Nuremberg, Erlangen, Germany
Abstract :
The success of Android is based on its unified Java programming model that allows to write platform-independent programs for a variety of different target platforms. However, this comes at the cost of performance. As a consequence, Google introduced APIs that allow to write native applications and to exploit multiple cores as well as embedded GPUs for compute-intensive parts. This paper proposes code generation techniques in order to target the Renderscript and Filterscript APIs. Renderscript harnesses multi-core CPUs and unified shader GPUs, while the more restricted Filterscript also supports GPUs with earlier shader models. Our techniques focus on image processing applications and allow to target these APIs and OpenCL from a common description. We further supersede memory transfers by sharing the same memory region among different processing elements on HSA platforms. As reference, we use an embedded platform hosting a multi-core ARM CPU and an ARM Mali GPU. We show that our generated source code is faster than native implementations in OpenCV as well as the pre-implemented script intrinsics provided by Google for acceleration on the embedded GPU.
Keywords :
Android (operating system); Java; application program interfaces; embedded systems; graphics processing units; multiprocessing systems; source code (software); API; ARM Mali GPU; code generation; embedded GPU; embedded heterogeneous architectures; embedded platform; generated source code; image processing applications; multicore ARM CPU; multiple cores; platform independent programs; unified Java programming model; Androids; Computer architecture; DSL; Graphics processing units; Humanoid robots; Kernel; Optimization;
Conference_Titel :
Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014
Conference_Location :
Dresden
DOI :
10.7873/DATE.2014.099