Skip to main content

Simple qualitative experiments with a sparse compiler

  • New Languages and New Compiler Techniques
  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1996)

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

  • 107 Accesses

Abstract

In this paper, we present some qualitative experiments that have been conducted with a sparse compiler. This compiler can automatically transform a program operating on two-dimensional arrays into semantically equivalent code that operates on sparse storage schemes. Automatic exploitation of sparsity to reduce the storage requirements and computational time of the original program substantially reduces the complexity of developing and maintaining the program and provides more opportunities for parallelization. The experiments indicate that, in many cases, a sparse compiler is capable of transforming a dense implementation of an algorithm into efficient sparse code.

Support was provided by the Foundation for Computer Science (SION) of the Dutch Organization for Scientific Research (NWO) and the EC Esprit Agency DG XIII under Grant No. APPARC 6634 BRA III.

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. Edward Anderson and Youcef Saad. Solving sparse triangular linear systems on parallel computers. International Journal of High Speed Computing, 1(6):73–95, 1989.

    Article  Google Scholar 

  2. Aart J.C. Bik. Compiler Support for Sparse Matrix Computations. PhD thesis, Department of Computer Science, Leiden University, 1996. ISBN 90-9009442-3.

    Google Scholar 

  3. Aart J.C. Bik and Harry A.G. Wijshoff. On automatic data structure selection and code generation for sparse computations. In Utpal Banerjee, David Gelernter, Alex Nicolau, and David Padua, editors, Lecture Notes in Computer Science, No. 768, pages 57–75. Springer-Verlag, 1994.

    Google Scholar 

  4. Aart J.C. Bik and Harry A.G. Wijshoff. Advanced compiler optimizations for sparse computations. Journal of Parallel and Distributed Computing, 31:14–24, 1995.

    Article  Google Scholar 

  5. Aart J.C. Bik and Harry A.G. Wijshoff. Automatic data structure selection and transformation for sparse matrix computations. IEEE Transactions on Parallel and Distributed Systems, 7(2):109–126, 1996.

    Article  Google Scholar 

  6. Aart J.C. Bik and Harry A.G. Wijshoff. Simple Quantitative experiments with a sparse compiler. In A. Ferreira, J. Rolim, Y.Saad, and T. Yang, editors, Lecture Notes in Computer Science, No. 1117, pages 249–262. Springer-Verlag, 1996.

    Google Scholar 

  7. Aart J.C. Bik and Harry A.G. Wijshoff. The use of iteration space partitioning to construct representative simple sections. Journal of Parallel and Distributed Computing, 34:95–110, 1996.

    Article  Google Scholar 

  8. Keith D. Cooper, Mary W. Hall, and Ken Kennedy. Procedure cloning. In Proceedings of the IEEE International Conference on Computer Languages, pages 96–105, 1992.

    Google Scholar 

  9. B. Dembart and K.W. Neves. Sparse triangular factorization on vector computers. In Exploring Applications of Parallel Processing, pages 22–25, 1977.

    Google Scholar 

  10. David S. Dodson, Roger G. Grimes, and John G. Lewis. Algorithm 692: Model implementation and test package for the sparse linear algebra subprograms. ACM Transactions on Mathematical Software, 17:264–272, 1991.

    Article  Google Scholar 

  11. David S. Dodson, Roger G. Grimes, and John G. Lewis. Sparse extensions to the Fortran basic linear algebra subprograms. ACM Transactions on Mathematical Software, 17:253–263, 1991.

    Article  Google Scholar 

  12. Iain S. Duff. The solution of sparse linear equations on the CRAY-1. In J.S. Kowalik, editor, High-Speed Computing, pages 293–309. Springer-Verlag, 1984. NATO ASI Series, Volume F7.

    Google Scholar 

  13. Iain S. Duff, A.M. Erisman, and J.K. Reid. Direct Methods for Sparse Matrices. Oxford Science Publications, Oxford, 1990.

    Google Scholar 

  14. Alan George and Joseph W.H. Liu. Computer Solution of Large Sparse Positive Definite Systems. Prentice-Hall, Englewood Cliffs, New York, 1981.

    Google Scholar 

  15. Fred G. Gustavson. Two fast algorithms for sparse matrices: Multiplication and permuted transposition. ACM Transactions on Mathematical Software, 4:250–269, 1978.

    Article  Google Scholar 

  16. John G. Lewis and Horst D. Simon. The impact of hardware gather/scatter on sparse Gaussian elimination. SIAM J. Sci. Stat. Comput., Volume 9:304–311, 1988.

    Article  Google Scholar 

  17. Sergio Pissanetsky. Sparse Matrix Technology. Academic Press, London, 1984.

    Google Scholar 

  18. Youcef Saad. Krylov subspace methods on supercomputers. SIAM J. Sci. Stat. Comput., 10:1200–1232, 1989.

    Article  Google Scholar 

  19. Youcef Saad. SPARSKIT: a basic tool kit for sparse matrix computations. CSRD/RIACS, 1990.

    Google Scholar 

  20. Youcef Saad and Harry A.G. Wijshoff. Spark: A benchmark package for sparse computations. In Proceedings of the International Conference on Supercomputing, pages 239–253, 1990.

    Google Scholar 

  21. Reginal P. Tewarson. Sparse Matrices. Academic Press, New York, 1973.

    Google Scholar 

  22. Zahari Zlatev. Computational Methods for General Sparse Matrices. Kluwer, Dordrecht, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

David Sehr Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bik, A.J.C., Wijshoff, H.A.G. (1997). Simple qualitative experiments with a sparse compiler. In: Sehr, D., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1996. Lecture Notes in Computer Science, vol 1239. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017270

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-69128-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics