VLDB 2026 Research / reviewers in the wild / expert
Seth H. Pugsley
dblp:60/5498
· DBLP profile ↗
9ranked-venue papers
5as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 8 · 4 first-authorSoftware engineering, systems software and programming languages · 3 · 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
5 papers |
Memory systems · 88% Processor architecture and microarchitecture · 11% Performance modeling and evaluation · 1% |
Topics — the 12 heaviest of 13, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems
cache |
1.0 | 4 | 2019 | Perceptron-based prefetch filtering · ISCA 2019 Path confidence based lookahead prefetching · MICRO 2016 Efficiently prefetching complex address patterns · MICRO 2015 |
Memory systems › cache › prefetching
hardware prefetching |
0.6 | 2 | 2019 | Perceptron-based prefetch filtering · ISCA 2019 Sandbox Prefetching: Safe run-time evaluation of aggressive prefetchers · HPCA 2014 |
Memory systems › cache › prefetching
data prefetching |
0.5 | 2 | 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache Hierarchy · ASPLOS 2017 Efficiently prefetching complex address patterns · MICRO 2015 |
Memory systems › cache › prefetching
prefetch filtering |
0.4 | 1 | 2019 | Perceptron-based prefetch filtering · ISCA 2019 |
Memory systems › memory hierarchy
cache hierarchy |
0.3 | 1 | 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache Hierarchy · ASPLOS 2017 |
Memory systems
cache management |
0.3 | 1 | 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache Hierarchy · ASPLOS 2017 |
Memory systems › cache management
cache replacement |
0.3 | 1 | 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache Hierarchy · ASPLOS 2017 |
Memory systems › cache
prefetching |
0.2 | 1 | 2016 | Path confidence based lookahead prefetching · MICRO 2016 |
Processor architecture and microarchitecture
latency hiding |
0.2 | 1 | 2014 | Sandbox Prefetching: Safe run-time evaluation of aggressive prefetchers · HPCA 2014 |
Processor architecture and microarchitecture
multicore design |
0.1 | 1 | 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache Hierarchy · ASPLOS 2017 |
Memory systems
cache miss prediction |
0.1 | 1 | 2015 | Efficiently prefetching complex address patterns · MICRO 2015 |
Performance modeling and evaluation
workload characterization |
0.1 | 1 | 2014 | Sandbox Prefetching: Safe run-time evaluation of aggressive prefetchers · HPCA 2014 |
Methods — techniques the papers use, named apart from their topics
perceptron · 0.4program counter approximation · 0.3hysteresis · 0.3confidence estimation · 0.2compressed history · 0.2variable length delta history · 0.2multiple prediction tables · 0.2offset prefetching · 0.2bloom filter · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Perceptron-based prefetch filteringabstractHardware prefetching is an effective technique for hiding cache miss latencies in modern processor designs. Prefetcher performance can be characterized by two main metrics that are generally at odds with one another: coverage, the fraction of baseline cache misses which the prefetcher brings into the cache; and accuracy, the fraction of prefetches which are ultimately used. An overly aggressive prefetcher may improve coverage at the cost of reduced accuracy. Thus, performance may be harmed by this over-aggressiveness because many resources are wasted, including cache capacity and bandwidth. An ideal prefetcher would have both high coverage and accuracy. Eshan Bhatia, Gino Chacon, Seth H. Pugsley, Elvira Teran, Paul Gratz, Daniel A. Jiménez |
ISCA | 3 |
| 2017 | Kill the Program Counter: Reconstructing Program Behavior in the Processor Cache HierarchyabstractData prefetching and cache replacement algorithms have been intensively studied in the design of high performance microprocessors. Typically, the data prefetcher operates in the private caches and does not interact with the replacement policy in the shared Last-Level Cache (LLC). Similarly, most replacement policies do not consider demand and prefetch requests as different types of requests. In particular, program counter (PC)-based replacement policies cannot learn from prefetch requests since the data prefetcher does not generate a PC value. PC-based policies can also be negatively affected by compiler optimizations. In this paper, we propose a holistic cache management technique called Kill-the-PC (KPC) that overcomes the weaknesses of traditional prefetching and replacement policy algorithms. KPC cache management has three novel contributions. First, a prefetcher which approximates the future use distance of prefetch requests based on its prediction confidence. Second, a simple replacement policy provides similar or better performance than current state-of-the-art PC-based prediction using global hysteresis. Third, KPC integrates prefetching and replacement policy into a whole system which is greater than the sum of its parts. Information from the prefetcher is used to improve the performance of the replacement policy and vice-versa. Finally, KPC removes the need to propagate the PC through entire on-chip cache hierarchy while providing a holistic cache management approach with better performance than state-of-the-art PC-, and non-PC-based schemes. Our evaluation shows that KPC provides 8% better performance than the best combination of existing prefetcher and replacement policy for multi-core workloads. Jinchun Kim, Elvira Teran, Paul Gratz, Daniel A. Jiménez, Seth H. Pugsley, Chris Wilkerson |
ASPLOS | 5 |
| 2016 | Path confidence based lookahead prefetchingabstractDesigning prefetchers to maximize system performance often requires a delicate balance between coverage and accuracy. Achieving both high coverage and accuracy is particularly challenging in workloads with complex address patterns, which may require large amounts of history to accurately predict future addresses. This paper describes the Signature Path Prefetcher (SPP), which offers effective solutions for three classic challenges in prefetcher design. First, SPP uses a compressed history based scheme that accurately predicts complex address patterns. Second, unlike other history based algorithms, which miss out on many prefetching opportunities when address patterns make a transition between physical pages, SPP tracks complex patterns across physical page boundaries and continues prefetching as soon as they move to new pages. Finally, SPP uses the confidence it has in its predictions to adaptively throttle itself on a per-prefetch stream basis. In our analysis, we find that SPP improves performance by 27.2% over a no-prefetching baseline, and outperforms the state-of-the-art Best Offset prefetcher by 6.4%. SPP does this with minimal overhead, operating strictly in the physical address space, and without requiring any additional processor core state, such as the PC. Jinchun Kim, Seth H. Pugsley, Paul Gratz, A. L. Narasimha Reddy, Chris Wilkerson, Zeshan Chishti |
MICRO | 2 |
| 2015 | Fixed-function hardware sorting accelerators for near data MapReduce executionabstractA large fraction of MapReduce execution time is spent processing the Map phase, and a large fraction of Map phase execution time is spent sorting the intermediate key-value pairs generated by the Map function. Sorting accelerators can achieve high performance and low power because they lack the overheads of sorting implementations on general purpose hardware, such as instruction fetch and decode. We find that sorting accelerators are a good match for 3D-stacked Near Data Processing (NDP) because their sorting throughput is so high that it saturates the memory bandwidth available in other memory organizations. The increased sorting performance and low power requirement of fixed-function hardware lead to very high Map phase performance and energy efficiency, reducing Map phase execution time by up to 92%, and reducing energy consumption by up to 91%. We further find that sorting accelerators in a less exotic form of NDP outperform more expensive forms of 3D-stacked NDP without accelerators. We also implement the accelerator on an FPGA to validate our claims. Seth H. Pugsley, Arjun Deb, Rajeev Balasubramonian, Feifei Li 0001 |
ICCD | 1 |
| 2015 | Efficiently prefetching complex address patternsabstractPrior work in hardware prefetching has focused mostly on either predicting regular streams with uniform strides, or predicting irregular access patterns at the cost of large hardware structures. This paper introduces the Variable Length Delta Prefetcher (VLDP), which builds up delta histories between successive cache line misses within physical pages, and then uses these histories to predict the order of cache line misses in new pages. One of VLDP's distinguishing features is its use of multiple prediction tables, each of which stores predictions based on a different length of input history. For example, the first prediction table takes as input only the single most recent delta between cache misses within a page, and attempts to predict the next cache miss in that page. The second prediction table takes as input a sequence of the two most recent deltas between cache misses within a page, and also attempts to predict the next cache miss in that page, and so on with additional tables. Longer histories generally yield more accurate predictions, so VLDP prefers to make predictions based on the longest history table that has a matching entry. Manjunath Shevgoor, Sahil Koladiya, Rajeev Balasubramonian, Chris Wilkerson, Seth H. Pugsley, Zeshan Chishti |
MICRO | 5 |
| 2014 | Sandbox Prefetching: Safe run-time evaluation of aggressive prefetchersabstractMemory latency is a major factor in limiting CPU performance, and prefetching is a well-known method for hiding memory latency. Overly aggressive prefetching can waste scarce resources such as memory bandwidth and cache capacity, limiting or even hurting performance. It is therefore important to employ prefetching mechanisms that use these resources prudently, while still prefetching required data in a timely manner. In this work, we propose a new mechanism to determine at run-time the appropriate prefetching mechanism for the currently executing program, called Sandbox Prefetching. Sandbox Prefetching evaluates simple, aggressive offset prefetchers at run-time by adding the prefetch address to a Bloom filter, rather than actually fetching the data into the cache. Subsequent cache accesses are tested against the contents of the Bloom filter to see if the aggressive prefetcher under evaluation could have accurately prefetched the data, while simultaneously testing for the existence of prefetchable streams. Real prefetches are performed when the accuracy of evaluated prefetchers exceeds a threshold. This method combines the ideas of global pattern confirmation and immediate prefetching action to achieve high performance. Sandbox Prefetching improves performance across the tested workloads by 47.6% compared to not using any prefetching, and by 18.7% compared to the Feedback Directed Prefetching technique. Performance is also improved by 1.4% compared to the Access Map Pattern Matching Prefetcher, while incurring considerably less logic and storage overheads. Seth H. Pugsley, Zeshan Chishti, Chris Wilkerson, Peng-fei Chuang, Robert L. Scott, Aamer Jaleel, Shih-Lien Lu, Kingsum Chow, Rajeev Balasubramonian |
HPCA | 1 |
| 2014 | NDC: Analyzing the impact of 3D-stacked memory+logic devices on MapReduce workloadsabstractWhile Processing-in-Memory has been investigated for decades, it has not been embraced commercially. A number of emerging technologies have renewed interest in this topic. In particular, the emergence of 3D stacking and the imminent release of Micron's Hybrid Memory Cube device have made it more practical to move computation near memory. However, the literature is missing a detailed analysis of a killer application that can leverage a Near Data Computing (NDC) architecture. This paper focuses on in-memory MapReduce workloads that are commercially important and are especially suitable for NDC because of their embarrassing parallelism and largely localized memory accesses. The NDC architecture incorporates several simple processing cores on a separate, non-memory die in a 3D-stacked memory package; these cores can perform Map operations with efficient memory access and without hitting the bandwidth wall. This paper describes and evaluates a number of key elements necessary in realizing efficient NDC operation: (i) low-EPI cores, (ii) long daisy chains of memory devices, (iii) the dynamic activation of cores and SerDes links. Compared to a baseline that is heavily optimized for MapReduce execution, the NDC design yields up to 15X reduction in execution time and 18X reduction in system energy. Seth H. Pugsley, Jeffrey Jestes, Rajeev Balasubramonian, Vijayalakshmi Srinivasan, Alper Buyuktosunoglu, Al Davis, Feifei Li 0001 |
ISPASS | 1 |
| 2010 | SWEL: hardware cache coherence protocols to map shared data onto shared cachesabstractSnooping and directory-based coherence protocols have become the de facto standard in chip multi-processors, but neither design is without drawbacks. Snooping protocols are not scalable, while directory protocols incur directory storage overhead, frequent indirections, and are more prone to design bugs. In this paper, we propose a novel coherence protocol that greatly reduces the number of coherence operations and falls back on a simple broadcast-based snooping protocol when infrequent coherence is required. This new protocol is based on the premise that most blocks are either private to a core or read-only, and hence, do not require coherence. This will be especially true for future large-scale multi-core machines that will be used to execute message-passing workloads in the HPC domain, or multiple virtual machines for servers. In such systems, it is expected that a very small fraction of blocks will be both shared and frequently written, hence the need to optimize coherence protocols for a new common case. In our new protocol, dubbed SWEL (protocol states are Shared, Written, Exclusivity Level), the L1 cache attempts to store only private or read-only blocks, while shared and written blocks must reside at the shared L2 level. These determinations are made at runtime without software assistance. While accesses to blocks banished from the L1 become more expensive, SWEL can improve throughput because directory indirection is removed for many common write-sharing patterns. Compared to a MESI based directory implementation, we see up to 15% increased performance, a maximum degradation of 2%, and an average performance increase of 2.5% using SWEL and its derivatives. Other advantages of this strategy are reduced protocol complexity (achieved by reducing transient states) and significantly less storage overhead than traditional directory protocols. Seth H. Pugsley, Josef B. Spjut, David W. Nellans, Rajeev Balasubramonian |
PACT | 1 |
| 2008 | Scalable and reliable communication for hardware transactional memoryabstractIn a hardware transactional memory system with lazy versioning and lazy conflict detection, the process of transaction commit can emerge as a bottleneck. This is especially true for a large-scale distributed memory system where multiple transactions may attempt to commit simultaneously and coordination is required before allowing commits to proceed in parallel. In this paper, we propose novel algorithms to implement commit that are more scalable in terms of delay and are free of deadlocks/livelocks. We show that these algorithms have similarities with the token cache coherence concept and leverage these similarities to extend the algorithms to handle message loss and starvation scenarios. The proposed algorithms improve upon the state-of-the-art by yielding up to a 7X reduction in commit delay and up to a 48X reduction in network messages for commit. These translate into overall performance improvements of up to 66% (for synthetic workloads with average transaction length of 200 cycles), 35% (for average transaction length of 1000 cycles), and 8% (for average transaction length of 4000 cycles). For a small group of multi-threaded programs with frequent transaction commits, improvements of up to 8% were observed for a 32-node simulation. Seth H. Pugsley, Manu Awasthi, Niti Madan, Naveen Muralimanohar, Rajeev Balasubramonian |
PACT | 1 |