Abstract
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.
Similar content being viewed by others
References
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 Grid.it 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)
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)
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
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)
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)
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)
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.
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)
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)
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)
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
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
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)
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)
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)
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)
Dahlgren, T., Epperly, T., Kumfert, G., Leek, J.: Babel User’s Guide. CASC, Lawrence Livermore National Laboratory, Livermore (2006), babel-1.0.2 edition
Germain, C., Néri, V., Fedak, G., Cappello, F.: XtremWeb: building an experimental platform for global computing. In: Grid’2000, December 2000
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)
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
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
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
McIlroy, M.D.: Mass produced software components. In: Naur, P., Randell, B. (eds.) Software Engineering, pp. 138–155. Scientific Affairs Division, NATO, Brussels (1969)
Open Management Group (OMG): CORBA components, version 3. Document formal/02-06-65, June 2002
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)
Szyperski, C.: Component Software—Beyond Object-Oriented Programming. Addison-Wesley/ACM, Boston (1998)
The JXTA project, http://www.jxta.org/ (2001)
Lightweight Data Replicator, http://www.lsc-group.phys.uwm.edu/LDR/
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Antoniu, G., Bouziane, H.L., Jan, M. et al. Combining data sharing with the master–worker paradigm in the common component architecture. Cluster Comput 10, 265–276 (2007). https://doi.org/10.1007/s10586-007-0034-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-007-0034-7