The rapid growth in genomic pathogen data spurs the need for efficient inference techniques, such as Hamiltonian Monte Carlo (HMC) in a Bayesian framework, to estimate parameters of these phylogenetic models where the dimensions of the parameters increase with the number of sequences $N$. HMC requires repeated calculation of the gradient of the data log-likelihood with respect to (wrt) all branch-length-specific (BLS) parameters that traditionally takes $\mathcal{O}(N^2)$ operations using the standard pruning algorithm. A recent study proposes an approach to calculate this gradient in $\mathcal{O}(N)$, enabling researchers to take advantage of gradient-based samplers such as HMC. The CPU implementation of this approach makes the calculation of the gradient computationally tractable for nucleotide-based models but falls short in performance for larger state-space size models, such as codon models. Here, we describe novel massively parallel algorithms to calculate the gradient of the log-likelihood wrt all BLS parameters that take advantage of graphics processing units (GPUs) and result in many fold higher speedups over previous CPU implementations. We benchmark these GPU algorithms on three computing systems using three evolutionary inference examples: carnivores, dengue and yeast, and observe a greater than 128-fold speedup over the CPU implementation for codon-based models and greater than 8-fold speedup for nucleotide-based models. As a practical demonstration, we also estimate the timing of the first introduction of West Nile virus into the continental Unites States under a codon model with a relaxed molecular clock from 104 full viral genomes, an inference task previously intractable. We provide an implementation of our GPU algorithms in BEAGLE v4.0.0, an open source library for statistical phylogenetics that enables parallel calculations on multi-core CPUs and GPUs.
翻译:基因组病原体数据的快速增长促使人们需要高效的推断技术,例如,在巴伊西亚框架内的汉密尔顿蒙特卡洛(HMC),以估计这些植物基因模型的参数,在这些模型的参数的尺寸随着序列数的增加而增加。 基因基因组病原体数据的快速增长要求反复计算数据日志相似度的梯度,而传统上需要使用标准的理算算算算法,例如 $\mathcal{O}(N%2) 美元。最近的一项研究建议采用一种方法,用美元计算这个梯度的梯度,使研究人员能够利用以梯度为基础的采样器,如HMC。 基因组采用这种方法可以反复计算数据日志相似值的梯度,但对于较大的州空间模型,例如 codon 模型,我们描述新的大规模平行算法,用来计算日志速度梯度的梯度的梯度,所有BLIS值的梯度值加速度参数以美元计算为美元($mallalcalcal), 10, 也用来利用之前的Cralcial-rationalmoal oralal imal-deal imal imal deal imal intal imal im im impreducududududustrational im exal ex ex ex ex ex ex ex ex ex ex lautus ex laxxxx a a laxxxxxxxxxxxxxxxxxxxx 。</s>