Title :
High-level compute APIs and performance portability on Android
Author_Institution :
Nat. Taiwan Univ., Taipei, Taiwan
Abstract :
The versatility of heterogeneous platform had prompted it to become the mainstream of computer architecture design, especially for mobile computing. It is necessary to classify the strength and weakness among different programming models in heterogeneous system development to guide programmers to select suitable tools while implementing various software layers. In addition to the models, we will also offer two other angles: Hardware and runtime. The hardware side details heterogeneous compute devices. For the runtime angle, utilizing all available compute devices is a differentiator. Achieving device fusion and performance portability at run time have been active research areas recently. In this talk, we select two types of representative programming models, Google RenderScript and OpenCL, for comparison in order to fully illustrate their technical correlation and the implications to the platform architecture and system construction. We focus on the following aspects: language capability, performance, code complexity and multi-versioning, static runtime distribution and dynamic load balancing. RenderScript benefits application developers in terms of flexibility and hands-on programming convenience while OpenCL excels at wide adoption among hardware vendors and low-level runtime construction to maximize the system performance.
Keywords :
Android (operating system); application program interfaces; configuration management; mobile computing; resource allocation; software portability; Android; Google RenderScript; OpenCL; application development; code complexity; computer architecture design; device fusion; dynamic load balancing; hands-on programming convenience; hardware; heterogeneous compute devices; heterogeneous platform; heterogeneous system development; high-level compute API; language capability; mobile computing; multiversioning; performance portability; platform architecture; programming model; software layer; static runtime distribution; system construction; system performance maximization; Computational modeling; Computer architecture; Educational institutions; Google; Hardware; Programming; Runtime;
Conference_Titel :
Embedded Systems for Real-time Multimedia (ESTIMedia), 2013 IEEE 11th Symposium on
Conference_Location :
Montreal, QC
DOI :
10.1109/ESTIMedia.2013.6704496