Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Devyn Terra Keeney

dblp:344/5099 · DBLP profile ↗
← Back
1ranked-venue papers
0as first author
1since 2021 · last 2023
0009-0006-3343-6961ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 1 · 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.

Software engineering, system software, and programming languages
1 paper
Concurrent programming · 50% Programming languages and type systems · 50%

Topics — the 2 heaviest of 2, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Concurrent programming
synchronization
0.712023
Responsive Parallelism with Synchronization · Proc. ACM Program. Lang. 2023
Programming languages and type systems
type systems
0.712023
Responsive Parallelism with Synchronization · Proc. ACM Program. Lang. 2023

Methods — techniques the papers use, named apart from their topics

type system · 0.7static and dynamic techniques · 0.7
YearPublicationVenuePosition
2023 Responsive Parallelism with Synchronization
abstract
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.
Stefan K. Muller, Kyle Singer, Devyn Terra Keeney, Andrew Neth, Kunal Agrawal 0001, I-Ting Angelina Lee, Umut A. Acar
Proc. ACM Program. Lang.3