Dynamic Programming on a Shared-Memory Multiprocessor
暂无分享,去创建一个
Abstract Three new algorithms for solving dynamic programming problems on a shared-memory parallel computer are described. All three algorithms attempt to balance work load, while keeping synchronization cost low. In particular, for a multiprocessor having p processors, an analysis of the best algorithm shows that the arithmetic cost is O(n3 / 6p) and that the synchronization cost is O(/t|logCn/t|) if p ⪡ n, where C = (2p /t- 1)/(2p + 1) and n is the size of the problem. The low synchronization cost is important for machines where synchronization is expensive. Analysis and experiments show that the best algorithm is effective in balancing the work load and producing high efficiency.
[1] Ronald L. Rivest,et al. Introduction to Algorithms , 1990 .
[2] Yves Robert,et al. Dynamic programming on a ring of processors , 1989 .
[3] Wojciech Rytter,et al. On Efficient Parallel Computations for some Dynamic Programming Problems , 1988, Theor. Comput. Sci..