Mon 19 Jun 2023 17:00 - 17:20 at Cypress 2 - PLDI: Concurrency & Parallelism Chair(s): Calin Cascaval

Many concurrent programs assign priorities to threads to improve responsiveness. When used in conjunction with synchronization mechanisms such as mutexes and condition variables, however, priorities can lead to priority inversions, in which high-priority threads are delayed by low-priority ones. Priority inversions in the use of mutexes are easily handled using dynamic techniques such as priority inheritance, but priority inversions in the use of condition variables are not well-studied and dynamic techniques are not suitable.

In this work, we use a combination of static and dynamic techniques to prevent priority inversion in code that uses mutexes and condition variables. A type system ensures that condition variables are used safely, even while dynamic techniques change thread priorities at runtime to eliminate priority inversions in the use of mutexes. We prove the soundness of our system, using a model of priority inversions based on cost models for parallel programs. To show that the type system is practical to implement, we encode it within the type systems of Rust and C++, and show that the restrictions are not overly burdensome by writing sizeable case studies using these encodings, including porting the Memcached object server to use our C++ implementation.

Mon 19 Jun

Displayed time zone: Eastern Time (US & Canada) change

16:00 - 18:00
PLDI: Concurrency & ParallelismPLDI Research Papers at Cypress 2
Chair(s): Calin Cascaval Google Research

#pldi-mon-1600-concurrency-cypress Discord icon small YouTube icon small

16:00
20m
Talk
Type-Checking CRDT Convergence
PLDI Research Papers
George Zakhour University of St.Gallen, Pascal Weisenburger University of St. Gallen, Guido Salvaneschi University of St. Gallen
DOI Pre-print
16:20
20m
Talk
Reliable Actors with Retry Orchestration
PLDI Research Papers
Olivier Tardieu IBM Research, David Grove IBM Research, Gheorghe-Teodor Bercea IBM Research, Paul Castro IBM Research, Jaroslaw Cwiklik IBM Research, Edward Epstein IBM Research
DOI
16:40
20m
Talk
Dynamic Partial Order Reduction for Checking Correctness Against Transaction Isolation Levels
PLDI Research Papers
Ahmed Bouajjani IRIF, Université Paris Diderot, Constantin Enea LIX, CNRS, Ecole Polytechnique, Enrique Román-Calvo Université Paris Cité - CNRS - IRIF
DOI
17:00
20m
Talk
Responsive Parallelism with Synchronization
PLDI Research Papers
Stefan K. Muller Illinois Institute of Technology, Kyle Singer Washington University in St. Louis, USA, Devyn Terra Keeney Illinois Institute of Technology, Andrew Neth Illinois Institute of Technology, Kunal Agrawal Washington University in St. Louis, USA, I-Ting Angelina Lee Washington University in St. Louis, USA, Umut A. Acar Carnegie Mellon University
DOI
17:20
20m
Talk
Parallelism in a Region Inference Context
PLDI Research Papers
Martin Elsman University of Copenhagen, Denmark, Troels Henriksen University of Copenhagen, Denmark
DOI
17:40
20m
Talk
Performal: Formal Verification of Latency Properties for Distributed Systems
PLDI Research Papers
Nuda Zhang University of Michigan, Upamanyu Sharma Massachusetts Institute of Technology, Manos Kapritsos University of Michigan, USA
DOI