Abstract
Increasing the instruction level parallelism (ILP) is one of the key issues to boost the performance of future generation processors. Current processor organizations include different mechanisms to overcome the limitations imposed by name and control dependencies but no mechanisms targeting to data dependencies. Thus, these dependencies will become one of the main bottlenecks in the future. Data value speculation is gaining popularity as a mechanism to overcome the limitations imposed by data dependencies by predicting the values that flow through them. In this work, we present a study of the potential of data value speculation to boost the limits of instruction level parallelism using both perfect and realistic predictors. Speedups obtained by data value speculation are very huge for an infinite window and still significant for a limited window. Different prediction schemes oriented to single thread and multiple threads (from a single program) architectures have been studied. The latter shows a significant improvement respect to the former for FP benchmarks although the difference is much smaller for integer programs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Austin, T.M., Sohi, G.S.: Dynamic Dependency Analysis of Ordinary Programs. In: Proc. of Int. Symp. on Computer Architecture, pp. 342–351 (1992)
Butle, M., Yeh, T.Y., Patt, Y., Alsup, M., Scales, H., Shebanowr, M.: Single Instruction Stream Parallelism is Greater than Two. In: Proc. of Int. Symp. on Computer Architecture, pp. 276–286 (1991)
Franklin, M., Sohi, G.S.: ARB: A Hardware Mechanism for Dynamic Reordering of Memory References. IEEE Transactions on Computer 45(6), 552–571 (1996)
Gweunnap, L.: Digital 21264 Sets New Standard. Microprocessor Report 9(3) (March 1995)
Hennessy, J.L., Patterson, D.A.: Computer Architecture. A Quantitative Approach, 2nd edn. Morgan Kaufmann Publishers, San Francisco (1996)
Jouppi, N.P., Wall, D.W.: Available Instruction-Level Parallelism for Superscalar and Superpipelined Machines. In: Proc. of the ACM Conf. on Architectural Support for Programming Languages and Operating Systems (1989)
Gabbay, F., Mendelson, A.: Speculative Execution Based on Value Prediction. Technical Report, Technion (1997)
Gonzalez, J., Gonzalez, A.: Speculative Execution via Address Prediction and Data Prefetching. In: Proc. of the International Symposium on Supercomputing (ICS), pp. 196–203 (1997)
Gonzalez, J., Gonzalez, A.: Memory Address Prediction for Data Speculation. In: proceedings of the Europar Conference (1997)
Lam, M.S., Wilson, R.P.: Limits on Control Flow on Parallelism. In: Proc. of Int. Symp. on Computer Architecture, pp. 46–57 (1992)
Lipasti, M.H., Shen, J.P.: Exceeding the Dataflow Limit via Value Prediction. In: Proc. of Int. Symp. on Microarchitecture (1996)
Lipasti, M.H., Wilkerson, C.B., Shen, J.P.: Value Locality and Load Value Prediction. In: Proc. of the ACM Conf. on Architectural Support for Programming Languages and Operating Systems (1996)
Marcuello, P., Gonzalez, A., Tubella, J.: Speculative Multithreaded Processors. In: Proc. of the International Symposium on Supercomputing, ICS (1998)
Sazeides, Y., Vassiliadis, S., Smith, J.E.: The Performance Potential of Data Dependence Speculation & Collapsing. In: Proc. of Int. Symp. on Microarchitecture (1996)
Sazeides, Y., Smith, J.E.: The Predictability of Data Values. In: Proc. of Int. Symp. On Microarchitecture, pp. 248–258 (1997)
Smith, M.D., Johnson, M., Horowitz, M.A.: Limits on Multiple Instruction Issue. In: Proc. of the ACM Conf. on Architectural Support for Programming Languages and Operating Systems (1989)
Smith, J.E., Pleszkun, A.R.: Implementing Precise Interrupts in Pipelined Processors. IEEE Transaction on Computers 37(5), 562–573 (1988)
Sohi, G., Breach, S., Vijaykumar, T.: Multiscalar Processors. In: Proc. of Int. Symp. On Computer Architecture, pp. 414–425 (1995)
Srivastava, A., Eustace, A.: ATOM: A system for building customized program analysis tools. In: Proc of the 1994 Conf. on Programming Languages Design and Implementation (1994)
Theobald, K.B., Gao, G.R., Hendren, L.J.: On the Limits of Program Parallelism and its Smoothability. In: Proc. of Int. Symp. on Microarchitecture, pp. 10–19 (1992)
Wall, D.W.: Limits of Instruction-Level Parallelism. Technical Report WRL 93/6 Digital Western Research Laboratory (1993)
Wang, K., Franklin, M.: Highly Accurate Data Value Prediction using Hybrid Predictors. In: Proc. of Int. Symp. on Microarchitecture, pp. 281–290 (1997)
Yeager, K.C.: The MIPS R10000 Superscalar Microprocessor. IEEE Micro 16(2), 28–40 (1996)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
González, J., González, A. (1999). Limits of Instruction Level Parallelism with Data Value Speculation. In: Hernández, V., Palma, J.M.L.M., Dongarra, J.J. (eds) Vector and Parallel Processing – VECPAR’98. VECPAR 1998. Lecture Notes in Computer Science, vol 1573. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10703040_34
Download citation
DOI: https://doi.org/10.1007/10703040_34
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66228-0
Online ISBN: 978-3-540-48516-2
eBook Packages: Springer Book Archive