Advertisement

Structured Implementation of Component-Based Grid Programming Environments

  • Marco Aldinucci
  • Massimo Coppola
  • Sonia Campa
  • Marco Danelutto
  • Marco Vanneschi
  • Corrado Zoccolo

Abstract

The design, implementation and deployment of efficient high performance applications on Grids is usually a quite hard task, even in the case that modern and efficient grid middleware systems are used. We claim that most of the difficulties involved in such process can be moved away from programmer responsibility by following a structured programming model approach. The proposed approach relies on the development of a layered, component based execution environment. Each layer deals with distinct features and problems related to the implementation of GRID applications, exploiting the more appropriate techniques. Static optimizations are introduced in the compile layer, dynamic optimization are introduced in the run time layer, whereas modern grid middleware features are simply exploited using standard middleware systems as the final target architecture. We first discuss the general idea, then we discuss the peculiarities of the approach and eventually we discuss the preliminary results achieved in the GRID.it project, where a prototype high performance, component based, GRID programming environment is being developed using this approach.

Keywords

components structured programming parallelism application manager heterogeneous architectures fault tolerance 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    The IBIS home page. http://www.cs.vu.nl/ibis/, 2004.Google Scholar
  2. [2]
    The grads home page. http://www.hipersoft.rice.edu/grads/, 2005.Google Scholar
  3. [3]
    The Pisa parallel processing group home page. http://www.di.unipi.it/groups/architetture/, 2005.Google Scholar
  4. [4]
    M. Aldinucci, A. Petrocelli, A. Pistoletti, M. Torquati, M. Vanneschi, L. Veraldi, and C. Zoccolo. Dynamic reconfiguration of Grid-aware applications in ASSIST. Technical report, Dept. Computer Science, University of Pisa, Italy, 2005. Submitted to Euro-Par 2005.Google Scholar
  5. [5]
    M. Aldinucci, S. Campa, P. Ciullo, M. Coppola, S. Magini, P. Pesciullesi, L. Potiti, R. Ravazzolo, M. Torquati, M. Vanneschi, and C. Zoccolo. The implementation of ASSIST, an Environment for Parallel and Distributed Programming. In H. Kosch, L. Boszormenyi, and H. Hellwagner, editors, Euro-Par 2003 Parallel Processing, number 2790 in LNCS, pages 712–721. Springer Verlag, august 2003. Klagenfurt, Austria.Google Scholar
  6. [6]
    M. Aldinucci, M. Coppola, M. Danelutto, M. Vanneschi, and C. Zoccolo. ASSIST as a Research Framework for High-performance Grid Programming Environments. In Jose C. Cunha and Omer F. Rana, editors, Grid Computing: Software environments and Tools. Springer Verlag, 2005.Google Scholar
  7. [7]
    Marco Aldinucci, Sonia Campa, Massimo Coppola, Marco Danelutto, Domenico Laforenza, Diego Puppin, Luca Scarponi, Marco Vanneschi, and Corrado Zoccolo. Components for High Performance Grid Programming in Grid. IT. In Vladimir Getov and Thilo Kielmann, editors, Component Models and Systems for Grid Applications, Proc. of the WCMSGA Workshop of ACM ICS’04. Springer, 2005.Google Scholar
  8. [8]
    Marco Aldinucci, Sonia Campa, Massimo Coppola, Silvia Magini, Paolo Pesciullesi, Laura Potiti, Massimo Torquati, and Corrado Zoccolo. Targeting Heterogeneous Architectures in ASSIST: Experimental Results. In Marco Danelutto, Domenico Laforenza, and Marco Vanneschi, editors, Euro-Par 2004: Parallel Processing, number 3149 in LNCS, pages 638–643, 2004.Google Scholar
  9. [9]
    Globus Alliance. Globus Monitoring and Discovery System homepage. http://www-unix.globus.org/toolkit/mds/.Google Scholar
  10. [10]
    F. André, J. Buisson, and J.L. Pazat. Dynamic adaptation of parallel codes: towards self-adaptable components. In Component Models and Systems for Grid Applications, pages 145–156, 2005. First volume of the CoreGRID series.Google Scholar
  11. [11]
    Rob Armstrong, Dennis Gannon, Al Geist, Katarzyna Keahey, Scott Kohn, Lois McInnes, Steve Parker, and Brent Smolinski. Toward a common component architecture for high-performance scien: computing. In HPDC’ 99: Proceedings of the The Eighth IEEE International Symposium on High Performance Distributed Computing, page 13. IEEE Computer Society, 1999.Google Scholar
  12. [12]
    R. Baraglia, M. Danelutto, D. Laforenza, S. Orlando, P. Palmerini, R. Perego, P. Pesciullesi, and M. Vanneschi. AssistConf: A Grid Configuration Tool for the ASSIST Parallel Programming Environment. In Proceedings of the Eleventh Euromicro Conference on Parallel, Distributed and Network-Based Processing, pages 193–200. IEEE, 2003.Google Scholar
  13. [13]
    M. Cole. Bringing Skeletons out of the Closet: A Pragmatic Manifesto for Skeletal Parallel Programming. Parallel Computing, 30(3):389–406, 2004.CrossRefGoogle Scholar
  14. [14]
    M. Cole and A. Benoit. The edinburgh skeleton library home page, 2005. http://homepages.inf.ed.ac.uk/abenoitl/eSkel/.Google Scholar
  15. [15]
    M. Coppola and M. Vanneschi. High-Performance Data Mining with Skeleton-based Structured Parallel Programming. Parallel Computing, 28(5):793–813, 2002.CrossRefGoogle Scholar
  16. [16]
    M. Danelutto. Efficient support for skeletons on workstation clusters. Parallel Processing Letters, 11(1):41–56, 2001.CrossRefGoogle Scholar
  17. [17]
    M. Danelutto. QoS in parallel programming through application managers. In Proceedings of the 13th Euromicro Conference on Parallel, Distributed and Network-based processing. IEEE, 2005. Lugano (CH).Google Scholar
  18. [18]
    Microsoft.NET Developer Center: Technology Information. http://msdn.microsoft.com/netframework/technologyinfo/default.aspx, 2005.Google Scholar
  19. [19]
    Dietmar W. Erwin and David F. Snelling. UNICORE: A Grid computing environment. In Rizos Sakellariou, John Keane, John Gurd, and Len Freeman, editors, Euro-Par 2001 Parallel Processing, volume 2150 of LNCS, pages 825–834, 2001.Google Scholar
  20. [20]
    D. Snelling et. al. Next generation grids 2 requirements and options for european grids research 2005–2010 and beyond. ftp://ftp.cordis.lu/pub/ist/docs/ngg2_eg-final.pdf, 2004.Google Scholar
  21. [21]
    Ian Foster and Carl Kesselman. The Globus toolkit. In Ian Foster and Carl Kesselman, editors, The Grid: Blueprint for a New Computing Infrastructure, chapter 11. Morgan Kaufmann Pub., July 1998.Google Scholar
  22. [22]
    Grid.it community. The GRID.it home page, 2005. http://www.grid.it.Google Scholar
  23. [23]
    H. Kuchen. A skeleton library. In Euro-Par 2002, Parallel Processing, number 2400 in LNCS, pages 620–629. “Springer” Verlag, August 2002.zbMATHGoogle Scholar
  24. [24]
    S. MAcDonald, J. Anvik, S. Bromling, J. Schaeffer, D. Szafron, and K. Taa. From patterns to frameworks to parallel programs. Parallel Computing, 28(12):1663–1684, december 2002.zbMATHCrossRefGoogle Scholar
  25. [25]
    H. Nakada, S. Matsuoka, K. Seymour, J. Dongarra, and C. Lee. GridRPC: A Remote Procedure Call API for Grid Computing. http://www.eece.unm.edu/ ?apm/docs/APM GridRPC 0702.pdf, July 2002.Google Scholar
  26. [26]
    Object Management Group. CORBA Component Model version 3.0 Specification, http://www.omg.org/, September 2002.Google Scholar
  27. [27]
    Sun. Javabeans home page. http://java.sun.com/products/javabeans, 2003.Google Scholar
  28. [28]
    Unicore forum. http://www.unicore.org/, 2004.Google Scholar
  29. [29]
    S. Vadhiyar and J. Dongarra. Self adaptability in grid computing. http://www.hipersoft.rice.edu/grads/publications_reports.htm, 2004.Google Scholar
  30. [30]
    Sathish Vadhiyar and Jack Dongarra. GrADSolve-A Grid-based RPC system for Remote Invocation of Parallel Software. Journal of Parallel and Distributed Computing, 63(11): 1082–1104, November 2003.CrossRefGoogle Scholar
  31. [31]
    R. V. van Nieuwpoort, J. Maassen, G. Wrzesinska, T. Kielmann, and H. E. Bal. Adaptive Load Balancing for Divide-and-Conquer Grid Applications. www.cs.vu.nl/~kielmann/papers/satin-crs.pdf, 2004.Google Scholar
  32. [32]
    Marco Vanneschi. The programming model of ASSIST, an environment for parallel and distributed portable applications. Parallel Computing, 28(12): 1709–1732, 2002.zbMATHCrossRefGoogle Scholar
  33. [33]
    W3C. Web Services Description Language (WSDL) 1.1. http://www.w3.org/TR/wsdl.Google Scholar
  34. [34]
    W3C. Web services home page. http://www.w3.org/2002/ws/, 2003.Google Scholar

Copyright information

© Springer Science+Business Media, Inc. 2006

Authors and Affiliations

  • Marco Aldinucci
    • 1
  • Massimo Coppola
    • 1
  • Sonia Campa
    • 2
  • Marco Danelutto
    • 2
  • Marco Vanneschi
    • 2
  • Corrado Zoccolo
    • 2
  1. 1.ISTI/C.N.R.PisaItaly
  2. 2.Department of Computer ScienceUniversity of PisaPisaItaly

Personalised recommendations