Exploration on Task Scheduling Strategy for CPU-GPU Heterogeneous Computing System

For a CPU-GPU heterogeneous computing system, different types of processors have load balancing problems in the calculation process. What's more, multitasking cannot be matched to the appropriate processor core is also an urgent problem to be solved. In this paper, we propose a task scheduling strategy for high-performance CPU-GPU heterogeneous computing platform to solve these problems. For the single task model, a task scheduling strategy based on load-aware for CPU-GPU heterogeneous computing platform is proposed. This strategy detects the computing power of the CPU and GPU to process specified tasks, and allocates computing tasks to the CPU and GPU according to the perception ratio. The tasks are stored in a bidirectional queue to reduce the additional overhead brought by scheduling. For the multi-task model, a task scheduling strategy based on the genetic algorithm for CPU-GPU heterogeneous computing platform is proposed. The strategy aims at improving the overall operating efficiency of the system, and accurately binds the execution relationship between different types of tasks and heterogeneous processing cores. Our experimental results show that the scheduling strategy can improve the efficiency of parallel computing as well as system performance.

[1]  Daming Wei,et al.  Load-prediction scheduling algorithm for computer simulation of electrocardiogram in hybrid environments , 2015, J. Syst. Softw..

[2]  Thomas M. Keane,et al.  Multi-heuristic dynamic task allocation using genetic algorithms in a heterogeneous distributed system , 2010, J. Parallel Distributed Comput..

[3]  Robert Chau,et al.  Process and Packaging Innovations for Moore’s Law Continuation and Beyond , 2019, 2019 IEEE International Electron Devices Meeting (IEDM).

[4]  Juan Fang,et al.  Exploring Heterogeneous NoC Design Space in Heterogeneous GPU-CPU Architectures , 2015, Journal of Computer Science and Technology.

[5]  Enrique Alba,et al.  A parallel local search in CPU/GPU for scheduling independent tasks on large heterogeneous computing systems , 2015, The Journal of Supercomputing.

[6]  Daming Wei,et al.  Load-Prediction Scheduling for Computer Simulation of Electrocardiogram on a CPU-GPU PC , 2013, 2013 IEEE 16th International Conference on Computational Science and Engineering.

[7]  Jie Shen,et al.  Improving performance by matching imbalanced workloads with heterogeneous platforms , 2014, ICS '14.

[8]  Wei Chen,et al.  GreenGPU: A Holistic Approach to Energy Efficiency in GPU-CPU Heterogeneous Architectures , 2012, 2012 41st International Conference on Parallel Processing.

[9]  Jeffrey S. Vetter,et al.  A Survey of CPU-GPU Heterogeneous Computing Techniques , 2015, ACM Comput. Surv..

[10]  Pradeep Dubey,et al.  Debunking the 100X GPU vs. CPU myth: an evaluation of throughput computing on CPU and GPU , 2010, ISCA.

[11]  Santonu Sarkar,et al.  Predicting Execution Time of CUDA Kernel Using Static Analysis , 2018, 2018 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Ubiquitous Computing & Communications, Big Data & Cloud Computing, Social Computing & Networking, Sustainable Computing & Communications (ISPA/IUCC/BDCloud/SocialCom/SustainCom).