The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.01 - Jan. (2013 vol.62)
pp: 98-111
Michele Lombardi , University of Bologna, Bologna
Michela Milano , University of Bologna, Bologna
Luca Benini , University of Bologna, Bologna
ABSTRACT
Effective multicore computing requires to make efficient usage of the computational resources on a chip. Offline mapping and scheduling can be applied to improve the performance, but classical approaches require considerable a priori knowledge of the target application. In a practical setting, precise information is often unavailable; one can then resort to approximate time and resource usage figures, but this usually requires to make conservative assumptions. The issue is further stressed if real-time guarantees must be provided. We tackle predictable and efficient nonpreemptive scheduling of multitask applications in the presence of duration uncertainty. Hard real-time guarantees are provided with limited idle time insertion, by exploiting a hybrid offline/online technique known as Precedence Constraint Posting (PCP). Our approach does not require probability distributions to be specified, relying instead on simple and cheaper-to-obtain information (bounds, average values). The method has been tested on synthetic applications/platforms and compared with an offline optimized Fixed Priority Scheduling (FPS) approach and a pure online FIFO scheduler; the results are very promising, as the PCP schedules exhibit good stability and improved average execution time (14 percent on average, up to 30 percent versus FPS and up to 40 percent versus the FIFO scheduler).
INDEX TERMS
Schedules, Scheduling, Processor scheduling, Uncertainty, Resource management, Programming, Real time systems, optimization, Scheduling, uncertain execution and communication times, task graph, multicore, precedence constraint posting
CITATION
Michele Lombardi, Michela Milano, Luca Benini, "Robust Scheduling of Task Graphs under Execution Time Uncertainty", IEEE Transactions on Computers, vol.62, no. 1, pp. 98-111, Jan. 2013, doi:10.1109/TC.2011.203
REFERENCES
[1] D.C. Pham et al., “Overview of the Architecture, Circuit Design, and Physical Implementation of a First-Generation Cell Processor,” IEEE J. Solid-State Circuits, vol. 41, no. 1, pp. 179-196, Jan. 2006.
[2] M. Paganini, “Nomadik: A Mobile Multimedia Application Processor Platform,” Proc. Asia and South Pacific Design Automation Conf. (ASP-DAC), pp. 749-750, 2007.
[3] J. Reineke et al., “A Definition and Classification of Timing Anomalies,” Proc. Int'l Workshop Worst Case Execution Time (WCET), 2006.
[4] J.W.S. Liu, Real-Time Systems. Prentice Hall, 2000.
[5] L. Thiele and R. Wilhelm, “Design for Timing Predictability,” Real-Time Systems, vol. 28, no. 2, pp. 157-177, 2004.
[6] M. Lombardi, M. Milano, and L. Benini, “Robust Non-Preemptive Hard Real-Time Scheduling for Clustered Multicore Platforms,” Proc. Conf. Design, Automation and Test in Europe (DATE), pp. 803-808, 2009.
[7] M. Lombardi and M. Milano, “A Precedence Constraint Posting Approach for the RCPSP with Time Lags and Variable Durations,” Proc. Int'l Conf. Principles and Practice of Constraint Programming (CP), pp. 569-583, 2009.
[8] N. Policella et al., “From Precedence Constraint Posting to Partial Order Schedules: A CSP Approach to Robust Scheduling,” AI Comm., vol. 20, no. 3, pp. 163-180, 2007.
[9] N. Fisher and S.K. Baruah, “The Partitioned Multiprocessor Scheduling of Non-Preemptive Sporadic Task Systems,” Proc. IEEE Int'l Real-Time Systems Symp. (RTNS), 2006.
[10] S.K. Baruah, “The Non-Preemptive Scheduling of Periodic Tasks upon Multiprocessors,” Real-Time Systems, vol. 32, no. 1, pp. 9-20, 2006.
[11] M. Ruggiero et al., “A Fast and Accurate Technique for Mapping Parallel Applications on Stream-Oriented MPSoC Platforms with Communication Awareness,” Int'l J. Parallel Programming, vol. 36, no. 1, pp. 3-36, 2008.
[12] E. Zitzler et al., “Performance Assessment of Multiobjective Optimizers: An Analysis and Review,” IEEE Trans. Evolutionary Computation, vol. 7, no. 2, pp. 117-132, Apr. 2003.
[13] R.L. Graham, “Bounds for Certain Multiprocessing Anomalies,” Bell System Technical J., vol. 45, no. 9, pp. 1563-1581, 1966.
[14] A. Brekling, M.R. Hansen, and J. Madsen, “Models and Formal Verification of Multiprocessor System-on-Chips,” J. Logic and Algebraic Programming, vol. 77, nos. 1/2, pp. 1-19, 2008.
[15] P. Brucker et al., “Resource-Constrained Project Scheduling: Notation, Classification, Models, and Methods,” European J. Operational Research, vol. 112, no. 1, pp. 3-41, 1999.
[16] S. Hartmann and D. Briskorn, “A Survey of Variants and Extensions of the Resource-Constrained Project Scheduling Problem,” European J. Operational Research, vol. 207, no. 1, pp. 1-14, 2010.
[17] P. Baptiste, C. Le Pape, and W. Nuijten, Constraint-Based Scheduling. Kluwer Academic Publishers, 2001.
[18] P. Laborie, “Algorithms for Propagating Resource Constraints in AI Planning and Scheduling: Existing Approaches and New Results,” Artificial Intelligence, vol. 143, no. 2, pp. 151-188, Feb. 2003.
[19] J.C. Beck and A.J. Davenport, “A Survey of Techniques for Scheduling with Uncertainty,” http://www.eil.utoronto.ca/profiles/chris/ gzuncertainty-survey.ps, 2002.
[20] W. Herroelen and R. Leus, “Project Scheduling under Uncertainty: Survey and Research Potentials,” European J. Operational Research, vol. 165, no. 2, pp. 289-306, 2005.
[21] S. de Vonder, E.L. Demeulemeester, and W. Herroelen, “A Classification of Predictive-Reactive Project Scheduling Procedures,” J. Scheduling, vol. 10, no. 3, pp. 195-207, 2007.
[22] A.J. Davenport, C. Gefflot, and J.C. Beck, “Slack-Based Techniques for Robust Schedules,” Proc. European Conf. Planning (ECP), pp. 7-18, 2001.
[23] G. Igelmund and F.J. Radermacher, “Preselective Strategies for the Optimization of Stochastic Project Networks under Resource Constraints,” Networks, vol. 13, no. 1, pp. 1-28, Jan. 1983.
[24] F. Stork, “Stochastic Resource-Constrained Project Scheduling,” PhD dissertation, Technische Universitat Berlin, 2001.
[25] F. Wang and Y. Xie, “Embedded Multi-Processor System-on-Chip (MPSoC) Design Considering Process Variations,” Proc. IEEE Int'l Symp. Parallel and Distributed Processing (IPDPS), pp. 1-5, Apr. 2008.
[26] S. Manolache, P. Eles, and Z. Peng, “Schedulability Analysis of Applications with Stochastic Task Execution Times,” ACM Trans. Embedded Computing Systems, vol. 3, no. 4, pp. 706-735, Nov. 2004.
[27] R. Hall et al., “A Comparison of Dag-Scheduling Strategies for Internet-Based Computing,” Proc. IEEE Int'l Symp. Parallel and Distributed Processing (IPDPS), pp. 1-9, 2007.
[28] G. Cordasco and A. Rosenberg, “Area-Maximizing Schedules for Series-Parallel DAGs,” Proc. Int'l Euro-Par Conf., pp. 380-392, 2010.
[29] V. Shestak and J. Smith, “Iterative Algorithms for Stochastically Robust Static Resource Allocation in Periodic Sensor Driven Clusters,” Proc. Int'l Conf. Parallel and Distributed Computing and Systems (PDCS), pp. 166-174, 2006.
[30] A. Cesta, A. Oddi, and S. Smith, “Scheduling Multi-Capacitated Resources under Complex Temporal Constraints,” Proc. Int'l Conf. Principles and Practice of Constraint Programming (CP), p. 465, 1998.
[31] P. Laborie, “Complete MCS-Based Search: Application to Resource Constrained Project Scheduling,” Proc. Int'l Joint Conf. Artificial Intelligence (IJCAI), pp. 181-186, 2005.
[32] A. Cesta, A. Oddi, and S.F. Smith, “Iterative Flattening: A Scalable Method for Solving Multi-Capacity Scheduling Problems,” Proc. 17th Nat'l Conf. Artificial Intelligence and 12th Conf. Innovative Applications of Artificial Intelligence (AAAI/IAAI), pp. 742-747, 2000.
[33] R. Dechter, I. Meiri, and J. Pearl, “Temporal Constraint Networks,” Artificial Intelligence, vol. 49, nos. 1-3, pp. 61-95, 1991.
[34] T. Vidal and H. Fargier, “Handling Contingency in Temporal Constraint Networks: From Consistency to Controllabilities,” J. Experimental and Theoretical Artificial Intelligence, vol. 11, no. 1, pp. 23-45, 1999.
[35] P.H. Morris and N. Muscettola, “Temporal Dynamic Controllability Revisited,” Proc. Nat'l Conf. Artificial Intelligence (AAAI), pp. 1193-1198, 2005.
[36] N. Muscettola, “Computing the Envelope for Stepwise-Constant Resource Allocations,” Proc. Int'l Conf. Principles and Practice of Constraint Programming (CP), pp. 139-154, 2002.
[37] D. Culler et al., “LogP: A Practical Model of Parallel Computation,” Comm. ACM, vol. 39, no. 11, pp. 78-85, 1996.
[38] L. Benini et al., “Allocation and Scheduling for Mpsocs via Decomposition and No-Good Generation,” Proc. Int'l Joint Conf. Artificial Intelligence (IJCAI), vol. 19, pp. 1517-1518, 2005.
[39] M. Golumbic, Algorithmic Graph Theory and Perfect Graphs, second ed. Elsevier, 2004.
[40] J. Edmonds and R.M. Karp, “Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems,” J. ACM, vol. 19, no. 2, pp. 248-264, 1972.
[41] R.M. Haralick and G.L. Elliott, “Increasing Tree Search Efficiency for Constraint Satisfaction Problems,” Artificial Intelligence, vol. 14, no. 3, pp. 263-313, 1980.
[42] S. Bell et al., “TILE64 Processor: A 64-Core SoC with Mesh Interconnect,” Proc. IEEE Int'l Solid-State Circuits Conf. (ISSCC), pp. 88-598, 2008.
[43] G. Karypis and V. Kumar, “A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs,” SIAM J. Scientific Computing, vol. 20, no. 1, pp. 359-392, 1999.
[44] S. Manolache, P. Eles, and Z. Peng, “Task Mapping and Priority Assignment for Soft Real-Time Applications under Deadline Miss Ratio Constraints,” ACM Trans. Embedded Computing Systems, vol. 7, no. 2, pp. 1-35, Feb. 2008.
6 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool