Enabling Branch-Mispredict Level Parallelism by Selectively Flushing Instructions
Stijn Eyerman, Wim Heirman, Sam Van den Steen, Ibrahim Hur
摘要
Conventionally, branch mispredictions are resolved by flushing wrongly speculated instructions from the reorder buffer and refetching instructions along the correct path. However, a large part of the misspeculated instructions could have reconverged with the correct path and executed correctly. Yet, they are flushed to ensure in-order commit. This inefficiency has been recognized in prior work, which proposes either complex additions to a core to reuse the correctly executed instructions, or less intrusive solutions that only reuse part of the converged instructions.
We propose a hardware-software cooperative mechanism to recover correctly executed instructions, avoiding the need to refetch and re-execute them. It combines relatively limited additions to the core architecture with a high reuse of reconverged instructions. Adding the software hints to enable our mechanism is a similar effort as parallelizing an application, which is already necessary to extract high performance from current multicore processors. We evaluate the technique on emerging graph applications and sorting, applications that are known to perform poorly on conventional CPUs, and report an average 29% increase in performance.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper2
- Extended User Interrupts (xUI): Fast and Flexible Notification without PollingBerk Aydogmus, Linsong Guo, Danial Zuberi, Tal Garfinkel 等ASPLOS 2025 · 被引用 8 次
- Multi-Stream Squash Reuse for Control-Independent ProcessorsQingxuan Kang, Trevor E. CarlsonMICRO 2025 · 被引用 2 次
它引用的顶会 Paper4
- Classifying Memory Access Patterns for PrefetchingGrant Ayers, Heiner Litz, Christos Kozyrakis, Parthasarathy RanganathanASPLOS 2020 · 被引用 83 次
- Pipette: Improving Core Utilization on Irregular Applications through Intra-Core Pipeline ParallelismQuan M. Nguyen, Daniel SánchezMICRO 2020 · 被引用 28 次
- Auto-Predication of Critical BranchesAdarsh Chauhan, Jayesh Gaur, Zeev Sperber, Franck Sala 等ISCA 2020 · 被引用 8 次
- NOREBA: a compiler-informed non-speculative out-of-order commit processorAli Hajiabadi, Andreas Diavastos, Trevor E. CarlsonASPLOS 2021 · 被引用 7 次
相关 Paper
- Timely, Efficient, and Accurate Branch PrecomputationAniket Deshmukh, Lingzhe Chester Cai, Yale N. PattMICRO 2024 · 被引用 3 次
- Speculative Register ReclamationSanyam MehtaHPCA 2023 · 被引用 3 次
- Augmenting the Branch Predictor with a Squashed-Branch Reuse BufferRohit Singh, Jiayang Li, Eric RotenbergISCA 2026
- Vector RunaheadAjeya Naithani, Sam Ainsworth, Timothy M. Jones, Lieven EeckhoutISCA 2021 · 被引用 27 次
- Alternate Path FetchAniket Deshmukh, Lingzhe Chester Cai, Yale N. PattISCA 2024 · 被引用 2 次
