Advertisement

Towards Memory-Optimal Schedules for SDF

  • Mitchell Jones
  • Julián Mestre
  • Bernhard Scholz
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10659)

Abstract

The Synchronous Data Flow (SDF) programming model is an established programming paradigm for stream processing applications. SDF programs are expressed by actors and streams that establish communication among actors. Streams are implemented as FIFO buffers, and the size of the FIFO buffers depends on the steady-state schedule. Finding a steady-state schedule that minimizes the sizes of FIFO buffers, is of great importance to minimize the memory consumption. The state-of-the-art provides ad-hoc heuristics only, so finding memory-optimal steady-state schedules is still an open challenge.

In this work, we study three objective functions capturing the memory utilization of three different implementations of the FIFO buffers. We show that one objective is NP-hard to optimize, while the other two can be solved optimally in polynomial time. The algorithm for computing these optimal schedules is implementable as an online algorithm. We show the effectiveness of our new algorithm comparing it with the state-of-the-art heuristics. Our experiments show that for large synthetic instances, our algorithm generates schedules that use up to 8 times less memory.

Keywords

Synchronous Data Flow (SDF) Scheduling Optimality FIFO-buffer 

Notes

Acknowledgements

This project has been partially supported by the Australian Research Council Discovery Project DP1096445. We would like to thank our reviewers for the insightful feedback, and Yousun Ko for her help with the experiments.

References

  1. 1.
    Ahmad, W., de Groote, R., Hölzenspies, P.K.F., Stoelinga, M., van de Pol, J.: Resource-constrained optimal scheduling of synchronous dataflow graphs via timed automata. In: Proceedings of the 2014 14th International Conference on Application of Concurrency to System Design, ACSD 2014, pp. 72–81. IEEE Computer Society, Washington, DC (2014).  https://doi.org/10.1109/ACSD.2014.13
  2. 2.
    Battacharya, S.S., Murthy, P.K., Lee, E.A.: Software Synthesis from Dataflow Graphs. Kluwer Academic Publishers, Norwell (1996)Google Scholar
  3. 3.
    Dennis, J.B.: First version of a data flow procedure language. In: Robinet, B. (ed.) Programming Symposium. LNCS, vol. 19, pp. 362–376. Springer, Heidelberg (1974).  https://doi.org/10.1007/3-540-06859-7_145 CrossRefGoogle Scholar
  4. 4.
    Geilen, M., Basten, T., Stuijk, S.: Minimising buffer requirements of synchronous dataflow graphs with model checking. In: Proceedings of the 42nd Annual Design Automation Conference, DAC 2005, pp. 819–824. ACM, New York (2005).  https://doi.org/10.1145/1065579.1065796
  5. 5.
    Kahn, G.: The semantics of simple language for parallel programming. In: IFIP Congress, pp. 471–475 (1974)Google Scholar
  6. 6.
    Ko, Y., Burgstaller, B., Scholz, B.: LaminarIR: compile-time queues for structured streams. In: Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2015, pp. 121–130. ACM, New York (2015).  https://doi.org/10.1145/2737924.2737994
  7. 7.
    Lee, E.A., Messerschmitt, D.G.: Synchronous data flow. Proc. IEEE 75(9), 1235–1245 (1987)CrossRefGoogle Scholar
  8. 8.
    Wiggers, M.H., Bekooij, M.J.G., Smit, G.J.M.: Buffer capacity computation for throughput-constrained modal task graphs. ACM Trans. Embed. Comput. Syst. 10(2), 17:1–17:59 (2011).  https://doi.org/10.1145/1880050.1880053
  9. 9.
    Wikipedia: Bézout’s identity (2016). https://en.wikipedia.org/wiki/Bzout%27s_identity. Accessed 12 Aug 2016

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Mitchell Jones
    • 1
  • Julián Mestre
    • 2
    • 3
  • Bernhard Scholz
    • 2
  1. 1.Department of Computer ScienceUniversity of Illinois at Urbana-ChampaignChampaignUSA
  2. 2.School of Information TechnologiesUniversity of SydneySydneyAustralia
  3. 3.FacebookMenlo ParkUSA

Personalised recommendations