DYNAMIC PROCESSOR SELF-SCHEDULING FOR GENERAL PARALLEL NESTED LOOPS

被引:27
作者
FANG, ZX
TANG, PY
YEW, PC
ZHU, CQ
机构
[1] AUSTRALIAN NATL UNIV,DEPT COMP SCI,CANBERRA,ACT 2601,AUSTRALIA
[2] UNIV ILLINOIS,CTR SUPERCOMP RES & DEV,URBANA,IL 61801
[3] FUDAN UNIV,CTR COMP,SHANGHAI,PEOPLES R CHINA
基金
美国国家科学基金会;
关键词
Data synchronization; doacross loops; doall loops; self-scheduling; shared-memory multiprocessor;
D O I
10.1109/12.55693
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
This paper proposes a processor self-scheduling scheme for general parallel nested loops in multiprocessor systems. Parallel loops usually constitute most of the execution time in scientific application programs. In a general parallel loop structure, parallel loops, serial loops, and IF-THEN-ELSE constructs are nested in an arbitrary order, and the execution time of the loop body may vary substantially from iteration to iteration. In the proposed scheme, programs are instrumented to allow processors to schedule loop iterations among themselves dynamically at run time without the involvement of the operating system. The proposed self-scheduling scheme has two levels. At the low level, it uses simple “fetch-and-op” operations to take advantage of the regular structure in the innermost parallel loop nests. At the high level, the irregular structure of the outer loops (parallel or serial) and the IF-THEN-ELSE constructs are handled by using dynamic parallel linked lists. The larger granularity of the processes at the high level can easily justify the added overhead incurred from maintaining such dynamic data structures. Many self-scheduling techniques proposed so far, such as guided self-scheduling (GSS) [14] and shortest-delay self-scheduling (SDSS) [16] can be incorporated in this scheme. The performance and its possible overhead using this scheme are also analyzed in the paper. © 1990 IEEE
引用
收藏
页码:919 / 929
页数:11
相关论文
共 24 条
[1]  
ALLEN F, 1988, 1988 P ACM INT C SUP, P207
[2]  
ALLEN R, 1987, 14TH ANN ACM S PRINC, P63
[3]  
CYTRON R, 1986, 1986 P INT C PAR PRO, P836
[4]  
DAREMAROGERS F, 1985, IBM RC11381 RES
[5]  
DIJKSTRA EW, 1972, OPERATING SYSTEMS TE, P72
[6]  
EISS M, 1988, 1988 P INT C PAR PRI, V2, P161
[7]   ALLOCATING INDEPENDENT SUBTASKS ON PARALLEL PROCESSORS [J].
KRUSKAL, CP ;
WEISS, A .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (10) :1001-1016
[8]   PARALLEL SUPERCOMPUTING TODAY AND THE CEDAR APPROACH [J].
KUCK, DJ ;
DAVIDSON, ES ;
LAWRIE, DH ;
SAMEH, AH .
SCIENCE, 1986, 231 (4741) :967-974
[9]  
KUCK DJ, 1984, 1984 P INT C PAR PRO, P129