Data Races and the Discrete Resource-time Tradeoff Problem with Resource Reuse over Paths
Data Races and the Discrete Resource-time Tradeoff Problem with Resource Reuse over Paths
复制标题
数据争用和路径上资源重用的离散资源时间权衡问题
DOI:
10.1145/3323165.3323209
复制
发表时间:
2019
期刊:
影响因子:
--
通讯作者:
Skiena, Steven
中科院分区:
文献类型:
--
作者:
Das, Rathish;Tsai, Shih-Yu;Duppala, Sharmila;Lynch, Jayson;Arkin, Esther M.;Chowdhury, Rezaul;Mitchell, Joseph S.;Skiena, Steven
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.
登录
查看更多内容
DOI:
--
发表时间:
2004
期刊:
影响因子:
--
作者:
P. Dutot;G. Mounié;D. Trystram
通讯作者:
D. Trystram
DOI:
10.1145/2814270.2814294
发表时间:
2015
期刊:
Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications
影响因子:
--
作者:
M. Aigner;C. Kirsch;Michael Lippautz;A. Sokolova
通讯作者:
A. Sokolova
影响因子:
5.3
作者:
K. Jansen;Hu Zhang
通讯作者:
Hu Zhang
DOI:
--
发表时间:
1999
期刊:
European Conference on Parallel Processing
影响因子:
--
作者:
E. Blayo;L. Debreu;G. Mounié;D. Trystram
通讯作者:
D. Trystram
DOI:
--
发表时间:
1977
期刊:
影响因子:
--
作者:
D. Panagiotakopoulos
通讯作者:
D. Panagiotakopoulos