• 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