Skip to main content

Automatic Scoping of Variables in Parallel Regions of an OpenMP Program

  • Conference paper
Book cover Shared Memory Parallel Programming with Open MP (WOMPAT 2004)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3349))

Included in the following conference series:

Abstract

The process of manually specifying scopes of variables when writing an OpenMP program is both tedious and error-prone. To improve productivity, an autoscoping feature was proposed in [1]. This feature leverages the analysis capability of a compiler to determine the appropriate scopes of variables. In this paper, we present the proposed autoscoping rules and describe the autoscoping feature provided in the Sun StudioTM 9 Fortran 95 compiler. To investigate how much work can be saved by using autoscoping and the performance impact of this feature, we study the process of parallelizing PANTA, a 50,000-line 3D Navier-Stokes solver, using OpenMP. With pure manual scoping, a total of 1389 variables have to be explicitly privatized by the programmer. With the help of autoscoping, only 13 variables have to be manually scoped. Both versions of PANTA achieve the same performance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. http://www.compunity.org , see section New Ideas for OpenMP with a link to http://support.rz.rwth-aachen.de/public/AutoScoping.pdf

  2. an Mey, D., Schmidt, S.: From a Vector Computer to an SMP-Cluster - Hybrid Parallelization of the CFD Code PANTA. In: 2nd European Workshop on OpenMP, Edinburgh (2000)

    Google Scholar 

  3. Institute for Jet Propulsion and Turbomachinery, RWTH Aachen University, http://www.ist.rwth-aachen.de [/en/forschung/instationaere_li.html]

  4. Volmar, T., Brouillet, B., Gallus, H.E., Benetschik, H.: Time Accurate 3D Navier-Stokes Analysis of a 11/2 Stage Axial Flow Turbine, AIAA 98-3247, 1998.

    Google Scholar 

  5. Zima, H., Chapman, B.: Supercompilers for Parallel and Vector Computers. ACM Press, New York (1991)

    Google Scholar 

  6. Wolfe, M.J.: Optimizing Supercompilers for Supercomputers, Ph. D. Thesis, Department of Computer Science, University of Illinois at Urbana-Champaign (1982)

    Google Scholar 

  7. Banerjee, U., Eigenmann, R., Nicolau, A., Padua, D.A.: Automatic program parallelization. Proceedings of the IEEE 81(2) (February 1993)

    Google Scholar 

  8. Blume, W., Doallo, R., Eigenmann, R., Grout, J., Hoeflinger, J., Lawrence, T., Lee, J., Padua, D., Paek, Y., Pottenger, W., Rauchwerger, L., Tu, P.: Parallel Programming with Polaris. IEEE Computer 29(12), 78–82 (1996)

    Google Scholar 

  9. Hall, M.W., Anderson, J.M., Amarasinghe, S.P., Murphy, B.R., Liao, S.-W., Bugnion, E., Lam, M.S.: Maximizing Multiprocessor Performance with the SUIF Compiler. IEEE Computer (December 1996)

    Google Scholar 

  10. Polychronopoulos, C., Girkar, M.B., Haghighat, M.R., Lee, C.L., Leung, B.P., Schouten, D.A.: Parafrase-2: An Environment for Parallelizing, Partitioning, Synchronizing, and Scheduling Programs on Multiprocessors. In: Proceedings of the International Conference on Parallel Processing, St. Charles IL, August 1989, vol. II, pp. 39–48 (1989)

    Google Scholar 

  11. Fortran 77 Programmer’s Guide, document number: 007-0711-060, Silicon Graphics, Inc. (1994)

    Google Scholar 

  12. CF90TM Commands and Directives Reference Manual – S-3901-35, Cray Inc.

    Google Scholar 

  13. Sun Studio 8: Program Performance Analysis Tools, Sun Microsystems, Inc., http://docs.com/db/doc/817-5068

  14. Voss, M., Chiu, E., Chow, P., Wong, C., Yuen, K.: An Evaluation of Auto-Scoping in OpenMP. In: Chapman, B.M. (ed.) WOMPAT 2004. LNCS, vol. 3349, Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  15. Jin, H., Frumkin, M., Yan, J.: Automatic Generation of OpenMP Directives and Its Application to Computational Fluid Dynamic Codes. In: WOMPEI 2000: International Workshop on OpenMP: Experiences and Implementations, Tokyo, Japan (2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lin, Y., Terboven, C., Mey, D.a., Copty, N. (2005). Automatic Scoping of Variables in Parallel Regions of an OpenMP Program. In: Chapman, B.M. (eds) Shared Memory Parallel Programming with Open MP. WOMPAT 2004. Lecture Notes in Computer Science, vol 3349. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31832-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-31832-3_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-24560-5

  • Online ISBN: 978-3-540-31832-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics