Scheduling of Deep Learning Applications Onto Heterogeneous Processors in an Embedded Device
Open Access
- 2 March 2020
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Access
- Vol. 8, 43980-43991
Abstract
As the need for on-device machine learning is increasing recently, embedded devices tend to be equipped with heterogeneous processors that include a multi-core CPU, a GPU, and/or a DNN accelerator called a Neural Processing Unit (NPU). In the scheduling of multiple deep learning (DL) applications in such embedded devices, there are several technical challenges. First, a task can be mapped onto a single core or any number of available cores. So we need to consider various possible configurations of CPU cores. Second, embedded devices usually apply Dynamic Voltage and Frequency Scaling (DVFS) to reduce energy consumption at run-time. We need to consider the effect of DVFS in the profiling of task execution times. Third, to avoid overheat condition, it is recommended to limit the core utilization. Lastly, some cores will be shut-down at run-time if core utilization is not high enough, in case the hot-plugging option is turned on. In this paper, we propose a scheduling technique based on Genetic Algorithm to run DL applications on heterogeneous processors, considering all those issues. First, we aim to optimize the throughput of a single deep learning application. Next, we aim to find the Pareto optimal scheduling of multiple DL applications in terms of the response time of each DL application and overall energy consumption under the given throughput constraints of DL applications. The proposed technique is verified with real DL networks running on two embedded devices, Galaxy S9 and HiKey970.Keywords
Funding Information
- National Research Foundation of Korea (2018R1D1A1B07050463)
- Ministry of Science, ICT and Future Planning (2019R1A2B5B02069406)
This publication has 14 references indexed in Scilit:
- Densely Connected Convolutional Networks2017
- RSTensorFlow2017
- A dual-mode scheduling approach for task graphs with data parallelismInternational Journal of Embedded Systems, 2017
- High performance real-time scheduling of multiple mixed-criticality functions in heterogeneous distributed embedded systemsJournal of Systems Architecture, 2016
- Real-time co-scheduling of multiple dataflow graphs on multi-processor systems2016
- DeepX: A Software Accelerator for Low-Power Deep Learning Inference on Mobile Devices2016
- Generalized Extraction of Real-Time Parameters for Homogeneous Synchronous Dataflow Graphs2015
- List Scheduling Algorithm for Heterogeneous Systems by an Optimistic Cost TableIEEE Transactions on Parallel and Distributed Systems, 2013
- Performance-effective and low-complexity task scheduling for heterogeneous computingIEEE Transactions on Parallel and Distributed Systems, 2002
- Preemptively scheduling hard-real-time sporadic tasks on one processor1990