Cluster Computing

, Volume 10, Issue 3, pp 265–276 | Cite as

Combining data sharing with the master–worker paradigm in the common component architecture

  • Gabriel Antoniu
  • Hinde Lilia Bouziane
  • Mathieu Jan
  • Christian PérezEmail author
  • Thierry Priol


Software component technologies are being accepted as an adequate solution for handling the complexity of applications. However, existing software component models tend to be specialized to some types of resource architectures (e.g. in-process, distributed environments, etc.) and/or do not provide a very high level of abstraction. This paper focuses on handling data sharing on operation invocations between components as a solution allowing applications to be efficiently executed on all kinds of resources. In particular, the data sharing pattern appears in master–worker applications, when workers need to access only a part of a large piece of data, either in read or write mode. This approach is applied to the Common Component Architecture model. Its benefits are discussed using an image rendering application.


Software components Data sharing Master–worker paradigm Grid computing Common component architecture 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aldinucci, M., Campa, S., Coppola, M., Danelutto, M., Laforenza, D., Puppin, D., Scarponi, L., Vanneschi, M., Zoccolo, C.: Components for high performance Grid programming in the project. In: Getov, V., Kielmann, T. (eds.) Proc. of the Workshop on Component Models and Systems for Grid Applications, Saint Malo, France, June 2004. Springer, Berlin (2005) Google Scholar
  2. 2.
    Allcock, B., Bester, J., Bresnahan, J., Chervenak, A.L., Kesselman, C., Meder, S., Nefedova, V., Quesnel, D., Tuecke, S., Foster, I.: Secure, efficient data transport and replica management for high-performance data-intensive computing. In: Proceedings of the 18th IEEE Symposium on Mass Storage Systems (MSS 2001), Large Scale Storage in the Web, Washington, DC, USA, 2001, p. 13. IEEE Computer Society, Washington (2001) CrossRefGoogle Scholar
  3. 3.
    Anderson, D., Bowyer, S., Cobb, J., Gebye, D., Sullivan, W.T., Werthimer, D.: A new major SETI project based on Project SERENDIP data and 100,000 personal computers. Conference Paper, Astronomical and Biochemical Origins and the Search for Life in the Universe, IAU Colloquium 161, Bologna, Italy, 1997, p. 729 Google Scholar
  4. 4.
    Anderson, D.P.: BOINC: a system for public-resource computing and storage. In: Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing (GRID ’04), Pittsburgh, PA, USA, November 2004, pp. 4–10. IEEE Computer Society, Washington (2004) CrossRefGoogle Scholar
  5. 5.
    Antoniu, G., Bertier, M., Caron, E., Desprez, F., Bougé, L., Jan, M., Monnet, S., Sens, P.: GDS: an architecture proposal for a grid data-sharing service. In: Getov, V., Laforenza, D., Reinefeld, A. (eds.) Future Generation Grids, CoreGRID series, pp. 133–152. Springer, Berlin (2005) Google Scholar
  6. 6.
    Antoniu, G., Bougé, L., Jan, M.: JuxMem: an adaptive supportive platform for data sharing on the grid. Scalable Comput. Pract. Experience 6(3), 45–55 (2005) Google Scholar
  7. 7.
    Antoniu, G., Bouziane, H.L., Breuil, L., Jan, M., Pérez, C.: Enabling transparent data sharing in component models. In: 6th IEEE International Symposium on Cluster Computing and the Grid (CCGRID ’06), Singapore, May 2006, pp. 430–433. Google Scholar
  8. 8.
    Badouel, D., Bouatouch, K., Priol, T.: Ray tracing on distributed memory parallel computers: Strategies for distributing computation and data. IEEE Comput. Graph. Appl. 14(4), 69–77 (1994) CrossRefGoogle Scholar
  9. 9.
    Barroca, L., Hall, J., Hall, P.: An introduction and history of software architectures, components, and reuse. In: Software Architectures: Advances and Applications. Springer, Berlin (1999) Google Scholar
  10. 10.
    Bernholdt, D.E., Allan, B.A., Armstrong, R., Bertrand, F., Chiu, K., Dahlgren, T.L., Damevski, K., Elwasif, W.R., Epperly, T.G.W., Govindaraju, M., Katz, D.S., Kohl, J.A., Krishnan, M., Kumfert, G., Larson, J.W., Lefantzi, S., Lewis, M.J., Malony, A.D., McInnes, L.C., Nieplocha, J., Norris, B., Parker, S.G., Ray, J., Shende, S., Windus, T.L., Zhou, S.: A component architecture for high-performance scientific computing. Int. J. High Perform. Comput. Appl. 20(2), 163–202 (2006) CrossRefGoogle Scholar
  11. 11.
    Bouziane, H.L., Pérez, C., Priol, T.: Modeling and executing master–worker applications in component models. In: 11th International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS), Rhodes Island, Greece, April 2006 Google Scholar
  12. 12.
    Bruneton, E., Coupaye, T., Stefani, J.B.: Recursive and dynamic software composition with sharing. In: Seventh International Workshop on Component-Oriented Programming, Malaga, Spain, June 2002 Google Scholar
  13. 13.
    Buyya, R., Abramson, D., Giddy, J.: Nimrod/G: An architecture for a resource management and scheduling system in a global computational grid. High-Perform. Comput. China, IEEE CS Press, USA 1(1), 283 (2000) Google Scholar
  14. 14.
    Caron, E., Desprez, F., Lombard, F., Nicod, J.M., Quinson, M., Suter, F.: A scalable approach to network enabled servers. In: Monien, B., Feldmann, R. (eds.) Proceedings of the 8th International EuroPar Conference, Paderborn, Germany, August 2002. Lecture Notes in Computer Science, vol. 2400, pp. 907–910. Springer, Berlin (2002) Google Scholar
  15. 15.
    Casanova, H., Dongarra, J.: NetSolve: a network-enabled server for solving computational science problems. Int. J. Supercomput. Appl. High Perform. Comput. 11(3), 212–223 (1997) CrossRefGoogle Scholar
  16. 16.
    Chervenak, A., Deelman, E., Foster, I., Guy, L., Hoschek, W., Iamnitchi, A., Kesselman, C., Kunszt, P., Ripeanu, M., Schwartzkopf, B., Stockinger, H., Stockinger, K., Tierney, B.: Giggle: a framework for constructing scalable replica location services. In: Proceedings of the 2002 ACM/IEEE Conference on Supercomputing (SC ’02), Baltimore, Maryland, 2002, pp. 1–17. IEEE Computer Society, Washington (2002) Google Scholar
  17. 17.
    Dahlgren, T., Epperly, T., Kumfert, G., Leek, J.: Babel User’s Guide. CASC, Lawrence Livermore National Laboratory, Livermore (2006), babel-1.0.2 edition Google Scholar
  18. 18.
    Germain, C., Néri, V., Fedak, G., Cappello, F.: XtremWeb: building an experimental platform for global computing. In: Grid’2000, December 2000 Google Scholar
  19. 19.
    Kola, G., Livny, M.: Diskrouter: a flexible infrastructure for high performance large scale data transfers. Technical Report CS-TR-2003-1484. University of Wisconsin-Madison Computer Science Department, Madison, WI, USA (2003) Google Scholar
  20. 20.
    Magee, J., Dulay, N., Kramer, J.: A constructive development environment for parallel and distributed programs. In: Proceedings of the International Workshop on Configurable Distributed Systems, Pittsburgh, US, March 1994, pp. 4–14 Google Scholar
  21. 21.
    Malawski, M., Kurzyniec, D., Sunderam, V.: Mocca—towards a distributed CCA framework for metacomputing. In: Proceedings of 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05)—Joint Workshop on High-Performance Grid Computing and High-Level Parallel Programming Models—HIPS-HPGC, Denver, Colorado, USA, April 2005, pp. 907–910 Google Scholar
  22. 22.
    Malawski, M., Bubak, M., Placek, M., Kurzyniec, D., Sunderamann, V.: Experiments with distributed component computing across grid boundaries. In: Proceedings of the joint Workshop on HPC Grid Programming Environments and Components and Component and Framework Technology in High-Performance and Scientific Computing (HPC-GECO/CompFrame 2006), Paris, France, 2006, pp. 109–116 Google Scholar
  23. 23.
    McIlroy, M.D.: Mass produced software components. In: Naur, P., Randell, B. (eds.) Software Engineering, pp. 138–155. Scientific Affairs Division, NATO, Brussels (1969) Google Scholar
  24. 24.
    Open Management Group (OMG): CORBA components, version 3. Document formal/02-06-65, June 2002 Google Scholar
  25. 25.
    Pérez, C., Priol, T., Ribes, A.: A parallel corba component model for numerical code coupling. Int. J. High Perform. Comput. Appl. 17(4), 417–429 (2003) CrossRefGoogle Scholar
  26. 26.
    Szyperski, C.: Component Software—Beyond Object-Oriented Programming. Addison-Wesley/ACM, Boston (1998) Google Scholar
  27. 27.
    The JXTA project, (2001)
  28. 28.
    Lightweight Data Replicator,

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Gabriel Antoniu
    • 1
  • Hinde Lilia Bouziane
    • 1
  • Mathieu Jan
    • 1
  • Christian Pérez
    • 1
    Email author
  • Thierry Priol
    • 1
  1. 1.IRISA/INRIARennes cedexFrance

Personalised recommendations