• DocumentCode
    129002
  • 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
  • fYear
    2014
  • fDate
    24-28 March 2014
  • Firstpage
    1
  • Lastpage
    6
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Design, Automation and Test in Europe Conference and Exhibition (DATE), 2014
  • Conference_Location
    Dresden
  • Type

    conf

  • DOI
    10.7873/DATE.2014.099
  • Filename
    6800300