Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Deadlock prevention in processor self-scheduling for parallel nested loops

Conference ·
OSTI ID:5768508

Processor self-scheduling is an effective distributed dynamic scheduling scheme for parallel nested loops in multiprocessor systems. A parallel nested loop structure can be considered as a task system. A task is an interation (or several iterations) of an innermost loop body and the execution order of tasks is determined by a precedence relation. Data dependences among statements are enforced either by the precedence relation or by explicit synchronization. Since self-scheduling is non-preemptive and uses busy-waiting as the basic technique for task synchronization, deadlocks may possibly arise. This paper identifies conditions that allow deadlock-free processor self-scheduling. It uses control tokens and data tokens to model the precedence relation and data dependences. Both control tokens and data tokens, together with processors, are regarded as three kinds of resources needed by tasks. Based on this resource model, we study three possible self-scheduling schemes with different degrees of parallelism, and propose to use appropriate scheduling priority for allocating processors to prevent deadlocks. 12 refs., 7 figs.

Research Organization:
Illinois Univ., Urbana (USA). Center for Supercomputing Research and Development; Wichita State Univ., KS (USA). Dept. of Computer Science
DOE Contract Number:
FG02-85ER25001
OSTI ID:
5768508
Report Number(s):
DOE/ER/25001-39; CONF-870831-5; CSRD-626; ON: DE88003573
Country of Publication:
United States
Language:
English

Similar Records

Processor self-scheduling for multiple-nested parallel loops
Technical Report · Tue Dec 31 23:00:00 EST 1985 · OSTI ID:7258138

Dynamic processor self-scheduling for general parallel nested loops
Conference · Thu Sep 10 00:00:00 EDT 1987 · OSTI ID:5642684

Dynamic processor self-scheduling for general parallel nested loops
Journal Article · Sun Jul 01 00:00:00 EDT 1990 · IEEE Transactions on Computers (Institute of Electrical and Electronics Engineers); (USA) · OSTI ID:6582372