Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs

Compound comparison is an important task for the computational chemistry. By the comparison results, potential inhibitors can be found and then used for the pharmacy experiments. The time complexity of a pairwise compound comparison is O(n2), where n is the maximal length of compounds. In general, t...

Full description

Saved in:
Bibliographic Details
Main Authors: Chun-Yuan Lin, Chung-Hung Wang, Che-Lun Hung, Yu-Shiang Lin
Format: Article
Language:English
Published: Wiley 2015-01-01
Series:International Journal of Genomics
Online Access:http://dx.doi.org/10.1155/2015/950905
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1832553455181365248
author Chun-Yuan Lin
Chung-Hung Wang
Che-Lun Hung
Yu-Shiang Lin
author_facet Chun-Yuan Lin
Chung-Hung Wang
Che-Lun Hung
Yu-Shiang Lin
author_sort Chun-Yuan Lin
collection DOAJ
description Compound comparison is an important task for the computational chemistry. By the comparison results, potential inhibitors can be found and then used for the pharmacy experiments. The time complexity of a pairwise compound comparison is O(n2), where n is the maximal length of compounds. In general, the length of compounds is tens to hundreds, and the computation time is small. However, more and more compounds have been synthesized and extracted now, even more than tens of millions. Therefore, it still will be time-consuming when comparing with a large amount of compounds (seen as a multiple compound comparison problem, abbreviated to MCC). The intrinsic time complexity of MCC problem is O(k2n2) with k compounds of maximal length n. In this paper, we propose a GPU-based algorithm for MCC problem, called CUDA-MCC, on single- and multi-GPUs. Four LINGO-based load-balancing strategies are considered in CUDA-MCC in order to accelerate the computation speed among thread blocks on GPUs. CUDA-MCC was implemented by C+OpenMP+CUDA. CUDA-MCC achieved 45 times and 391 times faster than its CPU version on a single NVIDIA Tesla K20m GPU card and a dual-NVIDIA Tesla K20m GPU card, respectively, under the experimental results.
format Article
id doaj-art-399da2a9270f458a85a93a9250c13ad0
institution Kabale University
issn 2314-436X
2314-4378
language English
publishDate 2015-01-01
publisher Wiley
record_format Article
series International Journal of Genomics
spelling doaj-art-399da2a9270f458a85a93a9250c13ad02025-02-03T05:53:55ZengWileyInternational Journal of Genomics2314-436X2314-43782015-01-01201510.1155/2015/950905950905Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUsChun-Yuan Lin0Chung-Hung Wang1Che-Lun Hung2Yu-Shiang Lin3Department of Computer Science and Information Engineering, Chang Gung University, Taoyuan 33302, TaiwanDepartment of Computer Science and Information Engineering, Chang Gung University, Taoyuan 33302, TaiwanDepartment of Computer Science and Communication Engineering, Providence University, Taichung 43301, TaiwanDepartment of Computer Science, National Tsing Hua University, Hsinchu 30013, TaiwanCompound comparison is an important task for the computational chemistry. By the comparison results, potential inhibitors can be found and then used for the pharmacy experiments. The time complexity of a pairwise compound comparison is O(n2), where n is the maximal length of compounds. In general, the length of compounds is tens to hundreds, and the computation time is small. However, more and more compounds have been synthesized and extracted now, even more than tens of millions. Therefore, it still will be time-consuming when comparing with a large amount of compounds (seen as a multiple compound comparison problem, abbreviated to MCC). The intrinsic time complexity of MCC problem is O(k2n2) with k compounds of maximal length n. In this paper, we propose a GPU-based algorithm for MCC problem, called CUDA-MCC, on single- and multi-GPUs. Four LINGO-based load-balancing strategies are considered in CUDA-MCC in order to accelerate the computation speed among thread blocks on GPUs. CUDA-MCC was implemented by C+OpenMP+CUDA. CUDA-MCC achieved 45 times and 391 times faster than its CPU version on a single NVIDIA Tesla K20m GPU card and a dual-NVIDIA Tesla K20m GPU card, respectively, under the experimental results.http://dx.doi.org/10.1155/2015/950905
spellingShingle Chun-Yuan Lin
Chung-Hung Wang
Che-Lun Hung
Yu-Shiang Lin
Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
International Journal of Genomics
title Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
title_full Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
title_fullStr Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
title_full_unstemmed Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
title_short Accelerating Multiple Compound Comparison Using LINGO-Based Load-Balancing Strategies on Multi-GPUs
title_sort accelerating multiple compound comparison using lingo based load balancing strategies on multi gpus
url http://dx.doi.org/10.1155/2015/950905
work_keys_str_mv AT chunyuanlin acceleratingmultiplecompoundcomparisonusinglingobasedloadbalancingstrategiesonmultigpus
AT chunghungwang acceleratingmultiplecompoundcomparisonusinglingobasedloadbalancingstrategiesonmultigpus
AT chelunhung acceleratingmultiplecompoundcomparisonusinglingobasedloadbalancingstrategiesonmultigpus
AT yushianglin acceleratingmultiplecompoundcomparisonusinglingobasedloadbalancingstrategiesonmultigpus