This paper proposes a scheme for the automatic detection of parallelism among coarse grain tasks (macrotasks) in a Fortran program. In this scheme parallelism is represented as the EXECUTION START CONDITION for each macrotask in a program. This condition is represented by a logical expression that states when, in relation to other macrotasks, the execution of a certain macrotask can be started. This representation aids in scheduling a set of macrotasks onto processors. To construct such an expression, a novel concept called co‐control dependence is introduced. Analyzing co‐control dependence together with control dependence and data dependences among macrotasks, the scheme detects and describes successfully the parallelism among all macrotasks in a program.
ASJC Scopus subject areas