Module 2:Scheduling, Allocation and Binding

Lecture 2 & 3 :Scheduling Algorithms

Question and Answers

Question:

Illustrate an example of scheduling where FDS does not provide optimal results in terms of resource requirements.

Answer:

Consider the following expressions “out1=(a+b+c)*d” and “out2=(e+f)*g” . ASAP and ALSP schedule for “out1=(a+b+c)*d” and “out2=(e+f)*g” are shown in Figure 9 and Figure 10, respectively. INTERVALi and RANGEi for “out1=(a+b+c)*d” and “out2=(e+f)*g” are shown in Figure 11. As FDS algorithm does not specify which type of operator to start with, let us consider adder first. From Figure 11 and FDS algorithm it may be noted operation 04 can be scheduled in either step1 or step2, because both will lead to same cost in terms of resource requirements (number of adder is two). So let the operation 04 be scheduled in step2, which implies that operation 05 will be placed in step3. Now the total resource requirement is two adders and two multipliers. Let us see the other option and schedule operation 04 in step1. Now by FDS operator 05 will be placed in step2. Now the total resource requirement is two adders and one multiplier. So FDS may provide non-optimal solution; Figure 12 and Figure 13 illustrates this fact.

Figure9. ASAP schedule for “out1=(a+b+c)*d” and “out2=(e+f)*g”