Skip to main content

Performance Oriented Programming for NUMA Architechtures

  • Conference paper
  • First Online:
OpenMP Shared Memory Parallel Programming (WOMPAT 2001)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2104))

Included in the following conference series:

Abstract

OpenMP is emerging as a viable high-level programming model for shared memory parallel systems. Although it has also been implemented on ccNUMA architectures, it is hard to obtain high performance on such systems, particularly when large numbers of threads are involved. Moreover, it is applicable to NUMA machines only if a software DSM system is present. In this paper, we discuss various ways in which OpenMP may be used on ccNUMA and NUMA architectures, and evaluate several programming styles on the SGI Origin 2000, and on TreadMarks, a Software Distributed Shared Memory System from Rice University. These results have encouraged us to begin work on a compiler that accepts an extended OpenMP and translates such code to an equivalent version that provides superior performance on both of these platforms.

This work was partially supported by NASA Ames Research Center under contract number ****, and by NSF under grant number NSF ACI 99-82160. Initial experi- ments were performed while the authors were in residence at ICASE, NASA Langley Research Center. These sources of support are gratefully acknowledged.

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. C. Amza, A. Cox, and et al. Treadmarks: Shared memory computing on networks of workstations. IEEE Computer, 29(2):18–28, February 1996.

    Google Scholar 

  2. J. Bennett, J. Carter, and W. Zwaenepoel. Munin: Shared memory for distributed memory multiprocessors, 1989.

    Google Scholar 

  3. J. Bennett, J. Carter, and W. Zwaenepoel. Munin: Distributed shared memory using multiprotocol release consistency, 1991.

    Google Scholar 

  4. J. Bircsak, P. Craig, R. Crowell, Z. Cvetanovic, J. Harris, C.A. Nelson, and C.D. Offner. Extending OpenMP for NUMA Machines. In SC2000, Supercomputing, Dallas, Texas, USA, November 2000.

    Google Scholar 

  5. OpenMP Architecture Review Board. OpenMP Fortran Application Program Interface, Version 2.0, November 2000.

    Google Scholar 

  6. F. Cappello and D. Etiemble. MPI versus MPI+OpenMP on IBM SP for the NAS Benchmarks. In SC2000, Supercomputing, Dallas, Texas, USA, November 2000.

    Google Scholar 

  7. Silicon Graphics Inc. MIPSPro Fortran 90 Commands and Directives Reference Manual. Document number 007-3696-003. Search keyword MIPSPro Fortran 90 on http://techpubs.sgi.com/library

  8. P. Keleher, A. Cox, and W. Zwaenepoel. Lazy release consistency for software distributed shared memory. In 19th Annual International Symposium on Computer Architecture, pages 12–21, May 1992.

    Google Scholar 

  9. J. Laudon and D. Lenoski. The SGI Origin ccNUMA Highly Scalable Server. SGI Publishe White Paper, March 1997.

    Google Scholar 

  10. P. Kloos and F. Mathey and P. Blaise. OpenMP and MPI programming with a CG algorithm. In EWOMP 2000, European Workshop on OpenMP, Edimburgh, Scotland, U.K., September 2000.

    Google Scholar 

  11. R. Blikberg and T. Sorevik. Early experiences with OpenMP on the Origin 2000. In Proc. European Cray MPP meeting, Munich, September 1998.

    Google Scholar 

  12. Concurrent Programming with TreadMarks. TreadMarks users Manual. http://www.cs.rice.edu/ willy/papers/doc.ps.gz

  13. M. Sato, H. Harada, and Y. Ishikawa. OpenMP compiler for a Software Distributed Shared Memory System SCASH. In WOMPAT 2000, San Diego, July 2000.

    Google Scholar 

  14. L.A. Smith and J.M. Bull. Development of Mixed Mode MPI/OpenMP Applications. In WOMPAT 2000, San Diego, July 2000.

    Google Scholar 

  15. A.J. Wallcraft. SPMD OpenMP vs MPI for Ocean Models. In First European Workshop on OpenMP — EWOMP’99, Lund University, Lund, Sweden, 1999.

    Google Scholar 

  16. X. He and L.-S. Luo. Theory of the Lattice Boltzmann Method: From the Boltzmann Equation to the Lattice Boltzmann Equation. In Phys. Rev. Lett. E, 56(6), 6811, 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chapman, B., Patil, A., Prabhakar, A. (2001). Performance Oriented Programming for NUMA Architechtures. In: Eigenmann, R., Voss, M.J. (eds) OpenMP Shared Memory Parallel Programming. WOMPAT 2001. Lecture Notes in Computer Science, vol 2104. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44587-0_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-44587-0_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42346-1

  • Online ISBN: 978-3-540-44587-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics