Skip to main content

On the Automatic Parallelization of Sparse and Irregular Fortran Programs

  • Conference paper
  • First Online:

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

Abstract

Automatic parallelization is usually believed to be less effective at exploiting implicit parallelism in sparse/irregular programs than in their dense/regular counterparts. However, not much is really known because there have been few research reports on this topic. In this work, we have studied the possibility of using an automatic parallelizing compiler to detect the parallelism in sparse/irregular programs. The study with a collection of sparse/irregular programs led us to some common loop patterns. Based on these patterns three new techniques were derived that produced good speedups when manually applied to our benchmark codes. More importantly, these parallelization methods can be implemented in a parallelizing compiler and can be applied automatically.

This work is supported in part by Army contract DABT63-95-C-0097; Army contract N66001-97-C-8532; NSF contract MIP-9619351; and a Partnership Award from IBM. This work is not necessarily representative of the positions or policies of the Army or Government.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Rafael Asenjo, Eladio Gutierrez, Yuan Lin, David Padua, Bill Pottenger, and Emilio Zapata. On the Automatic Parallelization of Sparse and Irregular Fortran Codes. Technical Export 1512, Univ. of Illinois at Urbana-Champaign, CSRD, Dec 1996

    Google Scholar 

  2. William Elume, Ramon Doallo, Rudolf Eigenmann, John Grout, Jay Hoeflinger, Thomas Lawrence, Jaejin Lee, David Padua, Yunheung Paek, Bill Pottenger, Lawrence Rauchwerger, and Peng Tu. Parallel Programming with Polaris. IEEE Computer, 29(12):78–82, December 1996.

    Google Scholar 

  3. Christoph W. Ke\ler, Applicability of Program Comprehension to Sparse Matrix Computations, In PROC of 3rd EUROPAR, Passau, German, August, 1997

    Google Scholar 

  4. Aart J. C. Bik and Hairy A. G. Wijshoff, Automatic Data Structure Selection and Transformation for sparse Matrix Computations. IEEE Trans. on Parallel and Distributed Systems, Volume 7, pages 109–126, Feb. 1996

    Google Scholar 

  5. Ian Foster, Rob Schreiber, and Paul Havlak. HPF-2 Scope of Activities and Motivating Applications. Technical Report CRPC-TR94492, Rice University, November, 1994

    Google Scholar 

  6. Harwell-Boeing Sparse Matrix Collection (Release I), Matrix Market, http://http://math.nist.gov/MatriaxMarket/collections/hb.html

  7. Vladimir Kotlyar, Keshav Pingali, and Paul Stodghill. Compiling Parallel Code for Sparse Matrix Applications. In Superrcomputing, November 1997

    Google Scholar 

  8. Zhiyuan Li, Array privatization of parallel execution of loops, In Proc. of ICS’92, pages 313–322, 1992

    Google Scholar 

  9. Sergio Pissanetzky, Sparse Matrix Technology, Academic Press, 1984, ISBN 0-12-557580-7

    Google Scholar 

  10. Bill Pottenger and Rudolf Eagenmann. Idiom Recognition in the Polaris Parallelizing Compiler. Proceedings of the 9th ACM International Conference on Supercomputing, Barcelona, Spain, pages 444–448, July 1995

    Google Scholar 

  11. Bill Pottenger, Theory, techniques, and experiments in solving recurrences in computer programs. PhD Thesis. University of Illinois at Urbana-Champaign, IL, 1997

    Google Scholar 

  12. Lawrence Rauchwerger, Run-time parallelization: a framework for parallel computation. PhD Thesis. University of Illinois at Urbana-Champaign, IL, 1995

    Google Scholar 

  13. Peng Tu and David Padua. Automatic Array Privatization. In Proc. Sixth Workshop on Languages and Compilers for Parallel Computing, Portland, OR. Lecture Notes in Computer Science, volume 768, pages 500–521, August 12–14, 1993.

    Google Scholar 

  14. Ye Zhang, Lawrence Rauchwerger, and Josep Torrellas. Hardware for Speculative Run-Time Parallelization in Distributed Shared-Memory Multiprocessors. In Proc. of the 4th International Symposium on Hight-Performance Computer Architecture, 1998

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lin, Y., Padua, D. (1998). On the Automatic Parallelization of Sparse and Irregular Fortran Programs. In: O’Hallaron, D.R. (eds) Languages, Compilers, and Run-Time Systems for Scalable Computers. LCR 1998. Lecture Notes in Computer Science, vol 1511. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49530-4_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-49530-4_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65172-7

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics