Demo Data from EDBT 2026 / reviewers in the wild / expert
Lihu Rappoport
dblp:72/2991
· DBLP profile ↗
7ranked-venue papers
0as first author
0since 2021 · last 2020
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 7Software engineering, systems software and programming languages · 3
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
6 papers |
Processor architecture and microarchitecture · 96% Performance modeling and evaluation · 3% Memory systems · 1% | |
| Theoretical computer science
1 paper |
Distributed computing theory · 100% |
Topics — the 19 heaviest of 20, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Processor architecture and microarchitecture
branch prediction |
0.8 | 3 | 2020 | Auto-Predication of Critical Branches · ISCA 2020 Towards the adoption of Local Branch Predictors in Modern Out-of-Order Superscalar Processors · MICRO 2019 eXtended Block Cache · HPCA 2000 |
Processor architecture and microarchitecture › branch prediction
hard-to-predict branch |
0.4 | 1 | 2020 | Auto-Predication of Critical Branches · ISCA 2020 |
Processor architecture and microarchitecture
speculation |
0.4 | 1 | 2020 | Auto-Predication of Critical Branches · ISCA 2020 |
Processor architecture and microarchitecture
speculative execution |
0.4 | 1 | 2020 | Focused Value Prediction · ISCA 2020 |
Processor architecture and microarchitecture
value prediction |
0.4 | 1 | 2020 | Focused Value Prediction · ISCA 2020 |
Processor architecture and microarchitecture › branch prediction
branch misprediction recovery |
0.4 | 1 | 2019 | Towards the adoption of Local Branch Predictors in Modern Out-of-Order Superscalar Processors · MICRO 2019 |
Processor architecture and microarchitecture › superscalar processor
superscalar out-of-order processor |
0.4 | 1 | 2019 | Towards the adoption of Local Branch Predictors in Modern Out-of-Order Superscalar Processors · MICRO 2019 |
Processor architecture and microarchitecture
instruction-level parallelism |
0.1 | 1 | 2020 | Focused Value Prediction · ISCA 2020 |
Processor architecture and microarchitecture
pipelining |
0.1 | 1 | 2020 | Auto-Predication of Critical Branches · ISCA 2020 |
Performance modeling and evaluation › simulation
simulation-based evaluation |
0.1 | 1 | 2019 | Towards the adoption of Local Branch Predictors in Modern Out-of-Order Superscalar Processors · MICRO 2019 |
Memory systems › cache › CPU cache
instruction cache |
0.0 | 1 | 2000 | eXtended Block Cache · HPCA 2000 |
Processor architecture and microarchitecture
instruction fetch |
0.0 | 1 | 2000 | eXtended Block Cache · HPCA 2000 |
Processor architecture and microarchitecture › front-end
instruction supply |
0.0 | 1 | 2000 | eXtended Block Cache · HPCA 2000 |
Processor architecture and microarchitecture › instruction fetch
trace cache |
0.0 | 1 | 2000 | eXtended Block Cache · HPCA 2000 |
Distributed computing theory › shared memory
asynchronous shared memory |
0.0 | 1 | 1994 | Disjoint-Access-Parallel Implementations of Strong Shared Memory Primitives · PODC 1994 |
Distributed computing theory
shared memory |
0.0 | 1 | 1994 | Disjoint-Access-Parallel Implementations of Strong Shared Memory Primitives · PODC 1994 |
Distributed computing theory › shared memory
shared-memory primitive |
0.0 | 1 | 1994 | Disjoint-Access-Parallel Implementations of Strong Shared Memory Primitives · PODC 1994 |
Memory systems
cache |
0.0 | 1 | 1999 | Correlated Load-Address Predictors · ISCA 1999 |
Parallel and multicore computing
concurrent data structures |
0.0 | 1 | 1994 | Disjoint-Access-Parallel Implementations of Strong Shared Memory Primitives · PODC 1994 |
Methods — techniques the papers use, named apart from their topics
simulation · 0.9extended block cache · 0.0disjoint-access-parallelism · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | Focused Value PredictionabstractValue Prediction was proposed to speculatively break true data dependencies, thereby allowing Out of Order (OOO) processors to achieve higher instruction level parallelism (ILP) and gain performance. State-of-the-art value predictors try to maximize the number of instructions that can be value predicted, with the belief that a higher coverage will unlock more ILP and increase performance. Unfortunately, this comes at increased complexity with implementations that require multiple different types of value predictors working in tandem, incurring substantial area and power cost.In this paper we motivate towards lower coverage, but focused, value prediction. Instead of aggressively increasing the coverage of value prediction, at the cost of higher area and power, we motivate refocusing value prediction as a mechanism to achieve an early execution of instructions that frequently create performance bottlenecks in the OOO processor. Since we do not aim for high coverage, our implementation is light-weight, needing just 1.2 KB of storage. Simulation results on 60 diverse workloads show that we deliver 3.3% performance gain over a baseline similar to the Intel Skylake processor. This performance gain increases substantially to 8.6% when we simulate a futuristic up-scaled version of Skylake. In contrast, for the same storage, state-of-the-art value predictors deliver a much lower speedup of 1.7% and 4.7% respectively. Notably, our proposal is similar to these predictors in performance, even when they are given nearly eight times the storage and have 60% more prediction coverage than our solution. Sumeet Bandishte, Jayesh Gaur, Zeev Sperber, Lihu Rappoport, Adi Yoaz, Sreenivas Subramoney |
ISCA | 4 |
| 2020 | Auto-Predication of Critical BranchesabstractAdvancements in branch predictors have allowed modern processors to aggressively speculate and gain significant performance with every generation of increasing out-of-order depth and width. Unfortunately, there are branches that are still hard-to-predict (H2P) and mis-speculation on these branches is severely limiting the performance scalability of future processors. One potential solution to mitigate this problem is to predicate branches by substituting control dependencies with data dependencies. Predication is very costly for performance as it inhibits instruction level parallelism. To overcome this limitation, prior works selectively applied predication at run-time on H2P branches that have low confidence of branch prediction. However, these schemes do not fully comprehend the delicate trade-offs involved in suppressing speculation and can suffer from performance degradation on certain workloads. Additionally, they need significant changes not just to the hardware but also to the compiler and the instruction set architecture, rendering their implementation complex and challenging.In this paper, by analyzing the fundamental trade-offs between branch prediction and predication, we propose Auto-Predication of Critical Branches (ACB) - an end-to-end hardware-based solution that intelligently disables speculation only on branches that are critical for performance. Unlike existing approaches, ACB uses a sophisticated performance monitoring mechanism to gauge the effectiveness of dynamic predication, and hence does not suffer from performance inversions. Our simulation results show that, with just 386 bytes of additional hardware and no software support, ACB delivers 8% performance gain over a baseline similar to the Skylake processor. We also show that ACB reduces pipeline flushes because of mis-speculations by 22%, thus effectively helping both power and performance. Adarsh Chauhan, Jayesh Gaur, Zeev Sperber, Franck Sala, Lihu Rappoport, Adi Yoaz, Sreenivas Subramoney |
ISCA | 5 |
| 2019 | Towards the adoption of Local Branch Predictors in Modern Out-of-Order Superscalar ProcessorsabstractBranch prediction accuracy plays a dominant role in the performance provided by modern Out-of-Order(OOO) superscalar processors. While global history-based branch predictors are more popular, local history-based predictors offer an additional dimension towards enhancing the overall branch prediction accuracy. Integrating the local predictors in modern cores, though, comes with non-trivial challenges associated with managing the local predictor's state and repairing this state on any branch misprediction is essential for the local predictor to operate effectively. Using a highly accurate, industry standard simulator modeling a Skylake-like OOO core and workloads spanning diverse categories including Server, High Performance Computing (HPC) and personal computing suites, besides SPEC, we methodically highlight the issues that need to be tackled, why local predictor repair is non-trivial and the performance opportunity that is lost when the local predictor repair is not handled efficiently. We discuss the issues with prior techniques and quantify their limitations when using them in current OOO cores. Further, we propose three practical, implementable and efficient repair techniques with minimal storage requirements that provide significant performance gains for local predictors. Unlike prior repair techniques that can only attain 50% of the oracular gains, our realistic repair techniques retain about 80% of the oracular gains resulting in significantly better application performance. Niranjan Soundararajan, Ragavendra Natarajan, Jared Stark, Rahul Pal, Franck Sala, Lihu Rappoport, Adi Yoaz, Sreenivas Subramoney |
MICRO | 7 |
| 2016 | Inside 6th gen Intel® Core™: New microarchitecture code named skylakeabstractThe Intel core microarchitecture is a new foundation for Intel architecture-based desktop, mobile and mainstream server multi-core processors. Designed for efficiency and optimised performance across a range of market segments and power envelopes. Ittai Anati, David Blythe, Jack Doweck, Wen-Fu Kao, Julius Mandelblat, Lihu Rappoport, Efraim Rotem, Ahmad Yasin |
Hot Chips Symposium | 7 |
| 2000 | eXtended Block CacheabstractThis paper describes a new instruction-supply mechanism, called the eXtended Block Cache (XBC). The goal of the XBC is to improve on the Trace Cache (TC) hit rate, while providing the same bandwidth. The improved hit rate is achieved by having the XBC a nearly redundant free structure. The basic unit recorded in the XBC is the extended block (XB), which is a multiple-entry single-exit instruction block. A XB is a sequence of instructions ending on a conditional or an indirect branch. Unconditional direct jumps do not end a XB. In order to enable multiple entry points per XB, the XB index is derived from the IP of its ending instruction. Instructions within the XB are recorded in reverse order, enabling easy extension of XBs. The multiple entry-points remove most of the redundancy. Since there is at most one conditional branch per XB, we can fetch up to n XBs per cycle by predicting n branches. The multiple fetch enables the XBC to march the TC bandwidth. Stéphan Jourdan, Lihu Rappoport, Yoav Almog, Mattan Erez, Adi Yoaz, Ronny Ronen |
HPCA | 2 |
| 1999 | Correlated Load-Address PredictorsabstractAs microprocessors become faster, the relative performance cost of memory accesses increases. Bigger and faster caches significantly reduce the absolute load-to-use time delay. However, increase in processor operational frequencies impairs the relative load-to-use latency, measured in processor cycles (e.g. from two cycles on the Pentium processor to three cycles of more in current designs). Load-address prediction techniques were introduced to partially cut the load-to-use latency. This paper focuses on advanced address-prediction schemes to further shorten program execution time. Existing address prediction schemes are capable of predicting simple address patterns, consisting mainly of constant addresses or stride-based addresses. This paper explores the characteristics of the remaining loads and suggests new enhanced techniques to improve prediction effectiveness: Context-based prediction to tackle part of the remaining, difficult-to-predict, load instructions. New prediction algorithms to take advantage of global correlation among different static loads. New confidence mechanisms to increase the correct prediction rate and to eliminate costly mispredictions. Mechanisms to prevent long or random address sequences from polluting the predictor data structures while providing some hysteresis behavior to the predictions. Such an enhanced address predictor accurately predicts 67% of all loads, while keeping the misprediction rate close to 1% We further prove that the proposed predictor works reasonably well in a deep pipelined architecture where the predict-to-update delay may significantly impair both prediction rate and accuracy. Michael Bekerman, Stéphan Jourdan, Ronny Ronen, Gilad Kirshenboim, Lihu Rappoport, Adi Yoaz, Uri C. Weiser |
ISCA | 5 |
| 1994 | Disjoint-Access-Parallel Implementations of Strong Shared Memory PrimitivesabstractIn this paper, we present efficient implementations of strong shared memory primitives.We use the asynchronous shar-ed memory model.In this model, processes communicate by applying primitive operations (e.g. Amos Israeli, Lihu Rappoport |
PODC | 2 |