Module 2:Scheduling, Allocation and Binding

Lecture 2 & 3 :Scheduling Algorithms

Figure 2. ALAP scheduling for “out1=((a*b)/(c*d))-a-((e*f)/b)” and “out2=(g-b)+f”

In this case, it may be noted that operations 05, 09 do not have any direct successors, i.e., they generate output values. So these operations have the control step as M=4 . Operation 05 is the immediate successor of 04 , so, control_step(05) = control_step(05)-1=3. Similarly, control step assignment for all operations can be explained.

This schedule is complete within the 1 st control step, thereby making it successful. The resource requirements are—

If ALAP is compared with ASAP, it may be noted that we have achieved the following.

So, it may be observed that for the subpart of the expression, “(e*f)/b”, ALSP is better compared to ASAP. However, for the expression, “out2=(g-b)+f” ASAP is better compared to ALAP. As already mentioned, ALSP and ASAP are heuristics and may not generate an optimal solution. By applying the scheme ALAP for “(e*f)/b” and ASAP for “out2=(g-b)+f”, the schedule we obtain for M=4 is shown in Figure 3.

Figure 3. ALAP scheduling for “((e*f)/b)” and ASAP for “out2=(g-b)+f”

It may be noted that the resource consumption in case of Figure 3 is as follows.

So it may be noted that a schedule which is a “mix of ALAP and ASAP” provides better solution than by the individual algorithms.

In the next section we will see FDS scheduling algorithm which is motivated from above fact of combining ALAP and ASAP.