Adaptive Heterogeneous PUs Scheduling for Layer-Wise DNN Acceleration
摘要
The growing computing demands require full usage of computational resources including CPUs, GPUs, NPUs, FPGAs, etc., to execute the computing tasks efficiently. However, due to the architectural disparities among xPUs and the lack of unified resource management mechanisms, achieving optimal scheduling in heterogeneous processing architectures remains a key challenge to satisfy the real-time requirements of high-performance computing. Moreover, the asymmetric processing such as Deep Neural Networks (DNNs) requires sophisticated scheduling to decompose the processing into dependent subtasks which need to be allocated to xPUs in compliance with their sequence and finish the high-priority computing earlier. In this paper, a dynamic task scheduling model for heterogeneous computing units is proposed. A mechanism is designed to accelerate DNN tasks with CPU as the scheduling core, decomposing the layer-wise structure of DNN into fine-grained subtasks to be allocated to heterogeneous processing units, for which the mathematical model is constructed and then solved using genetic algorithm to generate the pre-allocation plan. The allocation is then dynamically adjusted based on real-time feedback by solving the local search problem using simulated annealing. Experimental results show that the algorithm can significantly accelerate the computing tasks by improving the utilization of resources optimally and dynamically, with high adaptivity to unstable computing environment.