Demo Data from VLDB 2026 / reviewers in the wild / expert
Richard Schooler
dblp:80/5833
· DBLP profile ↗
6ranked-venue papers
0as first author
1since 2021 · last 2023
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4Systems, architecture and hardware · 1Computer networks · 1 · 1 since 2021
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 networks
1 paper |
Content delivery and video streaming · 100% | |
| Software engineering, system software, and programming languages
3 papers |
Program analysis · 41% Compilers and program optimization · 29% Debugging and program repair · 21% | |
| Artificial intelligence
1 paper |
Reinforcement learning · 100% |
Topics — the 12 heaviest of 14, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Content delivery and video streaming › caching › cache management
cache replacement |
0.7 | 1 | 2023 | HALP: Heuristic Aided Learned Preference Eviction Policy for YouTube Content Delivery Network · NSDI 2023 |
Content delivery and video streaming › content delivery network
CDN caching |
0.7 | 1 | 2023 | HALP: Heuristic Aided Learned Preference Eviction Policy for YouTube Content Delivery Network · NSDI 2023 |
Program analysis
dynamic analysis |
0.1 | 1 | 2005 | TraceBack: first fault diagnosis by reconstruction of distributed control flow · PLDI 2005 |
Debugging and program repair
fault localization |
0.1 | 1 | 2005 | TraceBack: first fault diagnosis by reconstruction of distributed control flow · PLDI 2005 |
Program analysis › dynamic analysis
runtime instrumentation |
0.1 | 1 | 2005 | TraceBack: first fault diagnosis by reconstruction of distributed control flow · PLDI 2005 |
Compilers and program optimization
interprocedural optimization |
0.0 | 1 | 1998 | Scalable Cross-Module Optimization · PLDI 1998 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.0 | 1 | 1998 | Scalable Cross-Module Optimization · PLDI 1998 |
Software maintenance and evolution
code clone |
0.0 | 1 | 1997 | Aggressive Inlining · PLDI 1997 |
Compilers and program optimization › interprocedural optimization
inlining |
0.0 | 1 | 1997 | Aggressive Inlining · PLDI 1997 |
Compilers and program optimization › interprocedural optimization
profile-guided inlining |
0.0 | 1 | 1997 | Aggressive Inlining · PLDI 1997 |
Software maintenance and evolution
build systems |
0.0 | 1 | 1998 | Scalable Cross-Module Optimization · PLDI 1998 |
Memory systems › cache › CPU cache
instruction cache |
0.0 | 1 | 1997 | Aggressive Inlining · PLDI 1997 |
Methods — techniques the papers use, named apart from their topics
reinforcement learning · 1.3heuristic · 1.3control-flow instrumentation · 0.1binary program analysis · 0.1profile-guided optimization · 0.0profile data management · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | HALP: Heuristic Aided Learned Preference Eviction Policy for YouTube Content Delivery Network
Nuikhil Sarda, Deniz Altinbüken, Eugene Brevdo, Jimmy Coleman, Xiao Ju, Pawel Jurczyk, Richard Schooler, Ramki Gummadi |
NSDI | 9 |
| 2013 | Cyber physical systems: Systems engineering of industrial embedded systems - Barriers, enablers and opportunitiesabstractCyber physical systems: systems engineering of industrial embedded systems-barriers, enablers and opportunities; high-performance, scalable, general-purpose processors to accelerate high-throughput networking and security applications; Low-power high-performance asynchronous processors. Clas A. Jacobson, Richard Schooler, Michel Laurence |
CASES | 2 |
| 2005 | TraceBack: first fault diagnosis by reconstruction of distributed control flowabstractFaults that occur in production systems are the most important faults to fix, but most production systems lack the debugging facilities present in development environments. TraceBack provides debugging information for production systems by providing execution history data about program problems (such as crashes, hangs, and exceptions). TraceBack supports features commonly found in production environments such as multiple threads, dynamically loaded modules, multiple source languages (e.g., Java applications running with JNI modules written in C++), and distributed execution across multiple computers. TraceBack supports first fault diagnosis-discovering what went wrong the first time a fault is encountered. The user can see how the program reached the fault state without having to re-run the computation; in effect enabling a limited form of a debugger in production code.TraceBack uses static, binary program analysis to inject low-overhead runtime instrumentation at control-flow block granularity. Post-facto reconstruction of the records written by the instrumentation code produces a source-statement trace for user diagnosis. The trace shows the dynamic instruction sequence leading up to the fault state, even when the program took exceptions or terminated abruptly (e.g., kill -9).We have implemented TraceBack on a variety of architectures and operating systems, and present examples from a variety of platforms. Performance overhead is variable, from 5% for Apache running SPECweb99, to 16%-25% for the Java SPECJbb benchmark, to 60% average for SPECint2000. We show examples of TraceBack's cross-language and cross-machine abilities, and report its use in diagnosing problems in production software. Andrew Ayers, Richard Schooler, Chris Metcalf, Anant Agarwal, Junghwan Rhee, Emmett Witchel |
PLDI | 2 |
| 1998 | Scalable Cross-Module OptimizationabstractLarge applications are typically partitioned into separately compiled modules. Large performance gains in these applications are available by optimizing across module boundaries. One barrier to applying crossmodule optimization (CMO) to large applications is the potentially enormous amount of time and space consumed by the optimization process.We describe a framework for scalable CMO that provides large gains in performance on applications that contain millions of lines of code. Two major techniques are described. First, careful management of in-memory data structures results in sub-linear memory occupancy when compared to the number of lines of code being optimized. Second, profile data is used to focus optimization effort on the performance-critical portions of applications. We also present practical issues that arise in deploying this framework in a production environment. These issues include debuggability and compatibility with existing development tools, such as make. Our framework is deployed in Hewlett-Packard's (HP) UNIX compiler products and speeds up shipped independent software vendors' applications by as much as 71%. Andrew Ayers, Stuart de Jong, John Peyton, Richard Schooler |
PLDI | 4 |
| 1997 | Aggressive InliningabstractExisting research understates the benefits that can be obtained from inlining and cloning, especially when guided by profile information. Our implementation of inlining and cloning yields excellent results on average and very rarely lowers performance. We believe our good results can be explained by a number of factors: inlining at the intermediate-code level removes most technical restrictions on what can be inlined; the ability to inline across files and incorporate profile information enables us to choose better inline candidates; a high-quality back end can exploit the scheduling and register allocation opportunities presented by larger subroutines; an aggressive processor architecture benefits from more predictable branch behavior; and a large instruction cache mitigates the impact of code expansion. We describe the often dramatic impact of our inlining and cloning on performance: for example, the implementations of our inlining and cloning algorithms in the HP-UX 10.20 compilers boost SPECint95 performance on a PA8000-based workstation by a factor of 1.32. Andrew Ayers, Robert Gottlieb, Richard Schooler |
PLDI | 3 |
| 1989 | Independent Testing of Compiler Phases Using a Test Case GeneratorabstractAbstract Since a compiler phase depends on previous phases for input, it can be difficult to do timely independent unit testing of some phases. This can make integration more difficult and reduce overall quality. A test case generator has been used to circumvent this problem by providing an independent source of phase test inputs. Using a context‐free grammar augmented with contextsensitive constructs, a test case generator can generate intermediate language graphs in textual form. William Homer, Richard Schooler |
Softw. Pract. Exp. | 2 |