DocumentCode :
2906536
Title :
Optimizing Dynamic Programming on Graphics Processing Units via Adaptive Thread-Level Parallelism
Author :
Wu, Chao-Chin ; Ke, Jenn-Yang ; Lin, Heshan ; Feng, Wu-chun
Author_Institution :
Dept. of Comput. Sci. & Inf. Eng., Nat. Changhua Univ. of Educ., Changhua, Taiwan
fYear :
2011
fDate :
7-9 Dec. 2011
Firstpage :
96
Lastpage :
103
Abstract :
Dynamic programming (DP) is an important computational method for solving a wide variety of discrete optimization problems such as scheduling, string editing, packaging, and inventory management. In general, DP is classified into four categories based on the characteristics of the optimization equation. Because applications that are classified in the same category of DP have similar program behavior, the research community has sought to propose general solutions for parallelizing each category of DP. However, most existing studies focus on running DP on CPU-based parallel systems rather than on accelerating DP algorithms on the graphics processing unit (GPU). This paper presents the GPU acceleration of an important category of DP problems called nonserial polyadic dynamic programming (NPDP). In NPDP applications, the degree of parallelism varies significantly in different stages of computation, making it difficult to fully utilize the compute power of hundreds of processing cores in a GPU. To address this challenge, we propose a methodology that can adaptively adjust the thread-level parallelism in mapping a NPDP problem onto the GPU, thus providing sufficient and steady degrees of parallelism across different compute stages. We realize our approach in a real-world NPDP application -- the optimal matrix parenthesization problem. Experimental results demonstrate our method can achieve a speedup of 13.40 over the previously published GPU algorithm.
Keywords :
dynamic programming; graphics processing units; parallel processing; CPU-based parallel systems; adaptive thread-level parallelism; discrete optimization problems; graphics processing units; nonserial polyadic dynamic programming; optimal matrix parenthesization problem; optimization equation; Dynamic programming; Graphics processing unit; Heuristic algorithms; Instruction sets; Kernel; Niobium; Parallel processing; GPU; dynamic programming; optimization; parallel computing; parallelism;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Systems (ICPADS), 2011 IEEE 17th International Conference on
Conference_Location :
Tainan
ISSN :
1521-9097
Print_ISBN :
978-1-4577-1875-5
Type :
conf
DOI :
10.1109/ICPADS.2011.92
Filename :
6121265
Link To Document :
بازگشت