Data Races and the Discrete Resource-time Tradeoff Problem with Resource Reuse over Paths

Rathish Das, Jayson Lynch, Shih Yu Tsai, Esther M. Arkin, Sharmila Duppala, Rezaul Chowdhury, Joseph S.B. Mitchell, Steven Skiena

研究成果: Conference contribution同行評審

4 引文 斯高帕斯(Scopus)

摘要

A determinacy race occurs if two or more logically parallel instructions access the same memory location and at least one of them tries to modify its content. Races are often undesirable as they can lead to nondeterministic and incorrect program behavior. A data race is a special case of a determinacy race which can be eliminated by associating a mutual-exclusion lock with the memory location in question or allowing atomic accesses to it. However, such solutions can reduce parallelism by serializing all accesses to that location. For associative and commutative updates to a memory cell, one can instead use a reducer, which allows parallel race-free updates at the expense of using some extra space. More extra space usually leads to more parallel updates, which in turn contributes to potentially lowering the overall execution time of the program. We start by asking the following question. Given a fixed budget of extra space for mitigating the cost of races in a parallel program, which memory locations should be assigned reducers and how should the space be distributed among those reducers in order to minimize the overall running time? We argue that under reasonable conditions the races of a program can be captured by a directed acyclic graph (DAG), with nodes representing memory cells and arcs representing read-write dependencies between cells. We then formulate our original question as an optimization problem on this DAG. We concentrate on a variation of this problem where space reuse among reducers is allowed by routing every unit of extra space along a (possibly different) source to sink path of the DAG and using it in the construction of multiple (possibly zero) reducers along the path. We consider two different ways of constructing a reducer and the corresponding duration functions (i.e., reduction time as a function of space budget). We generalize our race-avoiding space-time tradeoff problem to a discrete resource-time tradeoff problem with general non-increasing duration functions and resource reuse over paths of the given DAG. For general DAGs, we show that even if the entire DAG is available offline the problem is strongly NP-hard under all three duration functions, and we give approximation algorithms for solving the corresponding optimization problems. We also prove hardness of approximation for the general resource-time tradeoff problem and give a pseudo-polynomial time algorithm for series-parallel DAGs.

原文English
主出版物標題SPAA 2019 - Proceedings of the 31st ACM Symposium on Parallelism in Algorithms and Architectures
發行者Association for Computing Machinery
頁面359-368
頁數10
ISBN(電子)9781450361842
DOIs
出版狀態Published - 17 6月 2019
事件31st ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2019 - Phoenix, 美國
持續時間: 22 6月 201924 6月 2019

出版系列

名字Annual ACM Symposium on Parallelism in Algorithms and Architectures

Conference

Conference31st ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2019
國家/地區美國
城市Phoenix
期間22/06/1924/06/19

指紋

深入研究「Data Races and the Discrete Resource-time Tradeoff Problem with Resource Reuse over Paths」主題。共同形成了獨特的指紋。

引用此