Statically Optimal Binary Search Tree Computation Using Non-Serial Polyadic Dynamic Programming on GPU's

被引:1
作者
Wani, Mohsin Altaf [1 ]
Ahmad, Manzoor [2 ]
机构
[1] Univ Kashmir, Dept Comp Sci, South Campus, Srinagar, Jammu & Kashmir, India
[2] Univ Kashmir, Srinagar, Jammu & Kashmir, India
关键词
CUDA; GPU; Granularity; Knuth's Modification; Non-Serial Polyadic Dynamic Programming; Optimal Binary Search Tree; Speed-Up; PERFORMANCE; ALGORITHM;
D O I
10.4018/IJGHPC.2019010104
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Modern GPUs perform computation at a very high rate when compared to CPUs; as a result, they are increasingly used for general purpose parallel computation. Determining if a statically optimal binary search tree is an optimization problem to find the optimal arrangement of nodes in a binary search tree so that average search time is minimized. Knuth's modification to the dynamic programming algorithm improves the time complexity to O(n(2)). We develop a multiple GPU-based implementation of this algorithm using different approaches. Using suitable GPU implementation for a given workload provides a speedup of up to four times over other GPU based implementations. We are able to achieve a speedup factor of 409 on older GTX 570 and a speedup factor of 745 is achieved on a more modern GTX 1060 when compared to a conventional single threaded CPU based implementation.
引用
收藏
页码:49 / 70
页数:22
相关论文
共 25 条
[1]   An Adaptative Multi-GPU based Branch-and-Bound. A Case Study: the Flow-Shop Scheduling Problem [J].
Chakroun, I. ;
Melab, N. .
2012 IEEE 14TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS & 2012 IEEE 9TH INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE AND SYSTEMS (HPCC-ICESS), 2012, :389-395
[2]  
Cormen T. H., 1990, Introduction to Algorithms
[3]   A GPU-based Branch-and-Bound algorithm using Integer-Vector-Matrix data structure [J].
Gmys, J. ;
Mezmaz, M. ;
Melab, N. ;
Tuyttens, D. .
PARALLEL COMPUTING, 2016, 59 :119-139
[4]  
Knuth D. E., 1971, Acta Informatica, V1, P14, DOI 10.1007/BF00264289
[5]  
Knuth D. E., 1973, The Art of Computer Programming., V2nd
[6]   A cost-optimal parallel algorithm for the 0-1 knapsack problem and its performance on multicore CPU and GPU implementations [J].
Li, Kenli ;
Liu, Jing ;
Wan, Lanjun ;
Yin, Shu ;
Li, Keqin .
PARALLEL COMPUTING, 2015, 43 :27-42
[7]  
Li Liu, 2011, 2011 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum, P460, DOI 10.1109/IPDPS.2011.186
[8]   Parallel dynamic programming for solving the optimal search binary tree problem on CGM [J].
Myoupo, Jean Frédéric ;
Tchendji, Vianney Kengne .
International Journal of High Performance Computing and Networking, 2014, 7 (04) :269-280
[9]  
Neapolitan R., 2003, Foundations of Algorithms Using C++ Pseudocode, V3rd
[10]   Deficiency in Galectin-3 Promotes Hepatic Injury in CDAA Diet-Induced Nonalcoholic Fatty Liver Disease [J].
Nomoto, Kazuhiro ;
Nishida, Takeshi ;
Nakanishi, Yuko ;
Fujimoto, Makoto ;
Takasaki, Ichiro ;
Tabuchi, Yoshiaki ;
Tsuneyama, Koichi .
SCIENTIFIC WORLD JOURNAL, 2012, :1-9