Parallel Race Detection with Futures

Yifan Xu,Kyle Singer,I-Ting Angelina Lee
2020-01-01
Abstract:The use of futures can generate arbitrary dependences in the computation, making it difficult to race detect efficiently. Algorithms proposed by prior work to race detect programs with futures all have to execute the program sequentially. We propose F-Order, the first known parallel race detection algorithm that detects races on programs that use futures. Given a computation with work $T_1$ and span $T_\infty$, our algorithm race detects in time $O((T_1 \lg{\hat{k}} + k^2) / P + T_\infty (k + \lg{r} \lg{\hat{k}}))$ on $P$ processors, where $k$ is the number of future operations, $r$ is the maximum number of readers per memory location, and $\hat{k}$ is the maximum number of future operations done by a single future task, which is typically a small constant. We have also implemented a prototype system based on the proposed algorithm and empirically demonstrates its practical efficiency and scalability.#N#Yifan XuWashington University in St. LouisKyle SingerWashington Un
What problem does this paper attempt to address?