Mobile 285 Views

by Ikhee Shin on 2017-05-08 09:07:26

Date : 2017.05.08(Mon) 04:00 P.M.

Locate : EB5. 533

Presenter : Ikhee Shin

Title : Adaptive Optimization for OpenCL Programs on Embedded Heterogeneous Systems

Author : Ben Taylor, Vicent Sanz Marco, Zheng Wang 

Abstract

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.

Proceeding : 

LCTES 2017 - The 18th Annual ACM SIGPLAN / SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems

Article source: http://eslab.cnu.ac.kr/en/Mobile/98-Adaptive-Optimization-for-OpenCL-Programs-on-Embedded-Heterogeneous-Systems.html

Other

General