Skip to Main Content
Heterogeneous computing (HC) systems use different types of machines, networks, and interfaces to coordinate the execution of various task components which have different computational requirements. This variation in tasks requirements as well as machine capabilities has created a very strong need for developing mapping techniques to decide on which task should be moved to where and when, to optimize some system performance criteria. The existing dynamic heuristics for mapping tasks in HC systems works either on-line (immediate) or in batch mode. In batch mode, tasks are collected into a set that is examined for mapping at prescheduled times called mapping events. On contrast, on-line mode algorithms map a task onto a machine as soon as it arrives at the mapper. In this paper, we propose an on-line mapping algorithm which is called the maximum load balance, or for short the MLB. It tries to minimize the makespan by maximizing the load balancing of the target system. At each task arrival, the MLB algorithm examines all the machines in the HC suite one by one looking for the one that gives the maximum system balance among all possible mappings. In contrast with the opportunistic load balancing (OLB) heuristic; which assigns a task to the machine that becomes ready next, the MLB takes into consideration both the availability of the machine as well as the execution time of the task on that machine.