A Heuristic Method for Data Allocation and Task Scheduling on Heterogeneous Multiprocessor Systems Under Memory Constraints
Abstract: Computing workflows in heterogeneous multiprocessor systems are often depicted as directed acyclic graphs (DAGs) comprising tasks and data blocks. These elements represent computational modules and their interdependencies, where the output data generated by one task serves as input for other tasks. However, in certain workflows, such as task schedules in digital signal processors, it is essential to account for the memory capacity limitations of data blocks when scheduling the tasks. The main objective of this paper is to address the challenge of data allocation and task scheduling under memory constraints, particularly on shared memory platforms. We propose an integer linear programming model to formulate the problem, which can be viewed as an extension of the flexible job shop scheduling problem. The goal is to minimize the length of the critical path. We propose a tabu search algorithm (TS) to tackle the data allocation and task scheduling problem under memory constraints. The TS algorithm incorporates several distinguishing features, such as a greedy initial solution construction method and a mixed neighborhood evaluation strategy that combines exact and approximate evaluation methods. Experimental results on randomly generated instances demonstrate that the TS algorithm can obtain high-quality solutions within a reasonable computational time. On average, the TS algorithm improves the makespan by 5–25% compared to the widely used classical load balancing algorithms in the literature. Furthermore, we analyze some key features of the TS algorithm to identify the contributing factors to its success.
Loading