title: Efficient implementation of MrBayes on multi-GPU.
abstract: MrBayes, using Metropolis-coupled Markov chain Monte Carlo (MCMCMC or (MC)(3)), is a popular program for Bayesian inference. As a leading method of using DNA data to infer phylogeny, the (MC)(3) Bayesian algorithm and its improved and parallel versions are now not fast enough for biologists to analyze massive real-world DNA data. Recently, graphics processor unit (GPU) has shown its power as a coprocessor (or rather, an accelerator) in many fields. This article describes an efficient implementation a(MC)(3) (aMCMCMC) for MrBayes (MC)(3) on compute unified device architecture. By dynamically adjusting the task granularity to adapt to input data size and hardware configuration, it makes full use of GPU cores with different data sets. An adaptive method is also developed to split and combine DNA sequences to make full use of a large number of GPU cards. Furthermore, a new "node-by-node" task scheduling strategy is developed to improve concurrency, and several optimizing methods are used to reduce extra overhead. Experimental results show that a(MC)(3) achieves up to 63× speedup over serial MrBayes on a single machine with one GPU card, and up to 170× speedup with four GPU cards, and up to 478× speedup with a 32-node GPU cluster. a(MC)(3) is dramatically faster than all the previous (MC)(3) algorithms and scales well to large GPU clusters.
authors.affiliation: College of Information Technical Science, Nankai University, Tianjin, China.
authors.forename: Jie
authors.initials: J
authors.lastname: Bao
authors.forename: Hongju
authors.initials: H
authors.lastname: Xia
authors.forename: Jianfu
authors.initials: J
authors.lastname: Zhou
authors.forename: Xiaoguang
authors.initials: X
authors.lastname: Liu
authors.forename: Gang
authors.initials: G
authors.lastname: Wang
mesh_terms: D000465:Algorithms; D001499:Bayes Theorem; D016000:Cluster Analysis; D019295:Computational Biology / Q000379:methods*; D003196:Computer Graphics; D007091:Image Processing, Computer-Assisted; D008390:Markov Chains; D009010:Monte Carlo Method; D010802:Phylogeny; D017422:Sequence Analysis, DNA; D012984:Software
keywords: GPU; MrBayes; adaptive task decomposition; task scheduling