Skip to main content

Exploiting Thread-Level Speculative Parallelism with Software Value Prediction

  • Conference paper
Book cover Advances in Computer Systems Architecture (ACSAC 2005)

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

Included in the following conference series:

Abstract

Software value prediction (SVP) is an effective and powerful compilation technique helping to expose thread-level speculative parallelism. With the help of value analysis and profiling, the compiler identifies critical and predictable variable values and generates speculatively parallelized programs with appropriate value prediction and misprediction recovery code. In this paper, we examine this technique in detail, describe a complete and versatile SVP framework and its detailed implementation in a thread-level speculative parallelization compiler, and present our evaluation results with Spec2000Int benchmarks. Our results not only confirm quantitatively that value prediction is essential to thread-level speculative parallelism; they also show that the corresponding value prediction can be achieved efficiently and effectively by software. We also present evaluation results of the overhead associated with software value prediction and the importance of different value predictors in speculative parallel loops in Spec2000Int benchmarks.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Calder, B., Reinman, G., Tullsen, D.: Selective Value Prediction. In: International Symposium on Computer Architecture (1999)

    Google Scholar 

  2. Du, Z.-H., Lim, C.-C., Li, X.-F., Yang, C., Zhao, Q., Ngai, T.-F.: A Cost-Driven Compilation Framework for Speculative Parallelization of Sequential Programs. In: Proceedings of the ACM SIGPLAN 2004 Conference on Programming Language Design and Implementation, Washington, D.C, June 9-11 (2004)

    Google Scholar 

  3. Fu, C., Jennings, M.D., Larin, S.Y., Conte, T.M.: Value Speculation Scheduling for High Performance Processors. In: 8th International Conference on Architectural Support for Programming Languages and Operating Systems (October 1998)

    Google Scholar 

  4. Fu, C., Jennings, M.D., Larin, S.Y., Conte, T.M.: Software-Only Value Speculation Scheduling. Technical Report, Dept. of Electrical and Computer Engineering, North Carolina State University, Raleigh, NC27695-7911 (June 1998)

    Google Scholar 

  5. Gabbay, F.: Speculative execution based on value prediction. Technical Report 1080, Department of Electrical Engineering, Technion-Israel Institute of Technology (1996)

    Google Scholar 

  6. Gonzalez, J., Gonzalez, A.: The Potential of Data Value Speculation to Boost ILP. In: International Conference on Supercomputing (1998)

    Google Scholar 

  7. Gabbay, F., Mendelson, A.: Can Program Profiling Support Value Prediction. In: International Symposium on Microarchitecture (1997)

    Google Scholar 

  8. Hu, S., Bhargava, R., John, L.K.: The role of Return Value Prediction in Exploiting Speculative Method-Level Parallelism. In: The First Value-Prediction Workshop, San Diego, CA (June 7, 2003)

    Google Scholar 

  9. Li, X.-F., Du, Z.-H., Yang, C., Lim, C.-C., Ngai, T.-F.: Speculative Parallel Threading Architecture and Compilation. In: 4th Workshop on Compile and Runtime Techniques for Parallel Computing, Oslo, Norway (June 2005)

    Google Scholar 

  10. Li, X.-F., Du, Z.-H., Zhao, Q., Ngai, T.-F.: Software value prediction for speculative parallel threaded computations. In: The First Value-Prediction Workshop, San Diego, CA (June 7, 2003)

    Google Scholar 

  11. Lipasti, M., Wilkerson, C., Shen, J.: Value Locality and Load Value Prediction. In: International Conference on Architectural Support for Programming Languages and Operating Systems (1996)

    Google Scholar 

  12. Larson, E., Austin, T.: Compiler Controlled Value Prediction Using Branch Predictor Based Confidence. In: ACM/IEEE 33rd International Symposium on Microarchitecture (MICRO-33) (December 2000)

    Google Scholar 

  13. Marcuello, P., Gonzalez, A.: A Quantitative Assessment of Thread-Level Speculation Techniques. In: Proc. of the 1st. Int. Parallel and Distributed Processing Symposium (IPDPS 2000), Mexico, May 1-4 (2000)

    Google Scholar 

  14. Marcuello, P., Tubella, J., Gonzalez, A.: Value Prediction for Speculative Multithreaded Processors. In: International Symposium on Microarchitecture (1999)

    Google Scholar 

  15. Nakra, T., Gupta, R., Soffa, M.L.: Global Context-Based Value Prediction. In: International Symposium on High-Performance Computer Architecture (1999)

    Google Scholar 

  16. Open Research Compiler, Intel Co. Ltd., http://ipf-orc.sourceforge.net/

  17. Steffan, J.G., Colohan, C.B., Zhai, A., Mowry, T.C.: A scalable approach to thread-level speculation. In: Proceedings of Intl Symp. On Computer Architecture, pp. 1–24 (2000)

    Google Scholar 

  18. Sazeides, Y., Smith, J.: The Predicatibility of Data Values. In: International Symposium on Microarchitecture (1997)

    Google Scholar 

  19. Sazeides, Y., Smith, J.: Modeling Program Predictability. In: International Symposium on Computer Architecture (1998)

    Google Scholar 

  20. Thomas, R., Franklin, M.: Using Dataflow Based Context for Accurate Value Prediction. In: Proc. International Conference on Parallel Architectures and Compilation Techniques, PACT (2001)

    Google Scholar 

  21. Wang, K., Franklin, M.: Highly Accurate Data Value Prediction using Hybrid Predictors. In: International Symposium on Microarchitecture (1997)

    Google Scholar 

  22. Zhai, A., Colohan, C.B., Steffan, J.G., Mowry, T.C.: Compiler Optimization of Scalar Value Communication Between Speculative Threads. In: The Tenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-X), San Jose, CA, USA, October 7-9 (2002)

    Google Scholar 

  23. Steffan, J.G., Colohan, C.B., Zhai, A., Mowry, C.: Improving Value Communication for Thread-Level Speculation. In: The Eighth International Symposium on High-Performance Computer Architecture (HPCA 2002), Boston, MA, USA, Febraury (2002)

    Google Scholar 

  24. Cintra, M., Torrellas, J.: Eliminating Squashes Through Learning Cross-Thread Violations in Speculative Parallelization for Multiprocessors. In: The Eighth International Symposium on High-Performance Computer Architecture (HPCA 2002), Boston, MA, USA (February 2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Li, XF., Yang, C., Du, ZH., Ngai, Tf. (2005). Exploiting Thread-Level Speculative Parallelism with Software Value Prediction. In: Srikanthan, T., Xue, J., Chang, CH. (eds) Advances in Computer Systems Architecture. ACSAC 2005. Lecture Notes in Computer Science, vol 3740. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11572961_29

Download citation

  • DOI: https://doi.org/10.1007/11572961_29

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-29643-0

  • Online ISBN: 978-3-540-32108-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics