Exabayes

ExaBayes is a tool for Bayesian phylogenetic analyses. It implements a Markov chain Monte Carlo sampling approach that allows to determine the posterior probability of a tree (resp., topology) and various evolutionary model parameters, for instance, branch lengths or substitution rates. Similar approaches are implemented in BEAST or MrBayes. ExaBayes has heavily drawn inspiration specifically from the latter one.

ExaBayes comes with the most commonly used evolutionary models, such as the generalized time reversible model (GTR) of character substitution, the discretized model of among site rate heterogeneity and estimates trees with unconstrained branch lengths. For clocked tree models or less parameter-rich substitution models, we refer you to the established tools.

The distinguishing feature of ExaBayes is its capability to handle enormous datasets efficiently. ExaBayes provides an implementation of data parallelism using the Message Passing Interface (MPI). This means, that if you conduct your analysis on a computing cluster composed of several machines (a.k.a. nodes), the memory needed to evaluate the likelihood of trees and parameters given a large alignment can be spread out across multiple computing nodes. In conclusion, the size of the concatenated alignment ExaBayes can handle is only limited by the combined main memory of your entire computing cluster.

Aside from that ExaBayes also implements

  • chain-level and run-level parallelism,
  • techniques to trade runtime for reduced memory footprint,
  • a subtree equality vector approach that reduces memory without loss of runtime,
  • a native AVX implementation for evaluating likelihood and parsimony scores (i.e., ExaBayes makes full use of your cutting-edge CPU),
  • techniques to efficiently handle an arbitrary number of partitions.

We use the highly efficient parsimony and likelihood implementation of RAxML. Many of the techniques described above are adapted from or inspired by our experiences with large-scale maximum likelihood inferences using RAxML-Light/ExaML.

The ExaBayes package contains all tools necessary for post-processing your sampled chains. For visualization of parameter distributions, we recommend Tracer and FigTree (for which ExaBayes parameter files are compatible).

Documentation

Utilisation

  • Chargement du module

Pour la version MPI

$ module load bio/exabayes-mpi

Pour la version séquentiel

$ module load bio/exabayes-seq
  • Execution séquentiel
exabayes_seq.sge
!/bin/bash -l
 
#$ -l h_rt=2:00:0
#$ -o $JOB_NAME.o$JOB_ID
#$ -e $JOB_NAME.e$JOB_ID
#$ -N job_exabayes_seq
#$ -V
 
module load bio/exabayes-seq
 
yggdrasil -f aln.phy -m DNA -n myRun -s $RANDOM
  • Exécution parallèle
exabayes_mpi.sge
#!/bin/bash -l
#$ -q normal15d
#$ -V
#$ -N job_exabayes_mpi
#$ -pe impi_tight 32
#$ -o $JOB_NAME.$JOB_ID.out
 
module load bio/exabayes-mpi
 
mpirun -np $NSLOTS exabayes -f aln.phy -q aln.part -n myRun -s $RANDOM -c config.nex -R 4