EDBT 2026 Demo / reviewers in the wild / expert
Mark Plesko
dblp:59/1660
· DBLP profile ↗
2ranked-venue papers
0as first author
0since 2021 · last 2006
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2
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
2 papers |
Concurrent programming · 38% Compilers and program optimization · 35% Runtime systems and virtual machines · 19% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Parallel and multicore computing · 100% |
Topics — the 7 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming › atomicity
atomic sections |
0.1 | 1 | 2006 | Optimizing memory transactions · PLDI 2006 |
Runtime systems and virtual machines
garbage collection |
0.1 | 1 | 2006 | Optimizing memory transactions · PLDI 2006 |
Concurrent programming
transactional memory |
0.1 | 1 | 2006 | Optimizing memory transactions · PLDI 2006 |
Compilers and program optimization
compiler correctness |
0.0 | 1 | 2000 | A certifying compiler for Java · PLDI 2000 |
Program verification
proof-carrying code |
0.0 | 1 | 2000 | A certifying compiler for Java · PLDI 2000 |
Compilers and program optimization
verified compilation |
0.0 | 1 | 2000 | A certifying compiler for Java · PLDI 2000 |
Systems and software security
memory safety |
0.0 | 1 | 2000 | A certifying compiler for Java · PLDI 2000 |
Methods — techniques the papers use, named apart from their topics
runtime filtering · 0.1direct access implementation · 0.1type inference · 0.1proof checking · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2006 | Optimizing memory transactionsabstractAtomic blocks allow programmers to delimit sections of code as 'atomic', leaving the language's implementation to enforce atomicity. Existing work has shown how to implement atomic blocks over word-based transactional memory that provides scalable multi-processor performance without requiring changes to the basic structure of objects in the heap. However, these implementations perform poorly because they interpose on all accesses to shared memory in the atomic block, redirecting updates to a thread-private log which must be searched by reads in the block and later reconciled with the heap when leaving the block.This paper takes a four-pronged approach to improving performance: (1) we introduce a new 'direct access' implementation that avoids searching thread-private logs, (2) we develop compiler optimizations to reduce the amount of logging (e.g. when a thread accesses the same data repeatedly in an atomic block), (3) we use runtime filtering to detect duplicate log entries that are missed statically, and (4) we present a series of GC-time techniques to compact the logs generated by long-running atomic blocks.Our implementation supports short-running scalable concurrent benchmarks with less than 50\% overhead over a non-thread-safe baseline. We support long atomic blocks containing millions of shared memory accesses with a 2.5-4.5x slowdown. Tim Harris 0001, Mark Plesko, Avraham Shinnar, David Tarditi |
PLDI | 2 |
| 2000 | A certifying compiler for JavaabstractThis paper presents the initial results of a project to determine if the techniques of proof-carrying code and certifying compilers can be applied to programming languages of realistic size and complexity. The experiment shows that: (1) it is possible to implement a certifying native-code compiler for a large subset of the Java programming language; (2) the compiler is freely able to apply many standard local and global optimizations; and (3) the PCC binaries it produces are of reasonable size and can be rapidly checked for type safety by a small proof-checker. This paper also presents further evidence that PCC provides several advantages for compiler development. In particular, generating proofs of the target code helps to identify compiler bugs, many of which would have been dicult to discover by testing. Christopher Colby, Peter Lee 0001, George C. Necula, Fred Blau, Mark Plesko, Kenneth Cline |
PLDI | 5 |