Responsive parallelism with futures and state
Responsive parallelism with futures and state
复制标题
与 future 和 state 的响应式并行
DOI:
10.1145/3385412.3386013
复制
发表时间:
2020
期刊:
影响因子:
--
通讯作者:
Lee, I-Ting Angelina
中科院分区:
文献类型:
--
作者:
Muller, Stefan K.;Singer, Kyle;Goldstein, Noah;Acar, Umut A.;Agrawal, Kunal;Lee, I-Ting Angelina
Motivated by the increasing shift to multicore computers, recent work has developed language support for responsive parallel applications that mix compute-intensive tasks with latency-sensitive, usually interactive, tasks. These developments include calculi that allow assigning priorities to threads, type systems that can rule out priority inversions, and accompanying cost models for predicting responsiveness. These advances share one important limitation: all of this work assumes purely functional programming. This is a significant restriction, because many realistic interactive applications, from games to robots to web servers, use mutable state, e.g., for communication between threads.In this paper, we lift the restriction concerning the use of state. We present λi4, a calculus with implicit parallelism in the form of prioritized futures and mutable state in the form of references. Because both futures and references are first-class values, λi4programs can exhibit complex dependencies, including interaction between threads and with the external world (users, network, etc). To reason about the responsiveness of λi4programs, we extend traditional graph-based cost models for parallelism to account for dependencies created via mutable state, and we present a type system to outlaw priority inversions that can lead to unbounded blocking. We show that these techniques are practical by implementing them in C++ and present an empirical evaluation.
登录
查看更多内容
DOI:
10.1145/2935764.2935801
发表时间:
2016
期刊:
Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures
影响因子:
--
作者:
Utterback, Robert;Agrawal, Kunal;Fineman, Jeremy T.;Lee, I-Ting Angelina
通讯作者:
Lee, I-Ting Angelina
DOI:
--
发表时间:
2009
期刊:
ACM-SIGACT Symposium on Principles of Programming Languages
影响因子:
--
作者:
Ruy Ley;Umut A. Acar;M. Fluet
通讯作者:
M. Fluet
DOI:
--
发表时间:
2016
期刊:
ACM SIGPLAN International Conference on Functional Programming
影响因子:
--
作者:
Umut A. Acar;A. Charguéraud;Mike Rainey;Filip Sieczkowski
通讯作者:
Filip Sieczkowski
影响因子:
--
作者:
Tiago Cogumbreiro;R. Surendran;F. Martins;Vivek Sarkar;V. Vasconcelos;M. Grossman
通讯作者:
M. Grossman
DOI:
10.1145/3062341.3062370
发表时间:
2017
期刊:
Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation
影响因子:
--
作者:
Stefan K. Muller;Umut A. Acar;R. Harper
通讯作者:
R. Harper