EDBT 2026 Demo / reviewers in the wild / expert
Olivier Giroux
dblp:02/6625
· DBLP profile ↗
5ranked-venue papers
1as first author
1since 2021 · last 2022
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 1 first-author · 1 since 2021Systems, architecture and hardware · 4 · 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 architecture, parallel and distributed computing, and storage systems
3 papers |
GPUs and heterogeneous computing · 56% Memory systems · 36% Hardware accelerators and domain-specific architectures · 5% | |
| Software engineering, system software, and programming languages
3 papers |
Software testing · 66% Program verification · 22% Software maintenance and evolution · 12% |
Topics — the 8 heaviest of 10, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems › memory consistency
memory consistency model |
1.2 | 3 | 2022 | Mixed-proxy extensions for the NVIDIA PTX memory consistency model: industrial product · ISCA 2022 A Formal Analysis of the NVIDIA PTX Memory Consistency Model · ASPLOS 2019 Automated Synthesis of Comprehensive Memory Model Litmus Test Suites · ASPLOS 2017 |
GPUs and heterogeneous computing › GPU memory
GPU memory consistency |
1.0 | 2 | 2022 | Mixed-proxy extensions for the NVIDIA PTX memory consistency model: industrial product · ISCA 2022 A Formal Analysis of the NVIDIA PTX Memory Consistency Model · ASPLOS 2019 |
GPUs and heterogeneous computing › GPU memory
GPU memory model |
0.6 | 1 | 2022 | Mixed-proxy extensions for the NVIDIA PTX memory consistency model: industrial product · ISCA 2022 |
GPUs and heterogeneous computing
GPU programming |
0.4 | 1 | 2019 | A Formal Analysis of the NVIDIA PTX Memory Consistency Model · ASPLOS 2019 |
Software testing › test generation
automated test generation |
0.3 | 1 | 2017 | Automated Synthesis of Comprehensive Memory Model Litmus Test Suites · ASPLOS 2017 |
Hardware accelerators and domain-specific architectures
tensor accelerator |
0.2 | 1 | 2022 | Mixed-proxy extensions for the NVIDIA PTX memory consistency model: industrial product · ISCA 2022 |
Program verification › formal proof
mechanized proof |
0.1 | 1 | 2019 | A Formal Analysis of the NVIDIA PTX Memory Consistency Model · ASPLOS 2019 |
Software testing
regression testing |
0.1 | 1 | 2006 | Detecting increases in feature coupling using regression tests · SIGSOFT FSE 2006 |
Methods — techniques the papers use, named apart from their topics
coq · 0.8axiomatic modeling · 0.8alloy · 0.8randomization · 0.6black-box testing · 0.6regression testing · 0.1coupling detection · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Mixed-proxy extensions for the NVIDIA PTX memory consistency model: industrial productabstractIn recent years, there has been a trend towards the use of accelerators and architectural specialization to continue scaling performance in spite of a slowing of Moore's Law. GPUs have always relied on dedicated hardware for graphics workloads, but modern GPUs now also incorporate compute-domain accelerators such as NVIDIA's Tensor Cores for machine learning. For these accelerators to be successfully integrated into a general-purpose programming language such as C++ or CUDA, there must be a forward- and backward-compatible API for the functionality they provide. To the extent that all of these accelerators interact with program threads through memory, they should be incorporated into the GPU's memory consistency model. Unfortunately, the use of accelerators and/or special non-coherent paths into memory produces non-standard memory behavior that existing GPU memory models cannot capture. Daniel Lustig, Simon Cooksey, Olivier Giroux |
ISCA | 3 |
| 2020 | Speculative reconvergence for improved SIMT efficiencyabstractGPUs perform most efficiently when all threads in a warp execute the same sequence of instructions convergently. However, when threads in a warp encounter a divergent branch, the hardware serializes the execution of diverged paths. We consider a class of convergence opportunities wherein multiple threads are expected to eventually execute a given segment of code, but not all threads arrive at the same time, resulting in serialized duplicate execution of common code subsequences such as function calls and loop bodies. Our goal is to promote convergence by helping threads that execute common code arrive together before allowing execution to proceed. We propose a new user-guided compiler mechanism, Speculative Reconvergence, to help identify and exploit previously untapped convergence opportunities that increase SIMT efficiency and improve performance. For the set of workloads we study, we see improvements ranging from 10% to 3× in both SIMT efficiency and in performance. Sana Damani, Daniel R. Johnson, Mark Stephenson, Stephen W. Keckler, Eddie Q. Yan, Michael McKeown, Olivier Giroux |
CGO | 7 |
| 2019 | A Formal Analysis of the NVIDIA PTX Memory Consistency ModelabstractThis paper presents the first formal analysis of the official memory consistency model for the NVIDIA PTX virtual ISA. Like other GPU memory models, the PTX memory model is weakly ordered but provides scoped synchronization primitives that enable GPU program threads to communicate through memory. However, unlike some competing GPU memory models, PTX does not require data race freedom, and this results in PTX using a fundamentally different (and more complicated) set of rules in its memory model. As such, PTX has a clear need for a rigorous and reliable memory model testing and analysis infrastructure. We break our formal analysis of the PTX memory model into multiple steps that collectively demonstrate its rigor and validity. First, we adapt the English language specification from the public PTX documentation into a formal axiomatic model. Second, we derive an up-to-date presentation of an OpenCL-like scoped C++ model and develop a mapping from the synchronization primitives of that scoped C++ model onto PTX. Third, we use the Alloy relational modeling tool to empirically test the correctness of the mapping. Finally, we compile the model and mapping into Coq and build a full machine-checked proof that the mapping is sound for programs of any size. Our analysis demonstrates that in spite of issues in previous generations, the new NVIDIA PTX memory model is suitable as a sound compilation target for GPU programming languages such as CUDA. Daniel Lustig, Sameer D. Sahasrabuddhe, Olivier Giroux |
ASPLOS | 3 |
| 2017 | Automated Synthesis of Comprehensive Memory Model Litmus Test SuitesabstractThe memory consistency model is a fundamental part of any shared memory architecture or programming model. Modern weak memory models are notoriously difficult to define and to implement correctly. Most real-world programming languages, compilers, and (micro)architectures therefore rely heavily on black-box testing methodologies. The success of such techniques requires that the suite of litmus tests used to perform the testing be comprehensive--it should ideally stress all obscure corner cases of the model and of its implementation. Most litmus test suites today are generated from some combination of manual effort and randomization; however, the complex and subtle nature of contemporary memory models means that manual effort is both error-prone and subject to incomplete coverage. Daniel Lustig, Andrew Wright, Alexandros Papakonstantinou, Olivier Giroux |
ASPLOS | 4 |
| 2006 | Detecting increases in feature coupling using regression testsabstractRepeated changes to a software system can introduce small weaknesses such as unplanned dependencies between different parts of the system. While such problems usually go undetected, their cumulative effect can result in a noticeable decrease in the quality of a system. We present an approach to warn developers about increased coupling between the (potentially scattered) implementation of different features. Our automated approach can detect sections of the source code contributing to the increased coupling as soon as software changes are tested. Developers can then inspect the results to assess whether the quality of their changes is adequate. We have implemented our approach for C++ and integrated it with the development process of a proprietary 3D graphics software. We report on our evaluation of the approach in the field, and on a study showing that, for files in the target system, causing increases in feature coupling is a significant predictor of future modifications due to bug fixes. Olivier Giroux, Martin P. Robillard |
SIGSOFT FSE | 1 |