Skip to main content

Design and Implementation of an Environment for Component-Based Parallel Programming

  • Conference paper
Book cover High Performance Computing for Computational Science - VECPAR 2006 (VECPAR 2006)

Abstract

Motivated by the inadequacy of current parallel programming artifacts, the # component model was proposed to meet the new complexity of high performance computing (HPC). It has solid formal foundations, layed on category theory and Petri nets. This paper presents some important design and implementation issues on the implementation of programming frameworks based on the # component model.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Allan, B.A., et al.: The CCA Core Specification in a Distributed Memory SPMD Framework. Concurrency and Computation: Practice and Experience 14(5), 323–345 (2002)

    Article  MATH  Google Scholar 

  2. Armstrong, R., et al.: Towards a Common Component Architecture for High-Performance Scientific Computing. In: The Eighth IEEE International Symposium on High Performance Distributed Computing, IEEE Computer Society Press, Los Alamitos (1999)

    Google Scholar 

  3. Baude, F., Caromel, D., Morel, M.: From Distributed Objects to Hierarchical Grid Components. In: International Symposium on Distributed Objects and Applications, Springer, Heidelberg (2003)

    Google Scholar 

  4. Bernholdt, D.E., Nieplocha, J., Sadayappan, P.: Raising Level of Programming Abstraction in Scalable Programming Models. In: Workshop on Productivity and Performance in High-End Computing (HPCA’2004), Madrid, pp. 76–84 (2004)

    Google Scholar 

  5. Bramley, R., et al.: High-Performance Component Software Systems. SIAM 49 (2005)

    Google Scholar 

  6. Bruneton, E., Coupaye, T., Stefani, J.B.: Recursive and Dynamic Software Composition with Sharing. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, Springer, Heidelberg (2002)

    Google Scholar 

  7. Carvalho Jr., F.H., Lins, R.D.: Haskell#: Parallel Programming Made Simple and Efficient. J. of Univ. Computer Science 9(8), 776–794 (2003)

    Google Scholar 

  8. Carvalho Jr., F.H., Lins, R.D.: Separation of Concerns for Improving Practice of Parallel Programming. INFORMATION 8(5) (2005)

    Google Scholar 

  9. Carvalho Jr., F.H., Lins, R.D., Lima, R.M.F.: Translating Haskell# Programs into Petri Nets. In: Palma, J.M.L.M., et al. (eds.) VECPAR 2002. LNCS, vol. 2565, pp. 635–649. Springer, Heidelberg (2003)

    Google Scholar 

  10. Carvalho Jr., F.H., Lins, R.D., Martins, A.T.C.: An Institutional Theory for #-Components. In: Proceedings of the Brazilian Symposium on Formal Methods (SBMF’2006), September 2006, pp. 137–152 (2006)

    Google Scholar 

  11. Chiu, K.: An Architecture for Concurrent, Peer-to-Peer Components. PhD thesis, Department of Computer Science, Indiana University (2001)

    Google Scholar 

  12. Cole, M.: Bringing Skeletons out of the Closet: A Pragmatic Manifesto for Skeletal Parallel Programming. Parallel Computing 30, 389–406 (2004)

    Article  Google Scholar 

  13. Denis, A., Pérez, C., Priol, T.: PadicoTM: An Open Integration Framework for Communication Midleware and Runtimes. Future Generation Computing Systems 19, 575–585 (2004)

    Article  Google Scholar 

  14. Dongarra, J.: Trends in High Performance Computing. The Computer Journal 47(4), 399–403 (2004)

    Article  MathSciNet  Google Scholar 

  15. Goguen, J.: Higher-Order Functions Considered Unnecessary for Higher-Order Programming. In: Turner, D.A. (ed.) Research Topics in Functional Programming, pp. 309–351. Addison-Welsey, Reading (1990)

    Google Scholar 

  16. Goguen, J., Burnstal, R.: Institutions: Abstract Model Theory for Specification and Programming. Journal of ACM 39(1), 95–146 (1992)

    Article  MATH  Google Scholar 

  17. Gorlatch, S.: Send-Recv Considered Harmful? Myths and Truths about Parallel Programming. ACM Trans. in Programming Languages and Systems (1), 47–56 (2004)

    Google Scholar 

  18. Koahey, K., Gannon, D.: PARDIS: A Parallel Approach to CORBA. In: Proc. of the 6th IEEE Intl. Symposium on High Performance Distributed Computing (HPDC’97), August 1997, pp. 31–39. Springer, Heidelberg (1997)

    Google Scholar 

  19. Kohn, S., et al.: Divorcing Language Dependencies from a Scientific Software Library. In: 10th SIAM Conference on Parallel Processing, March 2001, Springer, Heidelberg (2001)

    Google Scholar 

  20. Lau, K., Elizondo, P.V., Wang, Z.: Exogenous Connectors for Software Components. In: Heineman, G.T., et al. (eds.) CBSE 2005. LNCS, vol. 3489, pp. 90–108. Springer, Heidelberg (2005)

    Google Scholar 

  21. Mahmood, N., Deng, G., Browne, J.C.: Compositional Development of Parallel Programs. In: 16th International Workshop on Languages and Compilers for Parallel Computing (October 2003)

    Google Scholar 

  22. Milli, H., Elkharraz, A., Mcheick, H.: Understanding Separation of Concerns. In: Workshop on Early Aspects (in AOSD’04), March 2004, pp. 411–428 (2004)

    Google Scholar 

  23. Pérez, C., Priol, T., Ribes, A.: A Parallel Corba Component Model for Numerical Code Coupling. In: Parashar, M. (ed.) GRID 2002. LNCS, vol. 2536, pp. 88–99. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  24. Shaw, M.: Procedure Calls are the Assembly Language of Software Interconnection: Connectors Deserve First-Class Status. In: Lamb, D.A. (ed.) ICSE-WS 1993. LNCS, vol. 1078, Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  25. van der Steen, A.J.: Issues in Computational Frameworks. Concurrency and Computation: Practice and Experience 18(2), 141–150 (2005)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michel Daydé José M. L. M. Palma Álvaro L. G. A. Coutinho Esther Pacitti João Correia Lopes

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

de Carvalho Junior, F.H., Lins, R.D., Corrêa, R.C., Araújo, G., de Santiago, C.F. (2007). Design and Implementation of an Environment for Component-Based Parallel Programming. In: Daydé, M., Palma, J.M.L.M., Coutinho, Á.L.G.A., Pacitti, E., Lopes, J.C. (eds) High Performance Computing for Computational Science - VECPAR 2006. VECPAR 2006. Lecture Notes in Computer Science, vol 4395. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71351-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-71351-7_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71350-0

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics