Static scheduling algorithms for allocating directed task graphs to multiprocessors

被引:799
|
作者
Kwok, YK
Ahmad, I
机构
[1] Univ Hong Kong, Dept Elect & Elect Engn, Hong Kong, Hong Kong, Peoples R China
[2] Hong Kong Univ Sci & Technol, Dept Comp Sci, Clear Water Bay, Hong Kong, Peoples R China
关键词
algorithms; design; performance; theory; automatic parallelization; DAG; multiprocessors; parallel processing; software tools; static scheduling; task graphs;
D O I
10.1145/344588.344618
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Static scheduling of a program represented by a directed task graph on a multiprocessor system to minimize the program completion time is a well-known problem in parallel processing. Since finding an optimal schedule is an NP-complete problem in general, researchers have resorted to devising efficient heuristics. A plethora of heuristics have been proposed based on a wide spectrum of techniques, including branch-and-bound, integer-programming, searching, graph-theory, randomization, genetic algorithms, and evolutionary methods. The objective of this survey is to describe various scheduling algorithms and their functionalities in a contrasting fashion as well as examine their relative merits in terms of performance and time-complexity. Since these algorithms are based on diverse assumptions, they differ in their functionalities, and hence are difficult to describe in a unified context. We propose a taxonomy that classifies these algorithms into different categories. We consider 27 scheduling algorithms, with each algorithm explained through an easy-to-understand description followed by an illustrative example to demonstrate its operation. We also outline some of the novel and promising optimization approaches and current research trends in the area. Finally, we give an overview of the software tools that provide scheduling/mapping functionalities.
引用
收藏
页码:406 / 471
页数:66
相关论文
共 50 条
  • [21] A SCHEME FOR ALLOCATING TASK GRAPHS ON HYPERCUBES
    LO, WT
    TRIPATHI, SK
    GHOSAL, D
    HIGH PERFORMANCE COMPUTING /, 1989, : 167 - 180
  • [22] An algorithm of allocating tasks to multiprocessors based on dynamic critical task
    Lan, Zhou
    Sun, Shi-Xin
    Jisuanji Xuebao/Chinese Journal of Computers, 2007, 30 (03): : 454 - 462
  • [23] ALLOCATING DATA TO DISTRIBUTED-MEMORY MULTIPROCESSORS BY GENETIC ALGORITHMS
    MANSOUR, N
    FOX, GC
    CONCURRENCY-PRACTICE AND EXPERIENCE, 1994, 6 (06): : 485 - 504
  • [24] Allocating data to distributed-memory multiprocessors by genetic algorithms
    Mansour, Nashat, 1600, John Wiley & Sons Ltd, Chichester, United Kingdom (06):
  • [25] Task Assignment Algorithms for Heterogeneous Multiprocessors
    Raravi, Gurulingesh
    Nelis, Vincent
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2014, 13
  • [26] Scheduling directed A-cyclic task graphs on heterogeneous processors using task duplication
    Baskiyar, S
    Dickinson, C
    HIGH PERFORMANCE COMPUTING - HIPC 2003, 2003, 2913 : 259 - 267
  • [27] Static-priority periodic scheduling on multiprocessors
    Ramamurthy, S
    Moir, M
    21ST IEEE REAL-TIME SYSTEMS SYMPOSIUM, PROCEEDINGS, 2000, : 69 - 78
  • [28] OPTIMAL STATIC SCHEDULING OF SEQUENTIAL LOOPS ON MULTIPROCESSORS
    ZAKY, A
    SADAYAPPAN, P
    PROCEEDINGS OF THE 1989 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, VOL 3: ALGORITHMS AND APPLICATIONS, 1989, : 130 - 137
  • [29] Portioned static-priority scheduling on multiprocessors
    Kato, Shinpei
    Yamasaki, Nobuyuki
    2008 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL & DISTRIBUTED PROCESSING, VOLS 1-8, 2008, : 1717 - 1728
  • [30] Finish time maximization method: an anti-sequence algorithm to scheduling task graphs for multiprocessors
    Sun, J
    Xu, WB
    Feng, B
    DCABES 2004, PROCEEDINGS, VOLS, 1 AND 2, 2004, : 447 - 450