EDBT 2026 Demo / reviewers in the wild / expert
Bill McCloskey
dblp:82/4731
· DBLP profile ↗
7ranked-venue papers
3as 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 · 6 · 3 first-author · 1 since 2021Systems, architecture and hardware · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1
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
1 paper |
Memory systems · 61% Cloud and datacenter computing · 39% | |
| Software engineering, system software, and programming languages
3 papers |
Program analysis · 41% Concurrent programming · 35% Software maintenance and evolution · 15% |
Topics — the 11 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems
DRAM |
0.7 | 1 | 2023 | Towards an Adaptable Systems Architecture for Memory Tiering at Warehouse-Scale · ASPLOS (3) 2023 |
Memory systems
tiered memory |
0.7 | 1 | 2023 | Towards an Adaptable Systems Architecture for Memory Tiering at Warehouse-Scale · ASPLOS (3) 2023 |
Cloud and datacenter computing
warehouse-scale computing |
0.7 | 1 | 2023 | Towards an Adaptable Systems Architecture for Memory Tiering at Warehouse-Scale · ASPLOS (3) 2023 |
Cloud and datacenter computing › resource management
datacenter memory management |
0.2 | 1 | 2023 | Towards an Adaptable Systems Architecture for Memory Tiering at Warehouse-Scale · ASPLOS (3) 2023 |
Program analysis › static analysis
abstract interpretation |
0.1 | 1 | 2008 | Lifting abstract interpreters to quantified logical domains · POPL 2008 |
Concurrent programming › atomicity
atomic sections |
0.1 | 1 | 2006 | Autolocker: synchronization inference for atomic sections · POPL 2006 |
Program analysis
static analysis |
0.1 | 1 | 2006 | Autolocker: synchronization inference for atomic sections · POPL 2006 |
Concurrent programming › synchronization
synchronization synthesis |
0.1 | 1 | 2006 | Autolocker: synchronization inference for atomic sections · POPL 2006 |
Software maintenance and evolution
refactoring |
0.1 | 1 | 2005 | ASTEC: a new approach to refactoring C · ESEC/SIGSOFT FSE 2005 |
Programming languages and type systems
language design |
0.0 | 1 | 2005 | ASTEC: a new approach to refactoring C · ESEC/SIGSOFT FSE 2005 |
Compilers and program optimization › program transformation
source-to-source transformation |
0.0 | 1 | 2005 | ASTEC: a new approach to refactoring C · ESEC/SIGSOFT FSE 2005 |
Methods — techniques the papers use, named apart from their topics
application-transparent tiering · 0.7under-approximation · 0.1over-approximation · 0.1lattice theory · 0.1program analysis · 0.1program transformation · 0.1macro analysis · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Towards an Adaptable Systems Architecture for Memory Tiering at Warehouse-ScaleabstractFast DRAM increasingly dominates infrastructure spend in large scale computing environments and this trend will likely worsen without an architectural shift. The cost of deployed memory can be reduced by replacing part of the conventional DRAM with lower cost albeit slower memory media, thus creating a tiered memory system where both tiers are directly addressable and cached. But, this poses numerous challenges in a highly multi-tenant warehouse-scale computing setting. The diversity and scale of its applications motivates an application-transparent solution in the general case, adaptable to specific workload demands. Padmapriya Duraisamy, Scott Hare, Ravi Rajwar, David E. Culler, Zhiyi Xu, Jianing Fan, Chris Kennelly, Bill McCloskey, Danijela Mijailovic, Brian Morris, Chiranjit Mukherjee, Jingliang Ren, Greg Thelen, Carlos Villavieja, Parthasarathy Ranganathan, Amin Vahdat |
ASPLOS (3) | 9 |
| 2010 | Statically Inferring Complex Heap, Array, and Numeric Invariants
Bill McCloskey, Thomas W. Reps, Shmuel Sagiv |
SAS | 1 |
| 2008 | Tax-and-spend: democratic scheduling for real-time garbage collectionabstractReal-time Garbage Collection (RTGC) has recently advanced to the point where it is being used in production for financial trading, military command-and-control, and telecommunications. However, among potential users of RTGC, there is enormous diversity in both application requirements and deployment environments. Joshua S. Auerbach, David F. Bacon, Perry Cheng, David Grove, Ben Biron, Charlie Gracie, Bill McCloskey, Aleksandar Micic, Ryan Sciampacone |
EMSOFT | 7 |
| 2008 | Lifting abstract interpreters to quantified logical domainsabstractWe describe a general technique for building abstract interpreters over powerful universally quantified abstract domains that leverage existing quantifier-free domains. Our quantified abstract domain can represent universally quantified facts like ∀i(0 ≤ i < n ⇒ α[i] = 0). The principal challenge in this effort is that, while most domains supply over-approximations of operations like join, meet, and variable elimination, working with the guards of quantified facts requires under-approximation. We present an automatic technique to convert the standard over-approximation operations provided with all domains into sound under-approximations. We establish the correctness of our abstract interpreters by identifying two lattices---one that establishes the soundness of the abstract interpreter and another that defines its precision, or completeness. Our experiments on a variety of programs using arrays and pointers (including several sorting algorithms) demonstrate the feasibility of the approach on challenging examples. Sumit Gulwani, Bill McCloskey, Ashish Tiwari 0001 |
POPL | 2 |
| 2006 | Autolocker: synchronization inference for atomic sectionsabstractThe movement to multi-core processors increases the need for simpler, more robust parallel programming models. Atomic sections have been widely recognized for their ease of use. They are simpler and safer to use than manual locking and they increase modularity. But existing proposals have several practical problems, including high overhead and poor interaction with I/O. We present pessimistic atomic sections, a fresh approach that retains many of the advantages of optimistic atomic sections as seen in "transactional memory" without sacrificing performance or compatibility. Pessimistic atomic sections employ the locking mechanisms familiar to programmers while relieving them of most burdens of lock-based programming, including deadlocks. Significantly, pessimistic atomic sections separate correctness from performance: they allow programmers to extract more parallelism via finer-grained locking without fear of introducing bugs. We believe this property is crucial for exploiting multi-core processor designs.We describe a tool, Autolocker, that automatically converts pessimistic atomic sections into standard lock-based code. Autolocker relies extensively on program analysis to determine a correct locking policy free of deadlocks and race conditions. We evaluate the expressiveness of Autolocker by modifying a 50,000 line high-performance web server to use atomic sections while retaining the original locking policy. We analyze Autolocker's performance using microbenchmarks, where Autolocker outperforms software transactional memory by more than a factor of 3. Bill McCloskey, David Gay, Eric A. Brewer |
POPL | 1 |
| 2005 | Thirty Years Is Long Enough: Getting Beyond C
Eric A. Brewer, Jeremy Condit, Bill McCloskey |
HotOS | 3 |
| 2005 | ASTEC: a new approach to refactoring CabstractThe C language is among the most widely used in the world, particularly for critical infrastructure software. C programs depend upon macros processed using the C preprocessor, but these macros are difficult to analyze and are often error-prone[4]. Existing tools that analyze and transform C source code have rudimentary support for the preprocessor, leading to obscure error messages and difficulty refactoring. We present a three part solution: (1) a replacement macro language, ASTEC, that addresses the most important important deficiencies of the preprocessor and that eliminates many of the errors it introduces; (2) a translator, MACROSCOPE, that converts existing code into ASTEC semi-automatically; and (3), an ASTEC-aware refactoring tool that handles preprocessor constructs naturally.ASTEC's primary benefits are its analyzability and its refactorability. We present several refactorings that are enabled by ASTEC. Additionally, ASTEC eliminates many of the sources of errors that can plague C preprocessor macros; Ernst et al.[4] estimate that more than 20% of macros may contain errors. In this paper, we describe our translation and refactoring tools and evaluate them on a suite of programs including OpenSSH and the Linux kernel. Bill McCloskey, Eric A. Brewer |
ESEC/SIGSOFT FSE | 1 |