Performance Analysis of Concurrent Programs Using Ordinary Differential Equations

Based on Continuous Petri Net, we build differential equation model for concurrent programs. The program behavior can be analyzed from the curves of the solutions of the differential equations. We show that a program state can be measured with a number between 0 and 1, called state measure, indicating how much the state can be reached while the program is in execution. Thus, instead of displaying one state at one time, a program can display all states at one time with state measure attached to each state. This information can help us to estimate where and how much the resources have been used. The advantage of our method is that we can avoid state explosion problem while doing program analysis. Our equations can be solved by Matlab and simulated with a tool: Snoopy.

[1]  Wolfgang Reisig Petri Nets: An Introduction , 1985, EATCS Monographs on Theoretical Computer Science.

[2]  Sol M. Shatz,et al.  Design and Implementation of a Petri Net Based Toolkit for Ada Tasking Analysis , 1990, IEEE Trans. Parallel Distributed Syst..

[3]  René David,et al.  Autonomous And Timed Continous Petri Nets , 1991, Applications and Theory of Petri Nets.

[4]  David Luckham,et al.  Debugging Ada Tasking Programs , 1985, IEEE Software.

[5]  Michael K. Molloy Fast Bounds for Stochastic Petri Nets , 1985, PNPM.