VLDB 2026 Research / reviewers in the wild / expert
Williams Ludwell Harrison III
dblp:76/150
· DBLP profile ↗
8ranked-venue papers
1as first author
0since 2021 · last 1994
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 1 first-authorSoftware 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.
| Software engineering, system software, and programming languages
4 papers |
Program analysis · 55% Compilers and program optimization · 43% Runtime systems and virtual machines · 2% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Parallel and multicore computing · 100% |
Topics — the 14 heaviest of 14, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
dependence analysis |
0.0 | 2 | 1992 | Compile-Time Analysis of Parallel Programs that Share Memory · POPL 1992 Automatic Recognition of Induction Variables and Recurrence Relations by Abstract Interpretation · PLDI 1990 |
Program analysis › program analysis infrastructure
analyzer generation |
0.0 | 1 | 1993 | Automatic Generation and Management of Interprocedural Program Analyses · POPL 1993 |
Program analysis › static analysis
interprocedural analysis |
0.0 | 1 | 1993 | Automatic Generation and Management of Interprocedural Program Analyses · POPL 1993 |
Program analysis
static analysis |
0.0 | 1 | 1993 | Automatic Generation and Management of Interprocedural Program Analyses · POPL 1993 |
Program analysis › static analysis
abstract interpretation |
0.0 | 1 | 1992 | Compile-Time Analysis of Parallel Programs that Share Memory · POPL 1992 |
Compilers and program optimization
parallelizing compiler |
0.0 | 1 | 1992 | Compile-Time Analysis of Parallel Programs that Share Memory · POPL 1992 |
Program analysis › concurrent program analysis
parallel program analysis |
0.0 | 1 | 1992 | Compile-Time Analysis of Parallel Programs that Share Memory · POPL 1992 |
Compilers and program optimization › compiler analysis
induction variable detection |
0.0 | 1 | 1990 | Automatic Recognition of Induction Variables and Recurrence Relations by Abstract Interpretation · PLDI 1990 |
Compilers and program optimization
loop optimization |
0.0 | 1 | 1990 | Automatic Recognition of Induction Variables and Recurrence Relations by Abstract Interpretation · PLDI 1990 |
Parallel and multicore computing › parallel programming models › task parallelism
microtasking |
0.0 | 1 | 1990 | Switch-stacks: a scheme for microtasking nested parallel loops · SC 1990 |
Parallel and multicore computing › parallelization strategies
nested parallelism |
0.0 | 1 | 1990 | Switch-stacks: a scheme for microtasking nested parallel loops · SC 1990 |
Parallel and multicore computing
parallel programming runtimes |
0.0 | 1 | 1990 | Switch-stacks: a scheme for microtasking nested parallel loops · SC 1990 |
Parallel and multicore computing › parallel programming models
shared-memory parallelization |
0.0 | 1 | 1992 | Compile-Time Analysis of Parallel Programs that Share Memory · POPL 1992 |
Runtime systems and virtual machines › runtime environment
runtime scheduling |
0.0 | 1 | 1990 | Switch-stacks: a scheme for microtasking nested parallel loops · SC 1990 |
Methods — techniques the papers use, named apart from their topics
abstract interpretation · 0.0switch-stacks · 0.0dequeue-tasks · 0.0pattern matching · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 1994 | An efficient approach to computing fixpoints for complex program analysisabstractA chief source of inefficiency in program analysis using abstract interpretation comes from the fact that a large context (i.e., problem state) is propagated from node to node during the course of an analysis. This problem can be addressed and largely alleviated by a technique we call context projection, which projects an input context for a node to the portion that is actually relevant and determines whether the node should be reevaluated based on the projected context. This technique reduces the cost of an evaluation and eliminates unnecessary evaluations. Therefore, the efficiency of computing fixpoints over general lattices is greatly improved. A specific method, reachability, is presented as an example to accomplish context projection. Experimental results using reachability show very convincing speedups (more than eight for larger programs) that demonstrate the practical significance of context projection. Li-Ling Chen, Williams Ludwell Harrison III |
International Conference on Supercomputing | 2 |
| 1993 | Automatic Generation and Management of Interprocedural Program AnalysesabstractWe have designed and implemented an interprocedural program analyzer generator, called system Z. Our goal is to automate the generation and management of semantics-based interprocedural program analysis for a wide range of target languages. Kwangkeun Yi, Williams Ludwell Harrison III |
POPL | 2 |
| 1992 | A General Framework for Analyzing Shared-Memory Parallel Programs
Jyh-Herng Chow, Williams Ludwell Harrison III |
ICPP (2) | 2 |
| 1992 | Compile-Time Analysis of Parallel Programs that Share MemoryabstractTraditional optimization techniques for sequential programs are not directly applicable to parallel programs where concurrent activities may interfere with each other through shared variables. New compiler techniques must be developed to accommodate features found in parallel languages. In this paper, we use abstract interpretation to obtain useful properties of programs, e.g., side effects, data dependences, object lifetime and concurrent expressions, for a language that supports first-class functions, pointers, dynamic allocations and explicit parallelism through cobegin. These analyses may facilitate many applications, such as program optimization, parallelization, restructuring, memory management, and detecting access anomalies. Jyh-Herng Chow, Williams Ludwell Harrison III |
POPL | 2 |
| 1990 | Microtasking Recursive, Parallel Programs
Jyh-Herng Chow, Williams Ludwell Harrison III |
ICPP (2) | 2 |
| 1990 | Automatic Recognition of Induction Variables and Recurrence Relations by Abstract InterpretationabstractThe recognition of recurrence relations is important in several ways to the compilation of programs. Induction variables, the simplest form of recurrence, are pivotal in loop optimizations and dependence testing. Many recurrence relations, although expressed sequentially by the programmer, lend themselves to efficient vector or parallel computation. Despite the importance of recurrences, vectorizing and parallelizing compilers to date have recognized them only in an ad-hoc fashion. In this paper we put forth a systematic method for recognizing recurrence relations automatically. Our method has two parts. First, abstract interpretation [CC77, CC79] is used to construct a map that associates each variable assigned in a loop with a symbolic form (expression) of its value. Second, the elements of this map are matched with patterns that describe recurrence relations. The scheme is easily extensible by the addition of templates, and is able to recognize nested recurrences by the propagation of the closed forms of recurrences from inner loops. We present some applications of this method and a proof of its correctness. Zahira Ammarguellat, Williams Ludwell Harrison III |
PLDI | 2 |
| 1990 | Switch-stacks: a scheme for microtasking nested parallel loopsabstractThe authors discuss run-time microtasking support for executing nested parallel loops on a shared-memory multiprocessor system, and present a scheme called switch-stacks for implementing such support. They first discuss current approaches to flat microtasking, and investigate how to extend these to full microtasking. They point out the problem of dummy waiting in the processor that initiates a parallel loop. To solve this problem, two schemes, dequeue-tasks and dequeue-descendant-tasks, are considered, and their disadvantages are discussed. The proposed switch-stack scheme perfectly solves the problem. These schemes have been implemented in the PARCEL run-time system. The results show that the new scheme nearly always achieves the best performance in execution time and stability.> Jyh-Herng Chow, Williams Ludwell Harrison III |
SC | 2 |
| 1986 | Representing S-Expressions for the Efficient Evaluation of LISP on Parallel Processors
Williams Ludwell Harrison III, David A. Padua |
ICPP | 1 |