skip to main content
research-article

On Memory Reuse Between Inputs and Outputs of Dataflow Actors

Published:17 February 2016Publication History
Skip Abstract Section

Abstract

This article introduces a new technique to minimize the memory footprints of Digital Signal Processing (DSP) applications specified with Synchronous Dataflow (SDF) graphs and implemented on shared-memory Multiprocessor System-on-Chip (MPSoCs). In addition to the SDF specification, which captures data dependencies between coarse-grained tasks called actors, the proposed technique relies on two optional inputs abstracting the internal data dependencies of actors: annotations of the ports of actors, and script-based specifications of merging opportunities between input and output buffers of actors. Experimental results on a set of applications show a reduction of the memory footprint by 48% compared to state-of-the-art minimization techniques.

References

  1. Oliver Jakob Arndt, Daniel Becker, Christian Banz, and Holger Blume. 2013. Parallel implementation of real-time semi-global matching on embedded multi-core architectures. In Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIII). IEEE, 56--63.Google ScholarGoogle Scholar
  2. Mohamed Benazouz, Olivier Marchetti, Alix Munier-Kordon, and Pascal Urard. 2010. A new approach for minimizing buffer capacities with throughput constraint for embedded system design. In 2010 IEEE/ACS Computer Systems and Applications (AICCSA). IEEE, 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Joseph Buck, Soonhoi Ha, Edward A. Lee, and David G. Messerschmitt. 1994. Ptolemy: A framework for simulating and prototyping heterogeneous systems. International Journal of Computer Simulation 4 (1994), 155--182.Google ScholarGoogle Scholar
  4. C. Sidney Burrus and Peter W. Eschenbacher. 1981. An in-place, in-order prime factor FFT algorithm. IEEE Transactions on Acoustics, Speech and Signal Processing 29, 4 (Aug. 1981), 806--817.Google ScholarGoogle Scholar
  5. Loïc Cudennec, Paul Dubrulle, François Galea, Thierry Goubier, and Renaud Sirdey. 2014. Generating code and memory buffers to reorganize data on many-core architectures. Procedia Computer Science 29 (2014), 1123--1133.Google ScholarGoogle ScholarCross RefCross Ref
  6. Eddy De Greef, Francky Catthoor, and Hugo De Man. 1997. Array placement for storage size reduction in embedded multimedia systems. In Proceedings of the IEEE International Conference on Application-Specific Systems, Architectures and Processors. IEEE, 66--75. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Karol Desnos, Maxime Pelcat, Jean-François. Nezan, and Slaheddine Aridhi. 2014. Memory analysis and optimized allocation of dataflow applications on shared-memory MPSoCs. Journal of Signal Processing Systems, Springer US 80 (July 2014), 19--37. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Karol Desnos, Maxime Pelcat, Jean-François. Nezan, and Slaheddine Aridhi. 2015. Buffer merging technique for minimizing memory footprints of synchronous dataflow specifications. In International Conference on Acoustics, Speech and Signal Processing (ICASSP’15). IEEE, 1111--1115.Google ScholarGoogle ScholarCross RefCross Ref
  9. S. El Assad and H. Noura. 2013. Generator of chaotic sequences and corresponding generating system. (Feb. 2013). Patent No. US 8781116 B2, Filed March 28, 2011, Issued Jul. 15, 2014.Google ScholarGoogle Scholar
  10. Janet Fabri. 1979. Automatic Storage Optimization. Courant Institute of Mathematical Sciences, NY University.Google ScholarGoogle Scholar
  11. Scott Fischaber, Roger Woods, and John McAllister. 2007. SoC memory hierarchy derivation from dataflow graphs. In Workshop on Signal Processing Systems. IEEE, 469--474.Google ScholarGoogle ScholarCross RefCross Ref
  12. J. Forget, C. Gensoul, M. Guesdon, C. Lavarenne, C. Macabiau, Y. Sorel, and C. Stentzel. 2013. SynDEx v7 User Manual. INRIA Paris-Rocquencourt. Retrieved from http://www.syndex.org/v7/manual/manual.pdf.Google ScholarGoogle Scholar
  13. Viliam Geffert and Jozef Gajdoš. 2011. In-place sorting. In SOFSEM 2011: Theory and Practice of Computer Science, I. Čern, T. Gyimthy, J. Hromkovič, K. Jefferey, R. Krlović, M. Vukolić, and S. Wolf (Eds.). Lecture Notes in Computer Science, Vol. 6543. Springer, Berlin, 248--259. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Marc Geilen, Twan Basten, and Sander Stuijk. 2005. Minimising buffer requirements of synchronous dataflow graphs with model checking. In Design Automation Conference. ACM, NY, 819--824. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Chia-Jui Hsu, Ming-Yung Ko, and Shuvra S. Bhattacharyya. 2005. Software synthesis from the dataflow interchange format. In Proceedings of the 2005 Workshop on Software and Compilers for Embedded Systems (SCOPES’05). ACM, 37--49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Kalray. 2013. Many-core processors—Dataflow. Retrieved from http://www.kalray.eu/technology/dataflow/.Google ScholarGoogle Scholar
  17. Jong T. Kim and Dong R. Shin. 2002. New efficient clique partitioning algorithms for register-transfer synthesis of data paths. Journal of the Korean Physical Society 40 (2002), 754--758.Google ScholarGoogle ScholarCross RefCross Ref
  18. Edward A. Lee and David G. Messerschmitt. 1987. Synchronous data flow. Proceedings of the IEEE 75, 9 (Sept. 1987), 1235--1245.Google ScholarGoogle ScholarCross RefCross Ref
  19. Edward A. Lee and Thomas M. Parks. 1995. Dataflow process networks. Proceedings of the IEEE 83, 5 (1995), 773--801.Google ScholarGoogle ScholarCross RefCross Ref
  20. David P. Magee. 2005. Matlab extensions for the development, testing and verification of real-time DSP software. In Proceedings of the 42nd Annual Design Automation Conference. ACM, NY, 603--606. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Amith R. Mamidala, Daniel Faraj, Sameer Kumar, Douglas Miller, Michael Blocksome, Thomas Gooding, Philiph Heidelberger, and Gabor Dozsa. 2011. Optimizing MPI collectives using efficient intra-node communication techniques over the Blue Gene/P supercomputer. In International Symposium onParallel and Distributed Processing Workshops and PhD Forum (IPDPSW). IEEE, 771--780. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Alexandre Mercat, Jean-François Nezan, Daniel Menard, and Jinglin Zhang. 2014. Implementation of a stereo matching algorithm onto a manycore embedded system. In International Symposium on Circuits and Systems. IEEE, 1296--1299.Google ScholarGoogle ScholarCross RefCross Ref
  23. Praveen K. Murthy and Shuvra S. Bhattacharyya. 2004. Buffer merging: A powerful technique for reducing memory requirements of synchronous dataflow specifications. Transactions on Design Automation of Electronic Systems 9, 2 (April 2004), 212--237. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Patrick Niemeyer. 2014. BeanShell website. Retrieved from http://www.beanshell.org.Google ScholarGoogle Scholar
  25. Maxime Pelcat, Slaheddine Aridhi, Jonathan Piat, and Jean-François Nezan. 2012. Physical Layer Multi-Core Prototyping: A Dataflow-Based Approach for LTE eNodeB. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Maxime Pelcat, Karol Desnos, Julien Heulot, Clement Guy, Jean-François. Nezan, and Slaheddine Aridhi. 2014. PREESM: A dataflow-based rapid prototyping framework for simplifying multicore DSP programming. In EDERC 2014 Proceedings. IEEE, 36.Google ScholarGoogle ScholarCross RefCross Ref
  27. Jonathan Piat, Shuvra S. Bhattacharyya, and Mickaël Raulet. 2009. Interface-based hierarchy for synchronous data-flow graphs. In SiPS Proceedings. IEEE, 145--150.Google ScholarGoogle ScholarCross RefCross Ref
  28. Russel W. Quong and Shu-Ching Chen. 1993. Register Allocation via Weighted Graph Coloring. ECE Technical Reports. 232.Google ScholarGoogle Scholar
  29. Sander Stuijk, Marc Geilen, and Twan Basten. 2006a. Exploring trade-offs in buffer requirements and throughput constraints for synchronous dataflow graphs. In Proceedings of Design Automation Conference. ACM, 899--904. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Sander Stuijk, Marc Geilen, and Twan Basten. 2006b. SDF3: SDF for free. In Proceeding of the Conference on Application of Concurrency to System Design (ACSD’06). IEEE Computer Society, 276--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Daisuke Takahashi. 2000. High-performance parallel FFT algorithms for the HITACHI SR8000. In Proceedings of High Performance Computing in the Asia-Pacific Region, Vol. 1. IEEE, 192--199.Google ScholarGoogle ScholarCross RefCross Ref
  32. Matthieu Wipliez and Mickaël Raulet. 2010. Classification and transformation of dynamic dataflow programs. In Design and Architectures for Signal and Image Processing (DASIP), IEEE, 303--310.Google ScholarGoogle Scholar
  33. Yervant Zorian. 2002. Embedded memory test and repair: Infrastructure IP for SOC yield. In Proceedings of the International Test Conference. IEEE, 340--349. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On Memory Reuse Between Inputs and Outputs of Dataflow Actors

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Embedded Computing Systems
          ACM Transactions on Embedded Computing Systems  Volume 15, Issue 2
          Special Issue on Innovative Design, Special Issue on MEMOCODE 2014 and Special Issue on M2M/IOT
          May 2016
          421 pages
          ISSN:1539-9087
          EISSN:1558-3465
          DOI:10.1145/2888407
          Issue’s Table of Contents

          Copyright © 2016 ACM

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 17 February 2016
          • Accepted: 1 October 2015
          • Revised: 1 July 2015
          • Received: 1 March 2015
          Published in tecs Volume 15, Issue 2

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!