Section 3.1 - Scheduling Tasks
Instructions
- The first video below explains the concepts in this section.
- This page also includes exercises that you should attempt to solve yourself. You can check your answers and watch the videos explaining how to solve the exercises.
Concepts
- Machine scheduling problems for tasks
- Order-requirement digraphs with priority lists
- List processing algorithm for assigning tasks to processors
Exercises
Directions: You should try to solve each problem first, and then click "Reveal Answer" to check your answer. You can click "Watch Video" if you need help with a problem.
1. Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \(T_8, T_7, T_6, T_5, T_4, T_3, T_2, T_1\)
2. Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \(T_1, T_2, T_3, T_4, T_5, T_6, T_7, T_8\)
3. Use the list processing algorithm to find the completion time using 3 processors given the following priority list: \(T_1, T_2, T_3, T_4, T_5, T_6, T_7, T_8\)
4.
Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \(T_3,\) \(T_7,\) \(T_9,\) \(T_5,\) \(T_8,\) \(T_6,\) \(T_{10},\) \(T_{12},\) \(T_2,\) \(T_{11},\) \(T_1,\) \(T_4,\)
5. Use the list processing algorithm to find the completion time using 3 processors given the following priority list: \(T_3,\) \(T_7,\) \(T_9,\) \(T_5,\) \(T_8,\) \(T_6,\) \(T_{10},\) \(T_{12},\) \(T_2,\) \(T_{11},\) \(T_1,\) \(T_4,\)
6. Use the list processing algorithm to find the completion time using 3 processors given the following priority list: \(T_1,\) \(T_4,\) \(T_{11},\) \(T_6,\) \(T_7,\) \(T_3,\) \(T_{12},\) \(T_2,\) \(T_{10},\) \(T_5,\) \(T_8,\) \(T_9\)
7. Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \(T_{4},\) \(T_{3},\) \(T_{7},\) \(T_{1},\) \(T_{6},\) \(T_{5},\) \(T_{2},\) \(T_{8}.\) Is the schedule optimal?
Video Errata: At 5:20, the presenter says the critical path ends with \(T_8\), but it should end at \(T_7\).
Yes, it is optimal since the critical path is 22 minutes.
8. Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \( T_{1},\) \( T_{2},\) \( T_{3},\) \( T_{4},\) \( T_{5},\) \( T_{6},\) \( T_{7},\) \( T_{8},\) \( T_{9}.\) Is the schedule optimal?
No, it is not optimal since the critical path is 20 minutes.
9. Use the list processing algorithm to find the completion time using 2 processors given the following priority list: \(T_{9},\) \(T_{5},\) \(T_{2},\) \(T_{4},\) \(T_{3},\) \(T_{6},\) \(T_{8},\) \(T_{1},\) \(T_{7}.\) Is the schedule optimal?
No, it is not optimal since the critical path is 21 minutes.
10. Use the list processing algorithm to find the completion time using 3 processors given the following priority list: \(T_{9},\) \(T_{5},\) \(T_{2},\) \(T_{4},\) \(T_{3},\) \(T_{6},\) \(T_{8},\) \(T_{1},\) \(T_{7}.\) Is the schedule optimal?
Yes, this schedule is optimal since the critical path is also 21 minutes.
11. Find the critical path. Use the list processing algorithm to find the completion time using 3 processors given the following priority list: \(T_{8},\) \(T_{7},\) \(T_{6},\) \(T_{5},\) \(T_{4},\) \(T_{3},\) \(T_{2},\) \(T_{1},\)
Completion Time: 21 minutes
Note, this is not an optimal schedule since the completion time is longer than the critical path.