Compaction of Schedules and a Two-Stage Approach for Duplication-Based DAG Scheduling

被引:47
作者
Bozdag, Doruk [1 ]
Oezguener, Fuesun [1 ]
Catalyurek, Umit V. [1 ,2 ]
机构
[1] Ohio State Univ, Dept Elect & Comp Engn, Columbus, OH 43210 USA
[2] Ohio State Univ, Dept Biomed Informat, Columbus, OH 43210 USA
基金
美国国家科学基金会;
关键词
Scheduling and task partitioning; task duplication; algorithms; multiprocessor systems; TASK DUPLICATION; ALGORITHM; GRAPHS; BENCHMARKING;
D O I
10.1109/TPDS.2008.260
中图分类号
TP301 [理论、方法];
学科分类号
080201 [机械制造及其自动化];
摘要
Many DAG scheduling algorithms generate schedules that require prohibitively large number of processors. To address this problem, we propose a generic algorithm, SC, to minimize the processor requirement of any given valid schedule. SC preserves the schedule length of the original schedule and reduces processor count by merging processor schedules and removing redundant duplicate tasks. To the best of our knowledge, this is the first algorithm to address this highly unexplored aspect of DAG scheduling. On average, SC reduced the processor requirement 91, 82, and 72 percent for schedules generated by PLW, TCSD, and CPFD algorithms, respectively. SC algorithm has a low complexity (O(vertical bar N vertical bar(3))) compared to most duplication-based algorithms. Moreover, it decouples processor economization from schedule length minimization problem. To take advantage of these features of SC, we also propose a scheduling algorithm SDS, having the same time complexity as SC. Our experiments demonstrate that schedules generated by SDS are only 3 percent longer than CPFD (O(vertical bar N vertical bar(4))), one of the best algorithms in that respect. SDS and SC together form a two-stage scheduling algorithm that produces schedules with high quality and low processor requirement, and has lower complexity than the comparable algorithms that produce similar high-quality results.
引用
收藏
页码:857 / 871
页数:15
相关论文
共 39 条
[1]
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
[2]
[Anonymous], 1989, Partitioning and Scheduling Parallel Programs for Multiprocessors
[3]
[Anonymous], 1979, Computers and Intractablity: A Guide to the Theory of NP-Completeness
[4]
Automatic code generation for many-body electronic structure methods: the tensor contraction engine [J].
Auer, AA ;
Baumgartner, G ;
Bernholdt, DE ;
Bibireata, A ;
Choppella, V ;
Cociorva, D ;
Gao, XY ;
Harrison, R ;
Krishnamoorthy, S ;
Krishnan, S ;
Lam, CC ;
Lu, QD ;
Nooijen, M ;
Pitzer, R ;
Ramanujam, J ;
Sadayappan, P ;
Sibiryakov, A .
MOLECULAR PHYSICS, 2006, 104 (02) :211-228
[5]
An improved duplication strategy for scheduling precedence constrained graphs in multiprocessor systems [J].
Bansal, S ;
Kumar, P ;
Singh, K .
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2003, 14 (06) :533-544
[6]
Baskiyar S., 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001, DOI 10.1109/IPDPS.2001.925003
[7]
Cluster-based static scheduling: Theory and practice [J].
Boeres, C ;
Rebello, VEF .
14TH SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING, PROCEEDINGS, 2002, :133-140
[8]
A task duplication based scheduling algorithm using partial schedules [J].
Bozdag, D ;
Özgüner, F ;
Ekici, E ;
Catalyurek, U .
2005 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSSING, PROCEEDINGS, 2005, :630-637
[9]
COLIN JY, 1991, OPER RES, P680, DOI DOI 10.1287/OPRE.39.4.680
[10]
Cosnard M., 1995, Parallel Processing Letters, V5, P527, DOI 10.1142/S0129626495000473