On parallelizing the multiprocessor scheduling problem

被引:34
作者
Ahmad, I [1 ]
Kwok, YK
机构
[1] Hong Kong Univ Sci & Technol, Dept Comp Sci, Hong Kong, Peoples R China
[2] Univ Hong Kong, Dept Elect & Elect Engn, Hong Kong, Peoples R China
关键词
parallel processing; resource management; processor allocation; scheduling; task graphs; parallel algorithms; message-passing; multiprocessors;
D O I
10.1109/71.762819
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Existing heuristics for scheduling a node and edge weighted directed task graph to multiple processors can produce satisfactory solutions but incur high time complexities, which tend to exacerbate in more realistic environments with relaxed assumptions. Consequently, these heuristics do not scale well and cannot handle problems of moderate sizes. A natural approach to reducing complexity, while aiming for a similar or potentially better solution, is to parallelize the scheduling algorithm. This can be done by partitioning the task graphs and concurrently generating partial schedules for the partitioned parts, which are then concatenated to obtain the final schedule. The problem, however, is nontrivial as there exists dependencies among the nodes of a task graph which must be preserved for generating a valid schedule. Moreover, the time clock for scheduling is global for all the processors (that are executing the parallel scheduling algorithm), making the inherent parallelism invisible. In this paper, we introduce a parallel algorithm that is guided by a systematic partitioning of the task graph to perform scheduling using multiple processors. The algorithm schedules both the tasks and messages, and is suitable for graphs with arbitrary computation and communication costs, and is applicable to systems with arbitrary network topologies using homogeneous or heterogeneous processors. We have implemented the algorithm on the Intel Paragon and compared it with three closely related algorithms. The experimental results indicate that our algorithm yields higher quality solutions while using an order of magnitude smaller scheduling times. The algorithm also exhibits an interesting trade-off between the solution quality and speedup while scaling well with the problem size.
引用
收藏
页码:414 / 432
页数:19
相关论文
共 29 条
[1]   COMPARISON OF LIST SCHEDULES FOR PARALLEL PROCESSING SYSTEMS [J].
ADAM, TL ;
CHANDY, KM ;
DICKSON, JR .
COMMUNICATIONS OF THE ACM, 1974, 17 (12) :685-690
[2]   On exploiting task duplication in parallel program scheduling [J].
Ahmad, I ;
Kwok, YK .
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1998, 9 (09) :872-892
[3]  
Ali H. H., 1993, Parallel Processing Letters, V3, P53, DOI 10.1142/S0129626493000083
[4]  
[Anonymous], 1979, Computers and Intractablity: A Guide to the Theoryof NP-Completeness
[5]  
BAXTER J, 1989, PROCEEDINGS OF THE 1989 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, VOL 2, P217
[6]   A TAXONOMY OF SCHEDULING IN GENERAL-PURPOSE DISTRIBUTED COMPUTING SYSTEMS [J].
CASAVANT, TL ;
KUHL, JG .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1988, 14 (02) :141-154
[7]  
CHEN HD, 1993, PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON FLUID MECHANICS, P270
[8]  
COLIN JY, 1991, OPER RES, P680, DOI DOI 10.1287/OPRE.39.4.680
[9]   An analysis of parallel heuristics for task allocation in multicomputers [J].
DeFalco, I ;
DelBalio, R ;
Tarantino, E .
COMPUTING, 1997, 59 (03) :259-275
[10]   SCHEDULING PARALLEL PROGRAM TASKS ONTO ARBITRARY TARGET MACHINES [J].
ELREWINI, H ;
LEWIS, TG .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1990, 9 (02) :138-153