Skip to main content

SP@CE - An SP-Based Programming Model for Consumer Electronics Streaming Applications

  • Conference paper
Book cover Languages and Compilers for Parallel Computing (LCPC 2006)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4382))

Abstract

Efficient programming of multimedia streaming applications for Consumer Electronics (CE) devices is not trivial. As a solution for this problem, we present SP@CE, a novel programming model designed to balance the specific requirements of CE streaming applications with the simplicity and efficiency of the Series-Parallel Contention (SPC) programming model To enable the use of SP@CE, we have designed a framework that guides the programmer to design, evaluate, optimize and execute the application on the target CE platform. To evaluate the entire system, we have used SP@CE to implement a set of real-life streaming applications and we present the results obtained by running them on the Wasabi/SpaceCAKE architecture from Philips, a multi-processor system-on-chip (MPSoC) CE platform. The experiments show that SP@CE enables rapid application development, induces low overhead, offers high code reuse potential, and takes advantage of the inherent application parallelism.

This work is supported by the Dutch government’s STW/PROGRESS project DES.6397.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Stephens, R.: A survey of stream processing. Acta Informatica 34(7), 491–541 (1997), citeseer.ist.psu.edu/stephens95survey.html

    Article  MATH  MathSciNet  Google Scholar 

  2. Thies, W., et al.: Language and compiler design for streaming applications. In: IPDPS’04 - Workshop 10, vol. 11 (2004)

    Google Scholar 

  3. Buck, I., et al.: Brook for GPUs: Stream computing on graphics hardware. In: SIGGRAPH 2004, ACM Press, New York (2004), http://graphics.stanford.edu/papers/brookgpu/

    Google Scholar 

  4. Knobe, K., Offner, C.D.: Compiling to TStreams, a new model of parallel computation. Technical report (2005)

    Google Scholar 

  5. Valdes, J., Tarjan, R.E., Lawler, E.L.: The recognition of series parallel digraphs. In: STOC ’79, Atlanta, Georgia, United States, pp. 1–12. ACM Press, New York (1979)

    Chapter  Google Scholar 

  6. González-Escribano, A.: Synchronization Architecture in Parallel Programming Models. PhD thesis, Dpto. Informatica, University of Valladolid (2003)

    Google Scholar 

  7. van Gemund, A.J.C.: The importance of synchronization structure in parallel program optimization. In: ICS ’97: Proc. 11th international conference on Supercomputing, Vienna, Austria, pp. 164–171. ACM Press, New York (1997), doi:10.1145/263580.263625

    Chapter  Google Scholar 

  8. Skillicorn, D.B., Talia, D.: Models and languages for parallel computation. ACM Comput. Surv. 30(2), 123–169 (1998), doi:10.1145/280277.280278

    Article  Google Scholar 

  9. Varbanescu, A.L., van Gemund, A.J.C., Sips, H.: PAM-SoC: A toolchain for predicting MPSoC performance. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 111–123. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  10. Nijhuis, M., Bos, H., Bal, H.: Supporting reconfigurable parallel multimedia applications. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 765–776. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  11. González-Escribano, A., van Gemund, A.J.C., Cardeñoso-Payo, V.: SPC-XML: A structured representation for nested-parallel programming languages. In: Cunha, J.C., Medeiros, P.D. (eds.) Euro-Par 2005. LNCS, vol. 3648, pp. 782–792. Springer, Heidelberg (2005)

    Google Scholar 

  12. Lee, E.A., Parks, T.M.: Dataflow process networks. Proc. of the IEEE, 773–799 (1995)

    Google Scholar 

  13. van Gemund, A.: Performance Modeling of Parallel Systems. PhD thesis, Delft University of Technology (1996)

    Google Scholar 

  14. van Gemund, A.J.C.: Symbolic performance modeling of parallel systems. IEEE TPDS 14(2), 154–165 (2003)

    Google Scholar 

  15. Stravers, P., Hoogerbrugge, J.: Single chip multiprocessing for consumer electronics. In: Bhattacharyya, S.S. (ed.) Domain-Specific Processors, Marcel Dekker, New York (2003)

    Google Scholar 

  16. Ashcroft, E.A., Wadge, W.W.: Lucid, the Dataflow Programming Language. Academic Press, London (1985)

    MATH  Google Scholar 

  17. Halbwachs, N., et al.: The synchronous data-flow programming language LUSTRE. Proc. IEEE 79(9), 1305–1320 (1991)

    Article  Google Scholar 

  18. Berry, G., Gonthier, G.: The ESTEREL synchronous programming language: Design, semantics, implementation. Science of Computer Programming 19(2), 87–152 (1992)

    Article  MATH  Google Scholar 

  19. Thies, W., Karczmarek, M., Amarasinghe, S.P.: StreamIt: A language for streaming applications. In: Computational Complexity, pp. 179–196 (2002), citeseer.ist.psu.edu/thies01streamit.html

  20. Kapasi, U., et al.: The Imagine stream processor. In: ICCD’02, Sept. 2002, pp. 282–288. IEEE Computer Society Press, Los Alamitos (2002)

    Google Scholar 

  21. Tanguay, D., Gelb, D., Baker, H.H.: Nizza: A framework for developing real-time streaming multimedia applications. Technical report (2004)

    Google Scholar 

  22. Rehg, J., et al.: Space-Time Memory: a parallel programming abstraction for dynamic vision applications. Technical report (1997)

    Google Scholar 

  23. Kahn, G.: The semantics of a simple language for parallel programming. In: IFIP Congress ’74, pp. 471–475. North-Holland, New York (1974)

    Google Scholar 

  24. van Dijk, H.W., Sips, H., Deprettere, E.F.: Context-aware process networks. In: ASAP’03, pp. 6–16. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  25. Geilen, M., Basten, T.: Reactive process networks. In: EMSOFT’04, Pisa, Italy, pp. 137–146. ACM Press, New York (2004), doi:10.1145/1017753.1017778

    Google Scholar 

  26. Ko, D.-I., Bhattacharyya, S.S.: Modeling of block-based DSP systems. J. VLSI Signal Process. Syst. 40, 289–299 (2005)

    Article  Google Scholar 

  27. Lee, E., Messerschmitt, D.: Synchronous Data Flow. IEEE Trans. Comp. 36(1), 24–35 (1987)

    Article  MATH  Google Scholar 

  28. Stuijk, S., Basten, T.: Analyzing concurrency in streaming applications. Technical report (2005)

    Google Scholar 

  29. Bhattacharya, B., Bhattacharyya, S.S.: Parameterized dataflow modeling for DSP systems. IEEE Trans. on Signal Processing 49(10), 2408–2421 (2001)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

George Almási Călin Caşcaval Peng Wu

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Varbanescu, A.L., Nijhuis, M., González-Escribano, A., Sips, H., Bos, H., Bal, H. (2007). SP@CE - An SP-Based Programming Model for Consumer Electronics Streaming Applications. In: Almási, G., Caşcaval, C., Wu, P. (eds) Languages and Compilers for Parallel Computing. LCPC 2006. Lecture Notes in Computer Science, vol 4382. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72521-3_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-72521-3_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-72520-6

  • Online ISBN: 978-3-540-72521-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics