Skip to main content

Locality of Computation for Stencil Optimization

  • Conference paper
  • First Online:
Algorithms and Architectures for Parallel Processing (ICA3PP 2016)

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

Abstract

Stencil computation is a performance critical kernel that is widely used in scientific and engineering applications. In this paper we develop a redundant computation elimination (RCE) algorithm to exploit temporal locality. We implement the RCE optimization strategy using ROSE compiler infrastructure. The experiments with a benchmark of eleven stencil applications show that temporal locality of RCE averagely improves performance by 15.4% and 10.1% for benchmark without or with SIMD optimization.

G.Tan —We would like to express our gratitude to all reviewers constructive comments for helping us polishing this paper. This work is supported by The National Key Research and Development Program of China (2016YFB0201305), National Science and Technology Major Project (2013ZX0102-8001-001-001) and National Natural Science Foundation of China, under grant No. (91430218, 31327901, 61472395, 61272134, 61432018).

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 EPUB and 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

Similar content being viewed by others

References

  1. Briggs, P., Cooper, K.D., Simpson, L.T.: Value numbering. Softw.-Practice Exp. 27(6), 701–724 (1997)

    Article  Google Scholar 

  2. Callahan, D., Carr, S., Kennedy, K.: Improving register allocation for subscripted variables. In: ACM Sigplan Notices, vol. 25, pp. 53–65. ACM (1990)

    Google Scholar 

  3. Cooper, K., Eckhardt, J., Kennedy, K.: Redundancy elimination revisited. In: Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques, pp. 12–21. ACM (2008)

    Google Scholar 

  4. Datta, K., Yelick, K.A.: Auto-tuning stencil codes for cache-based multicore platforms. Ph.D. thesis, University of California, Berkeley (2009)

    Google Scholar 

  5. Denning, P.J.: The locality principle. Commun. ACM 48(7), 19–24 (2005)

    Article  Google Scholar 

  6. Denning, P.J., Schwartz, S.C.: Properties of the working-set model. Commun. ACM 15(3), 191–198 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  7. Ding, C., Zhong, Y.: Predicting whole-program locality through reuse distance analysis. In: ACM SIGPLAN Notices, vol. 38, pp. 245–257. ACM (2003)

    Google Scholar 

  8. Gupta, S., Xiang, P., Yang, Y., Zhou, H.: Locality principle revisited: a probability-based quantitative approach. J. Parallel Distrib. Comput. 73(7), 1011–1027 (2013)

    Article  Google Scholar 

  9. Himeno, R.: Himeno benchmark (2011)

    Google Scholar 

  10. Lam, M., Sethi, R., Ullman, J., Aho, A.: Compilers: Principles, Techniques, and Tools (2006)

    Google Scholar 

  11. Malony, A.D., Cuny, J., Tau, S.S.: Tuning and analysis utilities. Technical report, LALP-99-205, Los Alamos National Laboratory Publication (1999)

    Google Scholar 

  12. Peng, L., Seymour, R., Nomura, K.-I., Kalia, R.K., Nakano, A., Vashishta, P., Loddoch, A., Netzband, M., Volz, W.R., Wong, C.C.: High-order stencil computations on multicore clusters (2009)

    Google Scholar 

  13. Phillips, E.H., Fatica, M.: Implementing the Himeno benchmark with CUDA on GPU clusters. In: 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS), pp. 1–10. IEEE (2010)

    Google Scholar 

  14. Pouchet, L.-N.: Polybench: The polyhedral benchmark suite, July 2012. http://www.cs.ucla.edu/~pouchet/software/polybench/

  15. Quinlan, D., Liao, C., Too, J., Matzke, R., Schordan, M.: Rose compiler infrastructure (2013)

    Google Scholar 

  16. Sair, S., Charney, M.: Memory behavior of the spec2000 benchmark suite. IBM TJ Watson Research Center Technical Report (2000)

    Google Scholar 

  17. Unat, D., Cai, X., Baden, S.B.: Mint: realizing CUDA performance in 3D stencil methods with annotated C. In: Proceedings of the International Conference on Supercomputing, pp. 214–224. ACM (2011)

    Google Scholar 

  18. Zhang, Y., Mueller, F.: Autogeneration and autotuning of 3D stencil codes on homogeneous and heterogeneous GPU clusters. IEEE Trans. Parallel Distrib. Syst. 24(3), 417–427 (2013)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Guangming Tan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Yuan, L., Liu, J., Luo, Y., Tan, G. (2016). Locality of Computation for Stencil Optimization. In: Carretero, J., Garcia-Blas, J., Ko, R., Mueller, P., Nakano, K. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2016. Lecture Notes in Computer Science(), vol 10048. Springer, Cham. https://doi.org/10.1007/978-3-319-49583-5_34

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-49583-5_34

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-49582-8

  • Online ISBN: 978-3-319-49583-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics