Abstract
The development of parallel applications requires the availability of tools that support their debugging and tuning. GSPN represent a formalism that is well suited for the construction of formal models of parallel programs that can be used for both validation and evaluation purposes. The analysis of GSPN models of parallel programs provides the information that is needed for deciding whether the objectives contained in the specifications of an application are met and for distributing the computation on a parallel architecture. In this paper we discuss a methodology for directly constructing a GSPN model of an application from its code and for deriving the parameters that are needed for obtaining the optimal allocation of the components of a parallel application on the computational units of a parallel architecture. A simple example is used throughout the paper to illustrate the different steps of the methodology and to show how these GSPN models can be used to check the efficiency of a parallel application.
This work has been supported in part by Ministero dell'Universita' e della Ricerca Scientifica e Tecnologica — 40% Project — and by the Italian National Research Council — Progetto Finalizzato Sistemi Informatici e Calcolo Parallelo, Grant N. 91.00879.PF69.
This article was processed using the LATEX macro package with LLNCS style
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Ajmone Marsan, G. Balbo, G. Chiola, and G. Conte. Applicability of stochastic Petri nets to performance modeling. In G. Iazeolla, P.J. Courtois, and O.J. Boxma, editors, Proc. 2 nd Int. Workshop Applied Mathematics & Performance/Reliability Models of Computer/Communication Systems, Roma, Italy, May 1987. North-Holland.
M. Ajmone Marsan, G. Balbo, G. Chiola, and G. Conte. Modeling the software architecture of a prototype parallel machine. In Proc. 1987 SIGMETRICS Conference, Banf, Alberta, Canada, May 1987. ACM.
M. Ajmone Marsan, G. Balbo, and G. Conte. A class of generalized stochastic Petri nets for the performance analysis of multiprocessor systems. ACM Transactions on Computer Systems, 2(1), May 1984.
G. Balbo, G. Chiola, S.C. Bruell, and P. Chen. An example of modelling and evaluation of a concurrent program using coloured stochastic Petri nets: Lamport's fast mutual exclusion algorithm. IEEE Transactions on Parallel and Distributed Systems, 3(1), January 1992.
G. Balbo, S. Donatelli, and G. Franceschmis. Understanding parallel programs behaviour through Petri net models. To be published on the Special Issue of the Journal of Parallel and Distributed Computing on Petri Net Modelling of Parallel Computers, 1992.
G. Balbo, S. Donatelli, G. Franceschinis, A. Mazzeo, A. Mazzocca, and M. Ribaudo. On parallel program characterization. Submitted for publication, 1992.
Shahid H. Bokhari. Assignment Problems in Parallel and Distributed Computing. Kluwer Academic Publishers, 1987.
G. Bruno and G. Marchetto. Process-translatable Petri nets for the rapid prototyping of process control systems. IEEE Transactions on Software Engineering, 12(2):346–357, February 1986.
G. Chiola, S. Donatelli, and G. Franceschinis. GSPN versus SPN: what is the actual role of immediate transitions? In Proc. 4th Intern. Workshop on Petri Nets and Performance Models, Melbourne, Australia, December 1991
G. Chiola, C. Dutheillet, G. Franceschmis, and S. Haddad. On well-formed coloured nets and their symbolic reachability graph. In Proc. 11th International Conference on Application and Theory of Petri Nets, Paris, France, June 1990. Reprinted in High-Level Petri Nets. Theory and Application, K. Jensen and G. Rozenberg (editors), Springer Verlag, 1991.
Giovanni Chiola. GreatSPN 1.5 software architecture. In Proc. 5th Int. Conf. Modeling Techniques and Tools for Computer Performance Evaluation, Torino, Italy, February 1991.
F. De Cindio, G. De Michelis, L. Pomello, and C. Simone. Superposed automata nets. In C. Girault and W. Reisig, editors, Application and Theory of Petri Nets. IFB 52, New York and London, 1982.
F. DeCindio and O. Botti. Comparing Occam2 program placements by a GSPN model. In Proc. 4th Intern. Workshop on Petri Nets and Performance Models, Melbourne, Australia, December 1991.
S. Donatelli. Superposed stochastic automata: a class of stochastic Petri nets amenable to parallel solution. In Proc. 4th Intern. Workshop on Petri Nets and Performance Models, Melbourne, Australia, December 1991.
R. Ducan. A survey of parallel computer architecture. IEEE Computer, February 1980.
D.L. Eager, J. Zahorian, and E.D. Lazowska. Speed up versus efficiency in parallel systems. ACM Transactions on Computer Systems, 38:408–423, March 1989.
A. Ferscha. Modelling mappings of parallel computations onto parallel architectures with prm-net model. In Proc. IFIP-WG 10.3 Working Conference on Decentralized Systems, Lyon, December 1989.
E. Gelenbe. Multiprocessor Performance. John Wiley & Sons, 1989.
C. Ghezzi, D. Mandrioli, S. Morasca, and M. Pezzè. A general way to put time in Petri nets. In Proc. 5th Intern. Conference on Software Specification and Design, pages 60–67, Pittsburgh, PA, May 1989. IEEE-CS Press.
C. Ghezzi, D. Mandrioli, S. Morasca, and M. Pezzè. Symbolic execution of concurrent systems using petri nets. Computer Languages, 14:263–281, 1989.
C.A.R. Hoare. Communicating sequential process. Communications of ACM, Aug 1978.
G. Iannello, A. Mazzeo, C. Savy, and G. Ventre. Parallel software development in disc programming enviroment. Future Generation Computer Systems, 5(4), 1990.
O. Kramer and H. Muhlenbein. Mapping strategies in message-based multiprocessors system. Parallel Computing, 9, 1989.
INMOS Limited. OCCAM Programming Manual. Prentice-Hall, Englewood Cliffs, NJ, 1984.
MEIKO Limited. CStools Reference Manual. Bristol, UK, 1989.
T. Murata, B. Shenker, and S. Shatz. Detection of Ada static deadlocks using Petri nets invariants. IEEE Transactions on Software Engineering, 15(3):314–326, March 1989.
C.V. Ramamoorty and W.T. Tsai A. Prakash. Software engineering: Problems and perspectives. IEEE Transactions on Computer, October 1984.
C. G. Rommel. The probability of load balancing success in a homogeneous network. IEEE Transactions on Software Engineering, SE-17(9), September 1991.
S. Shatz and J. Wang. Tutorial on Distributed Software Engeneering. IEEE-CS Press, 1989.
S.M. Shatz and W.K. Cheng. A Petri net framework for automated static analysis of Ada tasking. The Journal of Systems and Software, 8:343–359, October 1987.
Hong Shen. Self-adjusting mapping: A heuristic mapping algorithm for mapping parallel program onto transputer networks. In Eleventh O. U. G.: Developing Transputer Applications, Edinburgh, September 1989. Occam User Group.
M. Silva. Las Redes de Petri en la Automatica y la Informatica. Ed. AC, Madrid, Spain, 1985.
J.K. Aggarwal Soo-Young Lee. A mapping strategy for parallel processing. IEEE Transactions on Computers, C 36(4), Apr 1987.
R. Taylor. A general purpose algorithm for analyzing concurrent programs. Communications of ACM, 26, May 1983.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Balbo, G. (1992). Performance issues in parallel programming. In: Jensen, K. (eds) Application and Theory of Petri Nets 1992. ICATPN 1992. Lecture Notes in Computer Science, vol 616. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55676-1_1
Download citation
DOI: https://doi.org/10.1007/3-540-55676-1_1
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55676-3
Online ISBN: 978-3-540-47270-4
eBook Packages: Springer Book Archive