[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1054943.1054951acmotherconferencesArticle/Chapter ViewAbstractPublication PageswmpiConference Proceedingsconference-collections
Article

Understanding the effects of wrong-path memory references on processor performance

Published: 20 June 2004 Publication History

Abstract

High-performance out-of-order processors spend a significant portion of their execution time on the incorrect program path even though they employ aggressive branch prediction algorithms. Although memory references generated on the wrong path do not change the architectural state of the processor, they can affect the arrangement of data in the memory hierarchy. This paper examines the effects of wrong-path memory references on processor performance. It is shown that these references significantly affect the IPC (Instructions Per Cycle) performance of a processor. Not modeling them can lead to errors of up to 10% in IPC estimates for the SPEC2000 integer benchmarks; 7 out of 12 benchmarks experience an error of greater than 2% in IPC estimates. In general, the error in the IPC increases with increasing memory latency and instruction window size.We find that wrong-path references are usually beneficial for performance, because they prefetch data that will be used by later correct-path references. L2 cache pollution is found to be the most significant negative effect of wrong-path references. Code examples are shown to provide insights into how wrong-path references affect performance.

References

[1]
R. I. Bahar and G. Albera. Performance analysis of wrong-path data cache accesses. In Workshop on Performance Analysis and its Impact on Design, 25th Annual Intl. Symposium on Computer Architecture, 1998.
[2]
R. Bhargava, L. K. John, and F. Matus. Accurately modeling speculative instruction fetching in trace-driven simulation. In Proceedings of the IEEE Performance, Computers and Communications Conference, pages 65--71, 1999.
[3]
M. G. Butler. Aggressive Execution Engines for Surpassing Single Basic Block Execution. PhD thesis, University of Michigan, 1993.
[4]
P.-Y. Chang, E. Hao, and Y. N. Patt. Predicting indirect jumps using a target cache. In Proceedings of the 24th Annual International Symposium on Computer Architecture, pages 274--283, 1997.
[5]
S. McFarling. Combining branch predictors. Technical Report TN-36, Digital Western Research Laboratory, June 1993.
[6]
M. Moudgill, J.-D. Wellman, and J. H. Moreno. An approach for quantifying the impact of not simulating mispredicted paths. In Workshop on Performance Analysis and Its Impact in Design Workshop, 25th Annual Intl. Symposium on Computer Architecture, June 1998.
[7]
J. Pierce and T. Mudge. The effect of speculative execution on cache performance. In Proceedings of the Intl. Parallel Processing Symposium, pages 172--179, 1994.
[8]
J. Pierce and T. Mudge. Wrong-path instruction prefetching. In Proceedings of the 29th Annual ACM/IEEE International Symposium on Microarchitecture, pages 165--175, 1996.
[9]
T.-Y. Yeh and Y. N. Patt. Alternative implementations of two-level adaptive branch prediction. In Proceedings of the 19th Annual International Symposium on Computer Architecture, pages 124--134, 1992.

Cited By

View all
  • (2024)Wrong-Path-Aware Entangling Instruction PrefetcherIEEE Transactions on Computers10.1109/TC.2023.333730873:2(548-559)Online publication date: Feb-2024
  • (2023)SpecBox: A Label-Based Transparent Speculation Scheme Against Transient Execution AttacksIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2022.314428720:1(827-840)Online publication date: 1-Jan-2023
  • (2015)Filtered runahead execution with a runahead bufferProceedings of the 48th International Symposium on Microarchitecture10.1145/2830772.2830812(358-369)Online publication date: 5-Dec-2015
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
WMPI '04: Proceedings of the 3rd workshop on Memory performance issues: in conjunction with the 31st international symposium on computer architecture
June 2004
146 pages
ISBN:159593040X
DOI:10.1145/1054943
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 June 2004

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. cache pollution
  2. data prefetching
  3. execution-driven simulation
  4. processor performance analysis
  5. speculative execution
  6. wrong path modeling
  7. wrong-path memory references

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)10
  • Downloads (Last 6 weeks)2
Reflects downloads up to 21 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Wrong-Path-Aware Entangling Instruction PrefetcherIEEE Transactions on Computers10.1109/TC.2023.333730873:2(548-559)Online publication date: Feb-2024
  • (2023)SpecBox: A Label-Based Transparent Speculation Scheme Against Transient Execution AttacksIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2022.314428720:1(827-840)Online publication date: 1-Jan-2023
  • (2015)Filtered runahead execution with a runahead bufferProceedings of the 48th International Symposium on Microarchitecture10.1145/2830772.2830812(358-369)Online publication date: 5-Dec-2015
  • (2015)BADCOInternational Journal of Parallel Programming10.1007/s10766-013-0278-143:1(130-157)Online publication date: 1-Feb-2015
  • (2010)Computer Architecture Performance Evaluation MethodsSynthesis Lectures on Computer Architecture10.2200/S00273ED1V01Y201006CAC0105:1(1-145)Online publication date: 22-Dec-2010
  • (2010)Models for generating locality-tuned traveling threads for a hierarchical multi-level heterogeneous multicoreProceedings of the 7th ACM international conference on Computing frontiers10.1145/1787275.1787329(227-236)Online publication date: 17-May-2010
  • (2008)Sampled Processor Simulation: A SurveyAdvances in COMPUTERS - High Performance Computing10.1016/S0065-2458(08)00004-1(173-224)Online publication date: 2008
  • (2007)The impact of wrong-path memory references in cache-coherent multiprocessor systemsJournal of Parallel and Distributed Computing10.1016/j.jpdc.2007.03.00567:12(1256-1269)Online publication date: 1-Dec-2007
  • (2006)Quantifying and reducing the effects of wrong-path memory references in cache-coherent multiprocessor systemsProceedings of the 20th international conference on Parallel and distributed processing10.5555/1898953.1898957(21-21)Online publication date: 25-Apr-2006
  • (2006)Friendly fire: understanding the effects of multiprocessor prefetches2006 IEEE International Symposium on Performance Analysis of Systems and Software10.1109/ISPASS.2006.1620802(177-188)Online publication date: 2006
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media