Advertisement

Local Consistency Check in Synchronous Dataflow Models

  • Dina IroftiEmail author
  • Paul Dubrulle
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11800)

Abstract

Dataflow graphs are typically used to model signal processing applications. Consistency is a necessary condition for the existence of a dataflow graph schedule using bounded memory. Existing methods to check this property are based on a static analysis. At every modification on the dataflow graph, the consistency property has to be checked again and on the entire graph, after its construction. In this paper, we argue that for each modification, the consistency can be checked only on the modified graph elements, and during its construction. We propose an alternative method, that can be applied either on the entire graph, or locally, at each modification of a dataflow graph. For both cases, we analyse our algorithm’s advantages, and compare its performance to an existing algorithm. For the experimental setup, we generate random graphs with worst-case instances and realistic instances. Our theoretical analysis shows that the proposed algorithm can reduce the number of operations required for the consistency verification, even on entire graphs. The experimental results show that our algorithm outperforms the state-of-the-art algorithm on the considered benchmark.

Notes

Acknowledgements

Many thanks to Jason Lecerf for its attentive reading and suggestions. We thank Loïc Cudennec and Thierry Goubier for our discussions.

References

  1. 1.
    Aubry, P., et al.: Extended cyclostatic dataflow program compilation and execution for an integrated manycore processor. In: Alchemy 2013-Architecture, Languages, Compilation and Hardware Support for Emerging ManYcore Systems, vol. 18, pp. 1624–1633 (2013)Google Scholar
  2. 2.
    Benazouz, M., Munier-Kordon, A., Hujsa, T., Bodin, B.: Liveness evaluation of a cyclo-static dataflow graph. In: 2013 50th ACM/EDAC/IEEE on Design Automation Conference (DAC), pp. 1–7. IEEE (2013)Google Scholar
  3. 3.
    Bhattacharya, B., Bhattacharyya, S.S.: Parameterized dataflow modeling for DSP systems. IEEE Trans. Signal Process. 49(10), 2408–2421 (2001).  https://doi.org/10.1109/78.950795MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Bhattacharyya, S.S., Murthy, P.K., Lee, E.A.: Synthesis of embedded software from synchronous dataflow specifications. J. VLSI Signal Process. Syst. Signal Image Video Technol. 21(2), 151–166 (1999)CrossRefGoogle Scholar
  5. 5.
    Bilsen, G., Engels, M., Lauwereins, R., Peperstraete, J.: Cycle-static dataflow. IEEE Trans. Signal Process. 44(2), 397–408 (1996).  https://doi.org/10.1109/78.485935CrossRefGoogle Scholar
  6. 6.
    Buck, J.T., Lee, E.A.: Scheduling dynamic dataflow graphs with bounded memory using the token flow model. In: 1993 IEEE International Conference on Acoustics, Speech, and Signal Processing, ICASSP 1993, vol. 1, pp. 429–432. IEEE (1993).  https://doi.org/10.1109/ICASSP.1993.319147
  7. 7.
    Geilen, M., Tripakis, S., Wiggers, M.: The earlier the better: a theory of timed actor interfaces. In: Proceedings of the 14th International Conference on Hybrid Systems: Computation and Control, pp. 23–32. ACM (2011)Google Scholar
  8. 8.
    Ghamarian, A.H., Geilen, M., Basten, T., Theelen, B.D., Mousavi, M.R., Stuijk, S.: Liveness and boundedness of synchronous data flow graphs. In: 2006 Formal Methods in Computer Aided Design, FMCAD 2006, pp. 68–75. IEEE (2006)Google Scholar
  9. 9.
    Ghamarian, A.H., et al.: Throughput analysis of synchronous data flow graphs. In: 2006 Sixth International Conference on Application of Concurrency to System Design. ACSD 2006, pp. 25–36. IEEE (2006)Google Scholar
  10. 10.
    Lee, E.A.: Consistency in dataflow graphs. IEEE Trans. Parallel Distrib. Syst. 2(2), 223–235 (1991).  https://doi.org/10.1109/71.89067MathSciNetCrossRefGoogle Scholar
  11. 11.
    Lee, E.A., Messerschmitt, D.G.: Synchronous data flow. Proc. IEEE 75(9), 1235–1245 (1987).  https://doi.org/10.1109/PROC.1987.13876CrossRefGoogle Scholar
  12. 12.
    Lee, E.A., Messerschmitt, D.G.: Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans. Comput. 100(1), 24–35 (1987).  https://doi.org/10.1109/TC.1987.5009446CrossRefGoogle Scholar
  13. 13.
    Ptolemaeus, C.: System Design, Modeling, and Simulation: Using Ptolemy II, vol. 1. Ptolemy.org, Berkeley (2014)Google Scholar
  14. 14.
    Stuijk, S., Geilen, M., Basten, T.: SDF\(^{3}\): SDF for free. In: 2006 Sixth International Conference on Application of Concurrency to System Design, ACSD 2006, pp. 276–278. IEEE (2006).  https://doi.org/10.1109/ACSD.2006.23
  15. 15.
    Theelen, B.D., Geilen, M.C., Basten, T., Voeten, J.P., Gheorghita, S.V., Stuijk, S.: A scenario-aware data flow model for combined long-run average and worst-case performance analysis. In: 2006 Fourth ACM and IEEE International Conference on Formal Methods and Models for Co-Design, MEMOCODE 2006, Proceedings, pp. 185–194. IEEE (2006).  https://doi.org/10.1109/MEMCOD.2006.1695924
  16. 16.
    Thies, W., Amarasinghe, S.: An empirical characterization of stream programs and its implications for language and compiler design. In: Proceedings of the 19th International Conference on Parallel Architectures and Compilation Techniques, pp. 365–376. ACM (2010)Google Scholar
  17. 17.
    Wiggers, M.H., Bekooij, M.J., Smit, G.J.: Buffer capacity computation for throughput constrained streaming applications with data-dependent inter-task communication. In: 2008 Real-Time and Embedded Technology and Applications Symposium, RTAS 2008, pp. 183–194. IEEE (2008).  https://doi.org/10.1109/RTAS.2008.10
  18. 18.
    Wiggers, M.H., Bekooij, M.J., Smit, G.J.: Buffer capacity computation for throughput-constrained modal task graphs. ACM Trans. Embed. Comput. Syst. (TECS) 10(2), 17 (2010)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.CEA, LISTGif-sur-Yvette CedexFrance

Personalised recommendations