This Article 
 Bibliographic References 
 Add to: 
Online Scheduling of Dynamic Task Graphs with Communication and Contention for Multiprocessors
January 2012 (vol. 23 no. 1)
pp. 126-133
R. Kumar, Dept. of Comput. Sci. & Eng., Indian Inst. of Technol. Kharagpur, Kharagpur, India
P. P. Chakrabarti, Dept. of Comput. Sci. & Eng., Indian Inst. of Technol. Kharagpur, Kharagpur, India
This paper presents an online scheduling methodology for task graphs with communication edges for multiprocessor embedded systems. The proposed methodology is designed for task graphs which are dynamic in nature either due to the presence of conditional paths or due to presence of tasks whose execution times vary. We have assumed homogeneous processors with broadcast and point-to-point communication models and have presented online algorithms for them. We show that this technique adapts better to variation in task graphs at runtime and provides better schedule length compared to a static scheduling methodology. Experimental results indicate up to 21.5 percent average improvement over purely static schedulers. The effects of model parameters like number of processors, memory, and other task graph parameters on performance are investigated in this paper.

[1] Y.-K. Kwok and I. Ahmad, “Static Scheduling Algorithms for Allocating Directed Task Graphs to Multiprocessors,” ACM Computing Surveys, vol. 31, no. 4, pp. 406-471, 1999.
[2] J.-J. Hwang, Y.-C. Chow, F.D. Anger, and C.-Y. Lee, “Scheduling Precedence Graphs in Systems with Interprocessor Communication Times,” SIAM J. Computing, vol. 18, no. 2, pp. 244-257, 1989.
[3] Y.-K. Kwok and I. Ahmad, “Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors,” IEEE Trans. Parallel and Distributed Systems, vol. 7, no. 5, pp. 506-521, May 1996.
[4] Y. Xie and W. Wolf, “Allocation and Scheduling of Conditional Task Graph in Hardware/Software Co-Synthesis,” Proc. Conf. Design Automation and Test in Europe (DATE), pp. 620-625, 2001.
[5] K.M. Chandy and P.F. Reynolds, “Scheduling Partially Ordered Tasks with Probabilistic Execution Times,” Proc. Fifth ACM Symp. Operating Systems Principles (SOSP), pp. 169-177, 1975.
[6] D.L. Rhodes and W. Wolf, “Co-Synthesis of Heterogeneous Multiprocessor Systems Using Arbitrated Communication,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD), pp. 339-342, 1999.
[7] H. El-Rewini and T.G. Lewis, “Scheduling Parallel Program Tasks onto Arbitrary Target Machines,” J. Parallel and Distributed Computing, vol. 9, no. 2, pp. 138-153, 1990.
[8] I. Ahmad and Y.-K. Kwok, “On Exploiting Task Duplication in Parallel Program Scheduling,” IEEE Trans. Parallel and Distributed Systems, vol. 9, no. 9, pp. 872-892, Sept. 1998.
[9] S. Bansal, P. Kumar, and K. Singh, “Dealing with Heterogeneity through Limited Duplication for Scheduling Precedence Constrained Task Graphs,” J. Parallel and Distributed Computing, vol. 65, no. 6, pp. 479-491, 2005.
[10] K. Shin, M. Cha, M. Jang, J. Jung, W. Yoon, and S. Choi, “Task Scheduling Algorithm Using Minimized Duplications in Homogeneous Systems,” J. Parallel Distributed Computing, vol. 68, no. 8, pp. 1146-1156, 2008.
[11] C.I. Park and T.Y. Choe, “An Optimal Scheduling Algorithm Based on Task Duplication,” IEEE Trans. Computers, vol. 51, no. 4, pp. 444-448, Apr. 2002.
[12] V. Kianzad and S.S. Bhattacharyya, “Efficient Techniques for Clustering and Scheduling onto Embedded Multiprocessors,” IEEE Trans. Parallel Distributed System, vol. 17, no. 7, pp. 667-680, July 2006.
[13] O. Sinnen and L.A. Sousa, “Communication Contention in Task Scheduling,” IEEE Trans. Parallel Distributed Systems, vol. 16, no. 6, pp. 503-515, June 2005.
[14] R. Ernst and W. Ye, “Embedded Program Timing Analysis Based on Path Clustering and Architecture Classification,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD '97), pp. 598-604, 1997.
[15] J. Yang, X. Ma, C. Hou, and Z. Yao, “A Static Multiprocessor Scheduling Algorithm for Arbitrary Directed Task Graphs in Uncertain Environments,” Proc. Eighth Int'l Conf. Algorithms and Architectures for Parallel Processing (ICA3PP '08), pp. 18-29, 2008.
[16] N.R. Satish, K. Ravindran, and K. Keutzer, “Scheduling Task Dependence Graphs with Variable Task Execution Times onto Heterogeneous Multiprocessors,” Proc. Eighth ACM Int'l Conf. Embedded Software (EMSOFT '08), pp. 149-158, 2008.
[17] F. Wang, C. Nicopoulos, X. Wu, Y. Xie, and N. Vijaykrishnan, “Variation-Aware Task Allocation and Scheduling for MPSoC,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design, pp. 598-603, 2007.
[18] A. Feldmann, M.-Y. Kao, J. Sgall, and S.-H. Teng, “Optimal Online Scheduling of Parallel Jobs with Dependencies,” Proc. 25th Ann. ACM Symp. Theory of Computing (STOC '93) pp. 642-651, 1993.
[19] R. Anderson, P. Beame, and W. Ruzzo, “Low Overhead Parallel Schedules for Task Graphs,” Proc. Second Ann. ACM Symp. Parallel Algorithms and Architectures (SPAA '90), pp. 66-75, 1990.
[20] R. Gupta, D. Mosse, and R. Suchoza, “Real-Time Scheduling Using Compact Task Graphs,” Proc. 16th Int'l Conf. Distributed Computing Systems (ICDCS '96), pp. 55-62, 1996.
[21] “The TBB Task Scheduler,” v11i4/5-foundations4-tbb.htm, 2011.
[22] P. Choudhury, R. Kumar, and P.P. Chakrabarti, “Hybrid Scheduling of Dynamic Task Graphs with Selective Duplication for Multiprocessors under Memory and Time Constraints,” IEEE Trans. Parallel and Distributed Systems, pp. 967-980, 2008.
[23] R. Johnsonbaugh and M. Kalin, “A Graph Generation Software Package,” Proc. 22nd SIGCSE Technical Symp. Computer Science Education (SIGCSE), pp. 151-154, 1991.
[24] “Task Graphs for Free 3.0,” download.html, 2011.

Index Terms:
processor scheduling,embedded systems,graph theory,schedule length,online scheduling,dynamic task graph,multiprocessor embedded system,homogeneous processor,broadcast communication model,point-to-point communication model,Program processors,Schedules,Dynamic scheduling,Optimal scheduling,Scheduling algorithm,edge scheduling.,Multiprocessor scheduling,task graphs,static and online scheduling
R. Kumar, P. Choudhury, P. P. Chakrabarti, "Online Scheduling of Dynamic Task Graphs with Communication and Contention for Multiprocessors," IEEE Transactions on Parallel and Distributed Systems, vol. 23, no. 1, pp. 126-133, Jan. 2012, doi:10.1109/TPDS.2011.104
Usage of this product signifies your acceptance of the Terms of Use.