Skip to main content
Log in

Dataflow Programs Analysis and Optimization Using Model Predictive Control Techniques

Two Examples of Bounded Buffer Scheduling: Deadlock Avoidance and Deadlock Recovery Strategies

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

Abstract

The analysis of the trace graphs generated by dataflow program executions has been shown to be an effective tool for exploring and optimizing the design space of application programs on manycore/multicore platforms. In this work a new approach aiming at finding bounded buffer size configurations for implementations generated by dataflow programs is presented. The introduced method is based on an original transformation procedure which converts the execution trace graph into an event driven linear system made up by a Petri Net. A control theoretic approach based on Model Predictive Control methodologies is then applied to the obtained Petri Net system in order to effectively explore the dataflow program design space and find nearly optimal buffer dimensioning solutions leading to a deadlock free program execution. Two real challenging design case examples, namely a JPEG and a MPEG HEVC decoder, are introduced to show the effectiveness of the introduced approach.

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.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5

Similar content being viewed by others

References

  1. Open RVC-CAL (2015). Applications, Orc-Apps. http://github.com/orcc/orc-apps, Last checked: June.

  2. TURNUS (2015). http://github.com/turnus, Last checked, June.

  3. 23001-4 (2011). I.: Information technology - MPEG systems technologies - Part 4: Codec configuration representation.

  4. Bhattacharyya, S., Murthy, P., & Lee, E. (1999). Synthesis of embedded software from synchronous dataflow specifications. Journal of VLSI Signal Processing Systems for Signal Image, and Video Technology, 21(2), 151–166.

    Article  Google Scholar 

  5. Casale-Brunet, S. (2015). Analysis and optimization of dynamic dataflow programs. Ph.D. thesis, STI, Lausanne. doi:10.5075/epfl-thesis-6663.

  6. Casale-Brunet, S., Alberti, C., Mattavelli, M., & Janneck, J. (2013). Design space exploration of high-level stream programs on parallel architectures.

  7. Casale-Brunet, S., Alberti, C., Mattavelli, M., & Janneck, J. (2013). Turnus: a unified dataflow design space exploration framework for heterogeneous parallel systems. In Conference on Design and Archtictures for Signal and Image Processing (DASIP 2013). Italy: Cagliari.

  8. Casale-Brunet, S., Elguindy, A., Bezati, E., Thavot, R., Roquier, G., Mattavelli, M., & Janneck, J. (2013). Methods to explore design space for mpeg rmc codec specifications. Image Commun, 28(10), 1278–1294. doi:10.1016/j.image.2013.08.012.

    Google Scholar 

  9. Dennis, J. (1974). First version of a data flow procedure language. In Symposium on Programming (pp. 362–376).

  10. Eker, J., & Janneck, J. (2003). CAL Language Report: Specification of the CAL Actor Language. University of California-Berkeley.

  11. Ersfolk, J. (2014). Scheduling dynamic dataflow graphs with model checking. TUCS Dissertations: PhD Thesis.

    Google Scholar 

  12. Ersfolk, J., Roquier, G., Lilius, J., & Mattavelli, M. (2012). Scheduling of dynamic dataflow programs based on state space analysis. In Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing. IEEE (pp. 1661–1664).

  13. Garcia, C., Prett, D., & Morari, M. (1989). Model predictive control: Theory and practicea survey. Automatica, 25(3), 335–348. doi:10.1016/0005-1098(89)90002-2.

    Article  MATH  Google Scholar 

  14. Geilen, M., Basten, T., & Stuijk, S. (2005). Minimising buffer requirements of synchronous dataflow graphs with model checking. In Proceedings - Design Automation Conference (pp. 819–824).

  15. Jang, E., Mattavelli, M., Preda, M., Raulet, M., & Sun, H. (2013). Reconfigurable media coding: An overview. Signal Processing: Image Communication, 28(10), 1215–1223. doi:10.1016/j.image.2013.08.008.

    Google Scholar 

  16. Kahn, G. (1974). The semantics of simple language for parallel programming, IFIP Congress.

  17. Lee, E., & Messerschmitt, D. (1987). Static scheduling of synchronous data flow programs for digital signal processing. IEEE Transactions on Computers, C-36(1), 24–35. doi:10.1109/TC.1987.5009446.

    Article  Google Scholar 

  18. Lee, E., & Parks, T. (1995). Dataflow process networks. In Proceedings of the IEEE, (Vol. 83 pp. 773–801), doi:10.1109/5.381846.

  19. Liu, W., Gu, Z., Xu, J., Wang, Y., & Yuan, M. (2009). An efficient technique for analysis of minimal buffer requirements of synchronous dataflow graphs with model checking. In Proceedings of the 7th IEEE/ACM international conference on Hardware/software codesign and system synthesis, pp. 61–70. New York, USA.

  20. Mattavelli, M. (2012). MPEG reconfigurable video representation. In Chiariglione, L. (Ed.) The MPEG Representation of Digital Media, pp. 231–247. Springer New York. doi:10.1007/978-1-4419-6184-6_12.

  21. Mattavelli, M., Janneck, J.W., & Raulet, M. (2010). MPEG reconfigurable video coding. In Bhattacharyya, S., Deprettere, R., Leupers, E.and, & Takala, J. (Eds.) Handbook of Signal Processing Systems, pp. 43–67. Springer US. doi:10.1007/978-1-4419-6345-1_3.

  22. Murata, T. (1989). Petri nets: Properties, analysis and applications. In Proceedings of the IEEE, (Vol. 77 pp. 541—580), doi:10.1109/5.24143.

  23. Parks, T. (1995). Bounded Scheduling of Process Networks. In PhD Thesis-University of California-Berkeley.

  24. Qin, S., & Badgwell, T. (2003). A survey of industrial model predictive control technology. Control Engineering Practice, 11(7), 733–764. doi:10.1016/S0967-0661(02)00186-7.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to S. Casale-Brunet.

Additional information

This work is supported by the Fonds National Suisse pour la Recherche Scientifique, under grant 200021.129960 and grant 200021.138214, and by the strategic research area ELLIIT.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Canale, M., Casale-Brunet, S., Bezati, E. et al. Dataflow Programs Analysis and Optimization Using Model Predictive Control Techniques. J Sign Process Syst 84, 371–381 (2016). https://doi.org/10.1007/s11265-015-1083-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-015-1083-4

Keywords

Navigation