Check of Concurrency in Parallel Programs using Image Information

영상정보를 이용한 병렬 프로그램내의 병행성 판별

  • 박명철 (국립 경상대학교 컴퓨터과학과) ;
  • 하석운 (국립 경상대학교 컴퓨터과학과)
  • Published : 2006.12.30


A parallel program including a nested parallelism has a complex execution aspects and tasks are executed concurrently. This concurrency is a main cause raising most of errors. In this paper, a new method for checking concurrency between two tasks is proposed. The existing techniques for checking the concurrency have their limits to represent a global structure. A new labeling technique that appropriate for image visualization is proposed. To show the global structure by imaging of execution aspects through region partition on 2D plane. On the basis of it, each of the tasks that can distinguish the ordered relation create an independent image. Image information generated by the result simplifies semantic analysis of the related task, and provides an outline of a global execution aspects structure of the program to user effectively.


  1. Audenaert, K., 'Maintaining Concurrency Information for On-the-fly Data Race Detection,' Int'l Conf. on Parallel Computing : Fundamentals, Applications and New Directions, Bonn, Germany, pp.319-326, Sept., 1997, Advances in Parallel Computing, Elsevier, NorthHolland, Amsterdam, Vol.12, 1998
  2. Citron D., D. G. Feitelson, and I. Exman, 'Parallel Activity Roadrnaps,' Int'l Conf. on Parallel Computing (ParCo '93), Parallel Computing: Trends and Applications pp. 593-596, Elsevier Science, 1994
  3. Dagum, L. and R. Menon, 'OpenMP : an Industry-Standard API for Shared-Memory Programming,' Computational Scince and Engineering, 5(1), IEEE, 46-55, Jan.-March, 1998
  4. Dinning A., and E. Schonberg, 'An Empirical Comparison of Monitoring Algorithms for Access Anomaly Detection,' 2nd Symp. on Principles and Paractice of Parallel Programming, pp. 1-10, ACM, 1990
  5. Dinning A., and E. Schonberg, 'Detecting Access in Programs with Critical Sections,' 2nd Workshop on Parallel and Distributed Debugging, pp.85-96, ACM, May 1991
  6. . Kim, Y. Kim and Y. Jun, 'Effective Race Visualization for Debugging OpenMP Programs,' Proc. Blnd KlSS Conference, Vol. 31 No. 02 pp. 13-15 Oct. 2004
  7. Helmbold, D. P., C. E. McDowell, and J. Wang, 'TraceViewer: A Graphical Browser for Trace Analysis,' TR-90-59, UCSC. 1990
  8. K. Audenaert, 'Clock Trees: Logical Clocks for Programs with Nested Parallelism,' IEEE Trans. Software Eng., vol. 23, no. 10,1997
  9. Kim, J., D. Kim, and Y. Jun, 'Scalable Visualization for Debugging Races in OpenMP Programs,' Proc. of the 3rd Int'l Conf. on Communications in Computing (CIC), pp.259-265, Las Vegas, Nevada, June 2002
  10. Kuhn, B., P. Petersen, and E. O'Toole, '0penMP versus Threading in C/C++,' EWOMP '99, Lund, Sweden, Sept. 1999
  11. Netzer R. H. B., and B. P. Miller, 'What are Race Condition? Some Issues and Formalization,' Letters on Programming Lang. and System, 1(1):74-88, ACM, 1992
  12. OenMP Architecture Review Board, OpenMP Fortran Application Program Interface, Version 2.0, Nov., 2000
  13. S. Park, M. Park, and Y. Jun, 'A Comparision of Scalable Labeling Schemes for Detecting Races in OpenMP Programs,' lnt'l Workshop on OpenMP Applications and Tools (Wompat), pp. 66-80, West lafayette, Indiana, July 2001
  14. Sue, U. H. and C. M. Pancake, 'Graphical Animation of Parallel Fortran Programs,' Supercomputing '91, pp. 491-500, ACM/EEE, Nov, 1991
  15. Y-K. Jun and K. Koh, 'On-the-fly Detection of Access Anomalies in Nested Parallel Loops,' Proc. ACM/ONR Workshop Parallel and Distributed Debugging, pp. 107-117, May 1993
  16. Zemik, D., M. Snir, and D, Malld, 'Using Visualization Tools to Understand Concurrency,' Software, 9(3): 87-92, IEEE, May 1992
  17. Mellor-Crummey, J., 'On-the-fly Detection of Data Races for Program with Nested Fork-Join Parallelism,' Supercomputing '91, pp. 24-33, ACM/IEEE, Nov. 1991