EDBT 2026 Demo / reviewers in the wild / expert
Benjamin P. Wood
dblp:94/8636
· DBLP profile ↗
8ranked-venue papers
3as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 7 · 3 first-authorSystems, architecture and hardware · 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.
| Software engineering, system software, and programming languages
5 papers |
Concurrent programming · 78% Runtime systems and virtual machines · 11% Debugging and program repair · 5% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Parallel and multicore computing · 64% Processor architecture and microarchitecture · 36% |
Topics — the 13 heaviest of 15, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming › concurrency bug detection
data race detection |
0.7 | 4 | 2017 | Instrumentation bias for dynamic data race detection · Proc. ACM Program. Lang. 2017 Low-level detection of language-level data races with LARD · ASPLOS 2014 RADISH: Always-on sound and complete race detection in software and hardware · ISCA 2012 |
Concurrent programming › concurrency bug detection › data race detection
dynamic race detection |
0.4 | 2 | 2017 | Instrumentation bias for dynamic data race detection · Proc. ACM Program. Lang. 2017 RADISH: Always-on sound and complete race detection in software and hardware · ISCA 2012 |
Concurrent programming
synchronization |
0.3 | 1 | 2017 | Instrumentation bias for dynamic data race detection · Proc. ACM Program. Lang. 2017 |
Parallel and multicore computing › concurrent programming
concurrency bugs |
0.3 | 1 | 2017 | PARSNIP: performant architecture for race safety with no impact on precision · MICRO 2017 |
Parallel and multicore computing › parallel computing › parallel program debugging
data race detection |
0.3 | 1 | 2017 | PARSNIP: performant architecture for race safety with no impact on precision · MICRO 2017 |
Processor architecture and microarchitecture › debugging support
race detection hardware |
0.3 | 1 | 2017 | PARSNIP: performant architecture for race safety with no impact on precision · MICRO 2017 |
Runtime systems and virtual machines › virtual machine implementation
java virtual machine |
0.3 | 2 | 2017 | Low-level detection of language-level data races with LARD · ASPLOS 2014 Instrumentation bias for dynamic data race detection · Proc. ACM Program. Lang. 2017 |
Concurrent programming
concurrency bugs |
0.1 | 2 | 2011 | Composable specifications for structured shared-memory communication · OOPSLA 2010 Isolating and understanding concurrency errors using reconstructed execution fragments · PLDI 2011 |
Concurrent programming › concurrency bug detection › data race detection
hardware-assisted race detection |
0.1 | 1 | 2012 | RADISH: Always-on sound and complete race detection in software and hardware · ISCA 2012 |
Debugging and program repair
concurrent program debugging |
0.1 | 1 | 2011 | Isolating and understanding concurrency errors using reconstructed execution fragments · PLDI 2011 |
Program analysis
dynamic analysis |
0.1 | 1 | 2010 | Composable specifications for structured shared-memory communication · OOPSLA 2010 |
Concurrent programming › concurrency bugs
data races |
0.0 | 1 | 2011 | Isolating and understanding concurrency errors using reconstructed execution fragments · PLDI 2011 |
Programming languages and type systems
specification language |
0.0 | 1 | 2010 | Composable specifications for structured shared-memory communication · OOPSLA 2010 |
Methods — techniques the papers use, named apart from their topics
dynamic analysis · 0.4instrumentation bias · 0.3cooperative ownership-based synchronization · 0.3simulation · 0.2hardware race detector · 0.2inter-thread communication analysis · 0.1formal semantics · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Lightweight data race detection for production runs
Swarnendu Biswas, Man Cao, Minjia Zhang, Michael D. Bond, Benjamin P. Wood |
CC | 5 |
| 2017 | PARSNIP: performant architecture for race safety with no impact on precisionabstractData race detection is a useful dynamic analysis for multithreaded programs that is a key building block in record-and-replay, enforcing strong consistency models, and detecting concurrency bugs. Existing software race detectors are precise but slow, and hardware support for precise data race detection relies on assumptions like type safety that many programs violate in practice. Yuanfeng Peng, Benjamin P. Wood, Joseph Devietti |
MICRO | 2 |
| 2017 | Instrumentation bias for dynamic data race detectionabstractThis paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce synchronization to guard against metadata races that may corrupt analysis state and compromise soundness or completeness. Pessimistic analysis synchronization can account for nontrivial performance overhead in a data race detector. The core contribution of FIB is a novel cooperative ownership-based synchronization protocol whose states and transitions are derived purely from preexisting analysis metadata and logic in a standard data race detection algorithm. By exploiting work already done by the analysis, FIB ensures atomicity of dynamic analysis actions with zero additional time or space cost in the common case. Analysis of temporally thread-local or read-shared accesses completes safely with no synchronization. Uncommon write-sharing transitions require synchronous cross-thread coordination to ensure common cases may proceed synchronization-free. We implemented FIB in the Jikes RVM Java virtual machine. Experimental evaluation shows that FIB eliminates nearly all instrumentation atomicity costs on programs where data often experience windows of thread-local access. Adaptive extensions to the ownership policy effectively eliminate high coordination costs of the core ownership protocol on programs with high rates of serialized sharing. FIB outperforms a naive pessimistic synchronization scheme by 50% on average. Compared to a tuned optimistic metadata synchronization scheme based on conventional fine-grained atomic compare-and-swap operations, FIB is competitive overall, and up to 17% faster on some programs. Overall, FIB effectively exploits latent analysis and program invariants to bring strong integrity guarantees to an otherwise unsynchronized data race detection algorithm at minimal cost. Benjamin P. Wood, Man Cao, Michael D. Bond, Dan Grossman |
Proc. ACM Program. Lang. | 1 |
| 2014 | Low-level detection of language-level data races with LARDabstractResearchers have proposed always-on data-race exceptions as a way to avoid the ill effects of data races, but slow performance of accurate dynamic data-race detection remains a barrier to the adoption of always-on data-race exceptions. Proposals for accurate low-level (e.g., hardware) data-race detection have the potential to reduce this performance barrier. This paper explains why low-level data-race detectors are wrong for programs written in high-level languages (e.g., Java): they miss true data races and report false data races in these programs. To bring the benefits of low-level data-race detection to high-level languages, we design low-level abstractable race detection (LARD), an extension of the interface between low-level data-race detectors and run-time systems that enables accurate language-level data-race detection using low-level detection mechanisms. We implement accurate LARD data-race exception support for Java, coupling a modified Jikes RVM Java virtual machine and a simulated hardware race detector. We evaluate our detector's accuracy against an accurate dynamic Java data-race detector and other low-level race detectors without LARD, showing that naive accurate nlow-level data-race detectors suffer from many missed and false language-level races in practice, and that LARD prevents this inaccuracy. Benjamin P. Wood, Luis Ceze, Dan Grossman |
ASPLOS | 1 |
| 2012 | Cloud Types for Eventual Consistency
Sebastian Burckhardt, Manuel Fähndrich, Daan Leijen, Benjamin P. Wood |
ECOOP | 4 |
| 2012 | RADISH: Always-on sound and complete race detection in software and hardwareabstractData-race freedom is a valuable safety property for multithreaded programs that helps with catching bugs, simplifying memory consistency model semantics, and verifying and enforcing both atomicity and determinism. Unfortunately, existing software-only dynamic race detectors are precise but slow; proposals with hardware support offer higher performance but are imprecise. Both precision and performance are necessary to achieve the many advantages always-on dynamic race detection could provide. Joseph Devietti, Benjamin P. Wood, Karin Strauss, Luis Ceze, Dan Grossman, Shaz Qadeer |
ISCA | 2 |
| 2011 | Isolating and understanding concurrency errors using reconstructed execution fragmentsabstractIn this paper we propose Recon, a new general approach to concurrency debugging. Recon goes beyond just detecting bugs, it also presents to the programmer short fragments of buggy execution schedules that illustrate how and why bugs happened. These fragments, called reconstructions, are inferred from inter-thread communication surrounding the root cause of a bug and significantly simplify the process of understanding bugs. Brandon Lucia, Benjamin P. Wood, Luis Ceze |
PLDI | 2 |
| 2010 | Composable specifications for structured shared-memory communicationabstractIn this paper we propose a communication-centric approach to specifying and checking how multithreaded programs use shared memory to perform inter-thread communication. Our approach complements past efforts for improving the safety of multithreaded programs such as race detection and atomicity checking. Unlike prior work, we focus on what pieces of code are allowed to communicate with one another, as opposed to declaring what data items are shared or what code blocks should be atomic. We develop a language that supports composable specifications at multiple levels of abstraction and that allows libraries to specify whether or not shared-memory communication is exposed to clients. The precise meaning of a specification is given with a formal semantics we present. We have developed a dynamic-analysis tool for Java that observes program execution to see if it obeys a specification. We report results for using the tool on several benchmark programs to which we added specifications, concluding that our approach matches the modular structure of multithreaded applications and that our tool is performant enough for use in development and testing. Benjamin P. Wood, Adrian Sampson, Luis Ceze, Dan Grossman |
OOPSLA | 1 |