Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Ricardo Alves 0001

dblp:135/3660-1 · DBLP profile ↗
← Back
4ranked-venue papers
4as first author
1since 2021 · last 2021
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 3 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 1 · 1 first-author

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
2 papers
Processor architecture and microarchitecture · 52% Memory systems · 48%

Topics — the 7 heaviest of 7, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems
cache
0.522021
Filter caching for free: the untapped potential of the store-buffer · ISCA 2019
Early Address Prediction: Efficient Pipeline Prefetch and Reuse · ACM Trans. Archit. Code Optim. 2021
Memory systems › memory hierarchy › cache hierarchy
l1 cache
0.522021
Filter caching for free: the untapped potential of the store-buffer · ISCA 2019
Early Address Prediction: Efficient Pipeline Prefetch and Reuse · ACM Trans. Archit. Code Optim. 2021
Processor architecture and microarchitecture › speculation
address prediction
0.512021
Early Address Prediction: Efficient Pipeline Prefetch and Reuse · ACM Trans. Archit. Code Optim. 2021
Processor architecture and microarchitecture
register file
0.512021
Early Address Prediction: Efficient Pipeline Prefetch and Reuse · ACM Trans. Archit. Code Optim. 2021
Processor architecture and microarchitecture › load/store queue
store buffer
0.412019
Filter caching for free: the untapped potential of the store-buffer · ISCA 2019
Memory systems › memory management › virtual memory › address translation
TLB
0.112019
Filter caching for free: the untapped potential of the store-buffer · ISCA 2019
Memory systems › memory management
virtual memory
0.112019
Filter caching for free: the untapped potential of the store-buffer · ISCA 2019

Methods — techniques the papers use, named apart from their topics

memory order violation detection · 0.5address tagging · 0.5microarchitectural simulation · 0.4
YearPublicationVenuePosition
2021 Early Address Prediction: Efficient Pipeline Prefetch and Reuse
abstract
Achieving low load-to-use latency with low energy and storage overheads is critical for performance. Existing techniques either prefetch into the pipeline (via address prediction and validation) or provide data reuse in the pipeline (via register sharing or L0 caches). These techniques provide a range of tradeoffs between latency, reuse, and overhead. In this work, we present a pipeline prefetching technique that achieves state-of-the-art performance and data reuse without additional data storage, data movement, or validation overheads by adding address tags to the register file. Our addition of register file tags allows us to forward (reuse) load data from the register file with no additional data movement, keep the data alive in the register file beyond the instruction’s lifetime to increase temporal reuse, and coalesce prefetch requests to achieve spatial reuse. Further, we show that we can use the existing memory order violation detection hardware to validate prefetches and data forwards without additional overhead. Our design achieves the performance of existing pipeline prefetching while also forwarding 32% of the loads from the register file (compared to 15% in state-of-the-art register sharing), delivering a 16% reduction in L1 dynamic energy (1.6% total processor energy), with an area overhead of less than 0.5%.
Ricardo Alves 0001, Stefanos Kaxiras, David Black-Schaffer
ACM Trans. Archit. Code Optim.1
2019 Filter caching for free: the untapped potential of the store-buffer
abstract
Modern processors contain store-buffers to allow stores to retire under a miss, thus hiding store-miss latency. The store-buffer needs to be large (for performance) and searched on every load (for correctness), thereby making it a costly structure in both area and energy. Yet on every load, the store-buffer is probed in parallel with the L1 and TLB, with no concern for the store-buffer's intrinsic hit rate or whether a store-buffer hit can be predicted to save energy by disabling the L1 and TLB probes.
Ricardo Alves 0001, Alberto Ros 0001, David Black-Schaffer, Stefanos Kaxiras
ISCA1
2018 Dynamically Disabling Way-prediction to Reduce Instruction Replay
abstract
Way-predictors have long been used to reduce dynamic cache energy without the performance loss of serial caches. However, they produce variable-latency hits, as incorrect predictions increase load-to-use latency. While the performance impact of these extra cycles has been well-studied, the need to replay subsequent instructions in the pipeline due to the load latency increase has been ignored. In this work we show that way-predictors pay a significant performance penalty beyond previously studied effects due to instruction replays caused by mispredictions. To address this, we propose a solution that learns the confidence of the way-prediction and dynamically disables it when it is likely to mispredict and cause replays. This allows us to reduce cache latency (when we can trust the way-prediction) while still avoiding the need to replay instructions in the pipeline (by avoiding way-mispredictions). Standard way-predictors degrade IPC by 6.9% vs. a parallel cache due to 10% of the instructions being replayed (worst case 42.3%). While our solution decreases way-prediction accuracy by turning off the way-predictor in some cases when it would have been correct, it delivers higher performance than a standard way-predictor. Our confidence-based way-predictor degrades IPC by only 4.4% by replaying just 5.6% of the instructions (worse case 16.3%). This reduces the way-predictor cache energy overhead compared to serial access cache, from 8.5% to 3.7% on average and on the worst case, from 33.8% to 9.5%.
Ricardo Alves 0001, Stefanos Kaxiras, David Black-Schaffer
ICCD1
2017 Addressing Energy Challenges in Filter Caches
abstract
Filter caches and way-predictors are common approaches to improve the efficiency and/or performance of first-level caches. Filter caches use a small L0 to provide more efficient and faster access to a small subset of the data, and work well for programs with high locality. Way-predictors improve efficiency by accessing only the way predicted, which alleviates the need to read all ways in parallel without increasing latency, but hurts performance due to mispredictions.In this work we examine how SRAM layout constraints (h-trees and data mapping inside the cache) affect way-predictors and filter caches. We show that accessing the smaller L0 array can be significantly more energy efficient than attempting to read fewer ways from a larger L1 cache; and that the main source of energy inefficiency in filter caches comes from L0 and L1 misses. We propose a filter cache optimization that shares the tag array between the L0 and the L1, which incurs the overhead of reading the larger tag array on every access, but in return allows us to directly access the correct L1 way on each L0 miss. This optimization does not add any extra latency and counter-intuitively, improves the filter caches overall energy efficiency beyond that of the way-predictor.By combining the low power benefits of a physically smaller L0 with the reduction in miss energy by reading L1 tags upfront in parallel with L0 data, we show that the optimized filter cache reduces the dynamic cache energy compared to a traditional filter cache by 26% while providing the same performance advantage. Compared to a way-predictor, the optimized cache improves performance by 6% and energy by 2%.
Ricardo Alves 0001, Nikos Nikoleris, Stefanos Kaxiras, David Black-Schaffer
SBAC-PAD1