This Article 
 Bibliographic References 
 Add to: 
An Example of Deriving Performance Properties from a Visual Representation of Program Execution
June 1997 (vol. 8 no. 6)
pp. 658-666

Abstract—Through geometry, program visualization can yield performance properties. We derive all possible synchronization sequences and durations of blocking and concurrent execution for two process programs from a visualization mapping processes, synchronization, and program execution to Cartesian graph axes, line segments, and paths, respectively. Relationships to Petri nets are drawn.

[1] A.D. Malony, "JED: Just an Event Display," Performance Instrumentation and Visualization, M. Simmons and R. Koskela, eds., pp. 99-114. ACM Press, 1989.
[2] G. Roman and K. Cox, "A Declarative Approach to Visualizing Concurrent Computations," Computer, vol. 22, no. 10, pp. 25-36, Oct. 1989.
[3] V. Adve and M.K. Vernon, "The Influence of Random Delays on Parallel Execution Times," 1993 ACM SIGMETRICS Conf. Measurement and Modeling of Computer Systems, pp. 61-73, May 1993.
[4] M. Abrams, "An Example of Deriving Performance Properties from a Visual Represention of Program Execution," Technical Report TR 95-09, Computer Science Dept., Virginia Tech., Blacksburg, Va., June 1995. Available at
[5] M. Sasieni, A. Yaspan, and L. Friedman, Operations Research—Methods and Problems.New York: John Wiley, 1959.
[6] E.C. Coffman, M.J. Elphick, and J. Shoshani, “System Deadlocks,” ACM Computing Surveys, vol. 3, no. 2, pp. 67–68, June 1971.
[7] S.D. Carson and P.F. Reynolds Jr., "The Geometry of Semaphore Programs," ACM Trans. Programming Languages and Systems, vol. 9, no. 1, pp. 25-53, Jan. 1987.
[8] W. Lipski and C.H. Papadimitriou, "A Fast Algorithm for Testing for Safety and Detecting Deadlocks in Locked Transaction Systems," J. Algorithms, vol. 2, no. 3, pp. 211-226, Sept. 1981.
[9] C.H. Papadimitriou, "Concurrency Control by Locking," SIAM J. on Computing, vol. 12, no. 2, pp. 215-226, May 1983.
[10] E. Soisalon-Soininen and D. Wood, "An Optimal Algorithm for Testing for Safety and Detecting Deadlocks in Locked Transaction System," Symp. Principles of Database Systems, pp. 108-116,Los Angeles. ACM, Mar. 1982.
[11] M. Yannakakis, C.H. Papadimitriou, and H.T. Kung, "Locking Policies: Safety and Freedom from Deadlock," Proc. 20th ACM Symp. Foundations of Computer Science, pp. 283-287, 1979.
[12] M. Abrams, "Geometric Performance Analysis of Periodic Behavior," J. Parallel and Distributed Computing, vol. 33, no. 2, pp. 131-144, Mar. 1996.
[13] R. Sedgewick, Algorithms in C. Reading, Mass.: Addison-Wesley, 1990.
[14] P.K. Agarwal, Intersection and Decomposition Algorithms for Planar Arrangements.Cambridge: Cambridge Univ. Press, 1991.
[15] W. Reisig, "Deterministic Buffer Synchronization of Sequential Systems," Acta Informatica, vol. 18, pp. 117-134, 1982.
[16] T. Murata, “Petri Nets: Properties, Analysis and Application,” Proc. IEEE, vol. 77, no. 4, 1989.
[17] Y. Souissi and N. Beldiceneau, "Deterministic Systems of Sequential Processes: Theory and Tools," Proc. Concurrency 88, Lecture Notes in Computer Science, vol. 335, pp. 380-400, 1988.
[18] J. Magott, "Performance Evaluation of Systems of Cyclic Processes with Mutual Exclusion Using Petri Nets," Information Processing Letters, vol. 21, pp. 229-232, Nov. 1985.
[19] J. Matousek, "On Vertical Ray Shooting in Hyperplanes," Computational Geometry: Theory and Applications, vol. 2, no. 5, pp. 279-286, Mar. 1993.

Index Terms:
Parallel computation, performance evaluation, visualization, computational geometry, ray shooting, timed progress graphs, mutual exclusion, Petri nets, reachability analysis.
Marc Abrams, "An Example of Deriving Performance Properties from a Visual Representation of Program Execution," IEEE Transactions on Parallel and Distributed Systems, vol. 8, no. 6, pp. 658-666, June 1997, doi:10.1109/71.595584
Usage of this product signifies your acceptance of the Terms of Use.