Abstract
The advances of parallel and distributed computing demand high-level programming models that support efficient software development and execution. Graphs can effectively represent the logical structures of distributed systems and applications so as to facilitate the programming of distributed applications and support efficient mapping of programs to hardware architecture. This chapter presents a Graph-Oriented Programming (GOP) model that provides flexible graph constructs and graph-oriented primitives to build a programming paradigm based on graph topology and also provides a formal specification of software architecture for distributed programs. The GOP model creates an abstract programming framework and supports dynamic reconfiguration of distributed computing system to implement adaptive computation and fault-tolerance. Various computing environments have been developed based on GOP for cluster computing, web service, and component-based computation.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
D. Banerjee and J. Browne, “Complete Parallelization of Computations: Integration of Data Partitioning and Functional Parallelism for Dynamic Data Structures”, Proc. 10th IEEE Int’l Parallel Processing Symp. (IPPS’96), Honolulu, Hawaii, April 15–19, 1996, pp.354–361.
A. Bartoli, P. Corsini, G. Dini and C. Prete, “Graphical Design of Distributed Applications Through Reusable Components”, IEEE Concurrency, Vol. 3, No. 1, Spring 1995, pp.37–50.
A. Beguelin, J. Dongarra, A. Geist, R. Manchek and K. Moore, “HeNCE: A Heterogeneous Network Computing Environment”, Scientific Programming, Vol. 3, No. 1,1994, pp.49–60.
D. Box, D Ehnebuske, G. Kakivaya, A. Layman, N. Mendelsohn, H. Nielsen, S. Thatte and D. Winer, “Simple Object Access Protocol (SOAP) 1.1”, W3C Note, May 8, 2000, available at http://www.w3.org/TR/SOAP/
J. Cao, A. Chan, C. Lee and K. Yu, “A Dynamic Reconfiguration Manager for Graph-Oriented Distributed Programs”, Proc. 1997 Int’l Conf. on Parallel and Distributed Systems (ICPADS’97), Seoul, Korea, Dec 1997, pp.216–221.
J. Cao, X. Ma, A. Chan and J. Lu, “WEBGOP: A Framework for Architecting and Programming Dynamic Distributed Web Applications”, Proc. 2002 Int’l Conf. on Parallel Processing (ICPP’02), Vancouver, Canada, August 2002, pp.266–275.
J. Cao, M. Cao and A. Chan, “Architecture Level Support for Dynamic Reconfiguration and Fault Tolerance in Component-Based Distributed Software”, Proc. 2002 Int’l Conf. on Parallel and Distributed Systems (ICPADS’02), Dec. 2002, Taiwan, pp.251–256.
F. Chan, J. Cao and Y. Sun, “High-level Abstractions for Message-passing Parallel Programming”, Parallel Computing, Vol.29, No.11–12, 2003, pp.1589–1621.
CORBA, http://www.corba.org/
D. Garlan and M. Shaw, “An Introduction to Software Architecture”, in Advances in Software Engineering and Knowledge Engineering, Vol. II, World Scientific Publishing, 1993.
D. Garlan and D. Perry, “Software Architecture: Practice, Potential, and Pitfalls”, Proc. 16th Int’l Conf. on Software Engineering, Sorrento, Italy, May 16–21, 1994, pp.363–364.
B. Gruber, G. Haring, J. Volkert and D. Kranzlmüler, “Parallel Programming with CAPSE-A Case Study”, Proc. 4th EUROMICRO Workshop on Parallel and Distributed Processing (PDP’96), Braga, Portugal, Jan. 1996, pp.130–137.
O. Loques and J. Leite, “P-RIO: A Modular Parallel-Programming Environment”, IEEE Concurrency, Vol. 6, No. 1, Jan–Mar 1998, pp.47–57.
The Message Passing Interface (MPI) Standard, http://www-unix.mcs.anl.gov/mpi/
P. Newton and J. Browne, “The CODE 2.0 Graphical Parallel Programming Language”, Proc. ACM Int’l Conf. on Supercomputing (Supercomputing’92), Washington D.C., July 1992, pp. 167–177.
P. Newton, “Visual Programming and Parallel Computing”, Workshop on Environments and Tools for Parallel Scientific Computing, Walland, TN, May 26–27, 1994.
P. Newton and J. Dongarra, “Overview of VPE: A Visual Environment for Message-Passing”, Proc. 4th Heterogeneous Computing Workshop, Santa Barbara, CA, April 25, 1995.
P. Oreizy and R. Taylor, “On the Role of Software Architecture in Runtime System Reconfiguration”, IEE Proceedings-Software Engineering, Vol. 145, No. 5, October 1998, pp.137–145.
PVM, http://www.csm.ornl.gov/pvm/
T. Smedley and P. Cox, “Visual Languages for the Design and Development of Structured Objects”, Journal of Visual Languages and Computing, Vol. 8, No. 1, 1997, pp.57–84.
N. Stankovic and K. Zhang, “A Distributed Parallel Programming Framework”, IEEE Transactions on Software Engineering, Vol. 28, No. 5, May, 2002, pp.478–493.
S. Steinman and K. Carver, Visual Programming with Prograph CPX, Manning Publications, 1995.
H. Topcuoglu, S. Hariri, W. Furmanski, J. Valente, I. Ra, D. Kim, Y. Kim, X. Bing and B. Ye, “The Software Architecture of a Virtual Distributed Computing Environment”, Proc. 6th Int’l Symp. on High Performance Distributed Computing (HPDC’97), Portland, OR, Aug. 5–8, 1997, pp.40–49.
H. Topcuoglu, S. Hariri, D. Kim, Y. Kim, X. Bing, B. Ye, I. Ra and J. Valente, “The Design and Evaluation of a Virtual Distributed Computing Environment”, Cluster Computing, Vol. 1, No. 1, 1998, pp.81–93.
XML, http://www.xml.org/
T. Yang and A. Gerasoulis, “PYRROS: Static Task Scheduling and Code Generation for Message Passing Multiprocessors”, Proc. ACM Int’l Conf. on Supercomputing (Supercomputing’92), Washington D.C., July 1992, pp.428–437.
T. Yang and A. Gerasoulis, “A Parallel Programming Tool for Scheduling on Distributed Memory Multiprocessors”, Proc. the Scalable High Performance Computing Conference, Williamsburg, Virginia, April 26–29, 1992, pp.350–357.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer Science+Business Media, Inc.
About this chapter
Cite this chapter
Cao, J., Chan, A.T.S., Sun, Y. (2005). GOP: A Graph-Oriented Programming Model for Parallel and Distributed Systems. In: Guo, M., Yang, L.T. (eds) New Horizons of Parallel and Distributed Computing. Springer, Boston, MA. https://doi.org/10.1007/0-387-28967-4_2
Download citation
DOI: https://doi.org/10.1007/0-387-28967-4_2
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-24434-1
Online ISBN: 978-0-387-28967-0
eBook Packages: Computer ScienceComputer Science (R0)