Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us
Search
Cart
Book cover

European Conference on Parallel Processing

Euro-Par 2011: Euro-Par 2011: Parallel Processing Workshops pp 367–376Cite as

  1. Home
  2. Euro-Par 2011: Parallel Processing Workshops
  3. Conference paper
Design Patterns for Scientific Computations on Sparse Matrices

Design Patterns for Scientific Computations on Sparse Matrices

  • Davide Barbieri30,
  • Valeria Cardellini30,
  • Salvatore Filippone30 &
  • …
  • Damian Rouson31 
  • Conference paper
  • 1526 Accesses

  • 5 Citations

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

Abstract

We discuss object-oriented software design patterns in the context of scientific computations on sparse matrices. Design patterns arise when multiple independent development efforts produce very similar designs, yielding an evolutionary convergence onto a good solution: a flexible, maintainable, high-performance design. We demonstrate how to engender these traits by implementing an interface for sparse matrix computations on NVIDIA GPUs starting from an existing sparse matrix library. We also present initial performance results.

Keywords

  • Design Pattern
  • Sparse Matrix
  • Storage Format
  • Sparse Matrice
  • Dynamic Type

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Download conference paper PDF

References

  1. Balay, S., Gropp, W., McInnes, L.C., Smith, B.: PETSc 2.0 user manual. Tech. Rep. ANL-95/11 - Revision 2.0.22, Argonne National Laboratory (1995)

    Google Scholar 

  2. Barbieri, D., Cardellini, V., Filippone, S.: Generalized GEMM applications on GPGPUs: Experiments and applications. In: ParCo 2009. IOS Press (2009)

    Google Scholar 

  3. Barrachina, S., Castillo, M., Igual, F.D., Mayo, R., Quintana-Ortí, E.S., Quintana-Ortí, G.: Exploiting the capabilities of modern gpus for dense matrix computations. Concurr. Comput.: Pract. Exper. 21, 2457–2477 (2009)

    CrossRef  Google Scholar 

  4. Baskaran, M.M., Bordawekar, R.: Optimizing sparse matrix-vector multiplication on GPUs. Tech. Rep. RC24704, IBM Research (April 2009)

    Google Scholar 

  5. Bell, N., Garland, M.: Implementing sparse matrix-vector multiplication on throughput-oriented processors. In: Supercomputing 2009. ACM (2009)

    Google Scholar 

  6. Choi, J.W., Singh, A., Vuduc, R.W.: Model-driven autotuning of sparse matrix-vector multiply on GPUs. SIGPLAN Not. 45, 115–126 (2010)

    CrossRef  Google Scholar 

  7. D’Ambra, P., di Serafino, D., Filippone, S.: MLD2P4: a package of parallel algebraic multilevel domain decomposition preconditioners in Fortran 95. ACM Trans. Math. Softw. 37(3) (2010)

    Google Scholar 

  8. Filippone, S., Colajanni, M.: PSBLAS: a library for parallel linear algebra computations on sparse matrices. ACM Trans. on Math Software 26, 527–550 (2000)

    CrossRef  Google Scholar 

  9. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1995)

    Google Scholar 

  10. Gardner, H., Manduchi, G.: Design Patterns for e-Science. Springer (2007)

    Google Scholar 

  11. Heroux, M.A., Bartlett, R.A., Howle, V.E., Hoekstra, R.J., Hu, J.J., Kolda, T.G., Lehoucq, R.B., Long, K.R., Pawlowski, R.P., Phipps, E.T., Salinger, A.G., Thornquist, H.K., Tuminaro, R.S., Willenbring, J.M., Williams, A., Stanley, K.S.: An overview of the Trilinos project. ACM Trans. Math. Softw. 31(3), 397–423 (2005)

    CrossRef  MathSciNet  MATH  Google Scholar 

  12. Lindholm, E., Nickolls, J., Oberman, S., Montrym, J.: NVIDIA Tesla: a unified graphics and computing architecture. IEEE Micro. 28, 39–55 (2008)

    CrossRef  Google Scholar 

  13. NVIDIA Corp.: CUDA CUSPARSE library version 4.0 (2011)

    Google Scholar 

  14. Rouson, D.W.I., Xia, J., Xu, X.: Scientific Software Design: The Object-Oriented Way. Cambridge University Press (2011)

    Google Scholar 

  15. Vazquez, F., Ortega, G., Fernández, J.J., Garzon, E.M.: Improving the performance of the sparse matrix vector product with GPUs. In: CIT 2010, pp. 1146–1151 (2010)

    Google Scholar 

  16. Volkov, V., Demmel, J.W.: Benchmarking GPUs to tune dense linear algebra. In: Supercomputing 2008 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. University of Rome “Tor Vergata”, Italy

    Davide Barbieri, Valeria Cardellini & Salvatore Filippone

  2. Sandia National Laboratories, Albuquerque, NM, 87185, USA

    Damian Rouson

Authors
  1. Davide Barbieri
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Valeria Cardellini
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Salvatore Filippone
    View author publications

    You can also search for this author in PubMed Google Scholar

  4. Damian Rouson
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Editors and Affiliations

  1. Scilytics, Koellnerhofgasse 3/15A, 1010, Vienna, Austria

    Michael Alexander

  2. ICAR-CNR, Via P. Castellino, 111, 80131, Napoli, Italy

    Pasqua D’Ambra

  3. University of Amsterdam, 1090, Amsterdam, Netherlands

    Adam Belloum

  4. Innovative Computing Laboratory, The University of Tennessee, USA

    George Bosilca

  5. Department of Experimental Medicine and Clinic, University Magna Græcia, 88100, Catanzaro, Italy

    Mario Cannataro

  6. Computer Science Department, University of Pisa, Italy

    Marco Danelutto

  7. Second University of Naples, Italy

    Beniamino Di Martino

  8. TU München, Boltzmannstr. 3, 85748, Garching, Germany

    Michael Gerndt

  9. Equipe Runtime, INRIA Bordeaux Sud-Ouest, 33405, Talence Cedex, France

    Emmanuel Jeannot & Raymond Namyst & 

  10. Equipe HIEPACS, INRIA Bordeaux Sud-Ouest, 33405, Talence Cedex, France

    Jean Roman

  11. Oak Ridge National Laboratory, Computer Science and Mathematics Division, 37831-6164, Oak Ridge, TN, USA

    Stephen L. Scott

  12. Department of Scientific Computing, University of Vienna, Nordbergstr. 15/3C, 1090, Vienna, Austrial

    Jesper Larsson Traff

  13. Computer Science and Mathematics Division, Oak Ridge National Laboratory, 37831, Oak Ridge, TN, USA

    Geoffroy Vallée

  14. Technische Universität München, Germany

    Josef Weidendorfer

Rights and permissions

Reprints and Permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Barbieri, D., Cardellini, V., Filippone, S., Rouson, D. (2012). Design Patterns for Scientific Computations on Sparse Matrices. In: Alexander, M., et al. Euro-Par 2011: Parallel Processing Workshops. Euro-Par 2011. Lecture Notes in Computer Science, vol 7155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29737-3_41

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-642-29737-3_41

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-29736-6

  • Online ISBN: 978-3-642-29737-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Search

Navigation

  • Find a journal
  • Publish with us

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature