Search

Searching. Please wait…

Sigmoid: an auto-tuned load balancing algorithm for heterogeneous systems

Abstract: A challenge that heterogeneous system programmers face is leveraging the performance of all the devices that integrate the system. This paper presents Sigmoid, a new load balancing algorithm that efficiently co-executes a single OpenCL data-parallel kernel on all the devices of heterogeneous systems. Sigmoid splits the workload proportionally to the capabilities of the devices, drastically reducing response time and energy consumption. It is designed around several features; it is dynamic, adaptive, guided and effortless, as it does not require the user to give any parameter, adapting to the behaviourof each kernel at runtime. To evaluate Sigmoid?s performance, it has been implemented in Maat, a system abstraction library. Experimental results with different kernel types show that Sigmoid exhibits excellent performance, reaching a utilization of 90%, together with energy savings up to 20%, always reducing programming effort compared to OpenCL, and facilitating the portability to other heterogeneous machines

 Fuente: Journal of Parallel and Distributed Computing, 2021, 157, 30 - 42

 Publisher: Elsevier

 Publication date: 01/11/2021

 No. of pages: 13

 Publication type: Article

 DOI: 10.1016/j.jpdc.2021.06.003

 ISSN: 0743-7315,1096-0848

 Spanish project: PID2019-105660RB-C22

 Publication Url: https://doi.org/10.1016/j.jpdc.2021.06.003