Skip to main content

Advertisement

Log in

Failure-Aware Task Scheduling of Synchronous Data Flow Graphs Under Real-Time Constraints

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

As more processors are integrated into Multiprocessor System-on-Chips (MPSoCs) via relentless technology scaling, the mean-time-to-failure (MTTF) is reduced to the extent that unexpected processor failures are considered during design time. A popular approach to tolerate processor failures is to migrate tasks on the faulty processor to live processors. This approach, however, is not suitable for real-time digital signal processing (DSP) applications since it may not guarantee real-time constraints. In this paper, we propose the re-scheduling of the entire application to minimize throughput degradation under a latency constraint, given that the application is specified by a Synchronous Data Flow (SDF) graph. We obtain sub-optimal re-scheduling results using a genetic algorithm for each scenario of processor failures at compile-time. If a failure is detected at run-time, the live processors obtain the saved schedule, perform task transfer, and execute the remaining tasks of the current iteration. We compare preemptive and non-preemptive migration policies and propose a hybrid policy to obtain better performance. We demonstrate the viability of the proposed technique through experiments with real-life DSP applications as well as randomly generated graphs under timing constraints and random fault scenarios.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8

Similar content being viewed by others

References

  1. Council, J.E.D.E. Failure mechanisms and models for semiconductor devices. http://www.jedec.org/standards-documents/docs/jep-122e.

  2. Chang, H. W. D., & Oldham, W. J. B. (1995). Dynamic task allocation models for large distributed computing systems. IEEE Transactions Parallel and Distributed Systems, 6(12), 1301–1315.

    Article  Google Scholar 

  3. Zhu, C., Gu, Z., Dick, R.P., Shang, L. (2007). Reliable multiprocessor system-on-chip synthesis. In Proc. International Conference on Hardware/Software Codesign and System Synthesis, pp. 239–244.

  4. Huang, L., Yuan, F., Xu, Q. (2009). Lifetime reliability-aware task allocation and scheduling for MPSoC platforms. In Proc. Design Automation and Test in Europe, pp. 1338–1343.

  5. Koren, I., & Krishna, C. M. (2007). Fault-tolerant systems. Burlington, MA: Morgan Kaufmann Publisher.

    MATH  Google Scholar 

  6. Zhang, X., & Kerkhoff, H.G. (2011). A dependability solution for homogeneous MPSoCs. In Proc. 2011 IEEE 17th Pacific Rim International Symposium on Dependable Computing, pp.53–62.

  7. Kim, K., Karri, R., Potkonjak, M. (1996). Configurable spare processors: a new approach to system level fault-tolerance. In Proc. 1996 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems.

  8. Miremadi, S.G., & Asadi, H. (2011). ScTMR: a scan chain-based error recovery technique for TMR systems in safety-critical applications. In Proc. Design Automation and Test in Europe, pp. 1–4.

  9. Manimaran, G., & Murthy, C. S. R. (1998). A fault-tolerant dynamic scheduling algorithm for multiprocessor real-time systems and its analysis. IEEE Transactions Parallel and Distributed Systems, 9(11), 1137–1152.

    Article  Google Scholar 

  10. Suen, T. T. Y., & Wong, J. S. K. (1992). Efficient task migration algorithm for distributed systems. IEEE Transactions Parallel and Distributed Systems, 3(4), 488–499.

    Article  Google Scholar 

  11. Lee, E. A., & Messerschmitt, D. G. (1987). Synchronous data flow. Proceeding of the IEEE, 75(9), 1235–1245.

    Article  Google Scholar 

  12. Yang, C., & Orailoglu, A. (2007). Predictable execution adaptivity through embedding dynamic reconfigurability into static MPSoC schedules. In Proc. International Conference on Hardware/Software Codesign and System Synthesis, pp. 15–20.

  13. Lee, C., Kim, H., Park, H., Kim, S., Oh, H., Ha, S. (2010). A task remapping technique for reliable multi-core embedded systems. In Proc. International Conference on Hardware/Software Codesign and System Synthesis, pp. 307–316.

  14. Bilsen, G., Engels, M., Lauwereins, R., & Peperstraete, J. (1996). Cyclo-static dataflow. IEEE Transactions Signal Processing, 44(2), 397–408.

    Article  Google Scholar 

  15. Henzinger, T. A., Horowitz, B., & Kirsch, C. M. (2003). Giotto: a time-triggered language for embedded programming. Proceedings of the IEEE, 91(1), 84–91.

    Article  Google Scholar 

  16. Theelen, B.D., Geilen, M.C.W., Basten, T., Voeten, J.P.M., Gheorghita, S.V., Stuijk, S. (2006). A scenario-aware data flow model for combined long-run average and worst-case performance analysis. In Proc. International Conference on Formal Methods and Models for Codesign, pp 185–194.

  17. Bekooij, M., Hoes, R., Moreira, O., Poplavko, P., Pastrnak, M., Mesman, B., Mol, J. D., Stuijk, S., Gheorghita, V., & van Meerbergen, J. (2005). Dataflow analysis for real-time embedded multiprocessor system design. In P. van der Stok (Ed.), Dynamic and robust streaming in and between connected consumer-electronic devices (pp 81–108). Berlin: Springer.

  18. Ghammarian, A.H., Geilen, M.C.W., Stuijk, S., Basten, T., Theelen, B.D., Mousavi, M.R., Moonen, A.J.M., Bekkoij, M.J.G. (2006). Throughput analysis of synchronous data flow graphs. In Proc. 2006 IEEE 6th International Conference on Application of Concurrency to System Design, pp. 25–36.

  19. Liu, J., & Lee E. A. (2003). Timed multitasking for real-time embedded software. IEEE Control Systems Magazine, 23(1), 65–75.

    Google Scholar 

  20. Coskun, A. K., Rosing, T. S., Whisnant, K. A., & Gross, K. C. (2008). Static and dynamic temperature-aware scheduling for multiprocessor SoCs. IEEE Transactions Very Large Scale Integration (VLSI) Systems, 16(9), 1127–1140.

    Article  Google Scholar 

  21. Izosimov, V., Pop, P., Eles, P., Peng, Z. (2008). Scheduling fault-tolerant embedded systems with soft and hard timing constraints. In Proc. Design Automation and Test in Europe, pp. 915–920.

  22. Pop, P., Izosimov, V., Eles, P., & Peng, Z. (2009). Design optimization of time- and cost-constrained fault-tolerance embedded systems with checkpointing and replication. IEEE Transactions Very Large Scale Integration (VLSI) Systems, 17(3), 389–402.

    Article  Google Scholar 

  23. Yang, C., & Orailoglu, A. (2009). Towards no-cost adaptive MPSoC static schedules through exploitation of logical-to-physical core mapping latitude. In Proc. Design Automation and Test in Europe, pp. 63–68.

  24. Lukasiewycz, M., et al. Opt4J—The meta-heuristic optimization framework for Java. http://opt4j.sourceforge.net/.

  25. Dick, R.P., Rhodes, D.L., Wolf, W. (1998). TGFF: task graphs for free. In Proc. International Workshop on Hardware/Software Codesign, pp. 97–101.

  26. Thies, W., Karczmarek, M., Amarasinghe, S. (2002). StreamIt: A language for streaming applications. In Proc. International Conference on Compiler Construction, pp. 179–196.

  27. Yang, H., & Ha, S. (2009). Pipelined data parallel task mapping/scheduling technique for MPSoC. In Proc. Design Automation and Test in Europe, pp. 69–74.

Download references

Acknowledgments

This research was supported by Center for Advanced Image and Information Technology and Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (2010-0023325). This research was partly supported by the MKE (The Ministry of Knowledge Economy), Korea, under the ITRC (Information Technology Research Center) support program supervised by the NIPA (National IT Industry Promotion Agency) (NIPA-2013-H0301-13-1011). This work is sponsored by IT R&D program MKE/KEIT (No.10041608, Embedded system Software for New-memory based Smart Device).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sungchan Kim.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lee, C., Kim, S., Oh, H. et al. Failure-Aware Task Scheduling of Synchronous Data Flow Graphs Under Real-Time Constraints. J Sign Process Syst 73, 201–212 (2013). https://doi.org/10.1007/s11265-013-0753-3

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-013-0753-3

Keywords

Navigation