Adaptive Optimization for OpenCL Programs on Embedded Heterogeneous Systems
Heterogeneous multi-core architectures consisting of CPUs and GPUs are commonplace in today’s embedded systems. These architectures offer potential for energy efficient computing if the application task is mapped to the right core. Realizing such potential is challenging due to the complex and evolving natural of hardware and applications. This paper presents an automatic approach to map OpenCL kernels onto heterogeneous multi-cores for a given optimization criterion – whether it is faster runtime, lower energy consumption or a trade-off between them. This is achieved by developing a machine learning based approach to predict which processor to use to run the OpenCL kernel and the host program, and at what frequency the processor should operate. Instead of hand-tuning a model for each optimization metric, we use machine learning to develop a unified framework that first automatically learns the optimization heuristic for each metric off-line, and then uses the learned knowledge to schedule OpenCL kernels at runtime based on code and runtime information of the program. We apply our approach to a set of representative \OpenCL benchmarks and evaluate it on an ARM big.LITTLE mobile platform. Our approach achieves over 93% of the performance delivered by an oracle predictor. We obtain, on average, 1.2x, 1.6x, and 1.8x improvement respectively for runtime, energy consumption and the energy delay product, when compared to a state-of-the-art heterogeneous-aware OpenCL task mapping scheme.
Wed 21 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:50 - 12:30 | Session 1: Compiler Optimization for Embedded SystemsLCTES 2017 at Vertex WS208 Chair(s): Yi Wang Shenzhen University | ||
10:50 25mTalk | AOT Vs. JIT: Impact of Profile Data on Code Quality LCTES 2017 April W. Wade University of Kansas, Prasad Kulkarni University of Kansas, Michael Jantz University of Tennessee | ||
11:15 25mTalk | Adaptive Optimization for OpenCL Programs on Embedded Heterogeneous Systems LCTES 2017 Ben Taylor Lancaster University, UK, Vicent Sanz Marco Lancaster University, Zheng Wang Lancaster University | ||
11:40 25mTalk | Auto-Vectorization for Image Processing DSLs LCTES 2017 Oliver Reiche Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU), Christof Kobylko , Frank Hannig Friedrich-Alexander University Erlangen-Nürnberg (FAU), Jürgen Teich | ||
12:05 25mTalk | Dynamic Translation of Structured Loads/Stores and Register Mapping for Architectures with SIMD Extensions LCTES 2017 Sheng-Yu Fu , Ding-Yong Hong Institute of Information Science, Academia Sinica, Ping Yu Department of Computer Science and Information Engineering, National Taiwan University, Jan-Jan Wu Institute of Information Science, Academia Sinica, Wei-Chung Hsu Dept. Computer Science & Information Engineering, National Taiwan University |