Skip to main content

Multithreading runtime support for loop and functional parallelism

  • III System Software
  • Conference paper
  • First Online:
High Performance Computing (ISHPC 1999)

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

Included in the following conference series:

  • 117 Accesses

Abstract

This paper presents a multithreading runtime library that provides unified support for loop and functional parallelisms. It implements a queue-based dynamic load-balancing scheme to exploit arbitrarily nested or disjointed parallel constructs, while keeping its overhead competitive with simpler conventional libraries. The library also provides support for the recently adopted industry standard: OpenMP.

This work is supported in part by a grant from Intel Corporation, in part by DARPA under grant MDA 904-96-C-1472, and in part by ONR under grant N00014-94-1-0234.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J-H. Chow and L. Harrison. Microtasking recursive, parallel programs. In Proceedings of the International Conference on Parallel Processing, 1990.

    Google Scholar 

  2. Milind Girkar, Mohammad Haghighat, Paul Grey, Hideki Saito, Nicholas Stavrakos, and Constantine Polychronopoulos. Illinois-Intel Multithreading Library: Multithreading support for iA-based multiprocessor systems. Intel Technology Journal, 1998. 1st Quarter '98.

    Google Scholar 

  3. Milind Girkar and Constantine D. Polychronopoulos. Extraction of task-level parallelism. ACM transactions on Programming Languages and Systems, 17(4), 1995.

    Google Scholar 

  4. Jay Hoeflinger. Cedar Fortran Programmer's Manual. Technical Report 1157, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, Octobar 1991.

    Google Scholar 

  5. Intel Corporation. Intel Math Kernel Library Reference Manual. Intel MKL Release 2.0.

    Google Scholar 

  6. Kuck and Associates, Inc. Visual KAP for OpenMP User's Manual Version 3.5. Available at http://www.kai.com.

    Google Scholar 

  7. Kuck and Associates, Inc. Visual KAP User's Manual Version 3.0. Available at http://www.kai.com.

    Google Scholar 

  8. Jose E. Moreira. On the Implementation and Effectiveness of Autoscheduling for Shared-Memory Multiprocessors. PhD thesis, University of Illinois at Urbana-Champaign, 1995. Also available as CSRD Technical Report No. 1404.

    Google Scholar 

  9. OpenMP Architecture Review Board. OpenMP Fortran Application Program Interface Ver. 1.0, October 1997. Available from http://www.openmp.org.

    Google Scholar 

  10. Persistence of Vision Development Team. POV-Ray for Windows Ver 3.0. Available through http://www.povray.org, 1997.

    Google Scholar 

  11. E.D. Polychronopoulos. Scheduling Heuristics for Multiprocessors. PhD thesis, Laboratory for High-Performance Computing, University of Patras, 1997. in preparation.

    Google Scholar 

  12. Hideki Saito. Multithreading runtime support for loop and functional parallelism. Master's thesis, University of Illinois at Urbana-Champaign, 1998. Also available as CSRD Technical Report No. 1535.

    Google Scholar 

  13. Hideki Saito et al. IML home page. http://www.csrd.uiuc.edu/IML, December 1997.

    Google Scholar 

  14. Dale A. Schouten. Efficient Scheduling of Parallel Tasks in a Multiprogramming Environment. PhD thesis, University of Illinois at Urbana-Champaign, 1994. Also available as CSRD Technical Report No. 1428.

    Google Scholar 

  15. Silicon Graphics, Inc. MIPSpro Fortran 77 Programmer's Guide. Document Number 007-2361-006, Available at http://techpubs.sgi.com.

    Google Scholar 

  16. J. D. Valois. Lock-Free Data Strucutres. PhD thesis, Rensselaer Polytechnic Institute, 1995.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Constantine Polychronopoulos Kazuki Joe Akira Fukuda Shinji Tomita

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Saito, H., Stavrakos, N., Polychronopoulos, C. (1999). Multithreading runtime support for loop and functional parallelism. In: Polychronopoulos, C., Fukuda, K.J.A., Tomita, S. (eds) High Performance Computing. ISHPC 1999. Lecture Notes in Computer Science, vol 1615. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0094917

Download citation

  • DOI: https://doi.org/10.1007/BFb0094917

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65969-3

  • Online ISBN: 978-3-540-48821-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics