Skip to main content

Network Fusion

  • Conference paper
Programming Languages and Systems (APLAS 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3302))

Included in the following conference series:

Abstract

Modular programming enjoys many well-known advantages but the composition of modular units may also lead to inefficient programs. In this paper, we propose an invasive composition method which strives to reconcile modularity and efficiency. Our technique, network fusion, automatically merges networks of interacting components into equivalent sequential programs. We provide the user with an expressive language to specify scheduling constraints which can be taken into account during network fusion. Fusion allows to replace internal communications by assignments and alleviates most time overhead. We present our approach in a generic and unified framework based on labeled transition systems, static analysis and transformation techniques.

This work has been supported in part by the ACI DISPO and Région Bretagne.

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. Aho, A.V., Sethi, R., Ullman, J.D.: Compilers. Principles, Techniques, and Tools. Addison-Wesley, Reading (1986)

    MATH  Google Scholar 

  2. Arrigoni, Duchini, Lavagno: False path elimination in quasi-static scheduling. In: Automation and Test in Europe Conference and Exhibition (DATE 2002), pp. 964–970 (2002)

    Google Scholar 

  3. Clayton, R., Calvert, K.: Augmenting the proebsting-watterson filter fusion algorithm (1997), http://citeseer.ist.psu.edu/186288.html

  4. Colcombet, T., Fradet, P.: Enforcing trace properties by program transformation. In: Symposium on Principles of Programming Languages (POPL 2000), pp. 54–66 (2000)

    Google Scholar 

  5. Cortadella, J., Kondratyev, A., Lavagno, L., Massot, M., Moral, S., Passerone, C., Watanabe, Y., Sangiovanni-Vincentelli, A.L.: Task generation and compile-time scheduling for mixed data-control embedded software. Technical Report LSI-99-47-R, Dept. of Software, Universitat Politecnica de Catalunya (1999)

    Google Scholar 

  6. Geilen, M., Basten, T.: Requirements on the execution of Kahn process networks. In: Degano, P. (ed.) ESOP 2003 and ETAPS 2003. LNCS, vol. 2618, pp. 319–334. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  7. Kahn, G.: The semantics of a simple language for parallel programming. In: Proceedings of the IFIP Congress (Information Processing 1974), pp. 471–475 (1974)

    Google Scholar 

  8. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  9. Lin, B.: Software synthesis of process-based concurrent programs. In: Proceedings of the 1998 Conference on Design Automation (DAC 1998), pp. 502–505 (1998)

    Google Scholar 

  10. Nielson, F., Nielson, H.R., Hankin, C.L.: Principles of Program Analysis. Springer, Heidelberg (1999)

    Book  MATH  Google Scholar 

  11. Parks, T.M.: Bounded scheduling of process networks. PhD thesis, University of California, Berkeley (1995)

    Google Scholar 

  12. Proebsting, T.A., Watterson, S.A.: Filter fusion. In: Symposium on Principles of Programming Languages (POPL 1996), pp. 119–130 (1996)

    Google Scholar 

  13. Strehl, K., Thiele, L., Ziegenbein, D., Ernst, R.: Scheduling hardware/software systems using symbolic techniques. In: Proceedings of the seventh international workshop on Hardware/software codesign (CODES 1999), pp. 173–177 (1999)

    Google Scholar 

  14. Thiele, L., Strehl, K., Ziegenbein, D., Ernst, R., Teich, J.: Funstate - an internal design representation for codesign. In: International Conference on Computer-Aided Design (ICCAD 1999), pp. 558–565 (1999)

    Google Scholar 

  15. Wadler, P.: Listlessness is better than laziness. In: Conference Record of the 1984 ACM Symposium on Lisp and Functional Programming, pp. 45–52 (1984)

    Google Scholar 

  16. Wadler, P.: Deforestation: transforming programs to eliminate trees. Theoretical Computer Science 73(2), 231–248 (1990)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Fradet, P., Ha, S.H.T. (2004). Network Fusion. In: Chin, WN. (eds) Programming Languages and Systems. APLAS 2004. Lecture Notes in Computer Science, vol 3302. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30477-7_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30477-7_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-23724-2

  • Online ISBN: 978-3-540-30477-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics