mpiBLAST is an MPI based parallel implementation of NCBI BLAST. The project consists of a pair of programs that replace formatdb and blastall with versions that execute BLAST jobs in parallel on a cluster of computers with MPI installed. There are two primary advantages to using mpiBLAST versus traditional BLAST.
First, mpiBLAST splits the database across each node in the cluster. Because each node's segment of the database is smaller it can usually reside in the buffer-cache, yielding a significant speedup due to the elimination of disk I/O. Second, it allows BLAST users to take advantage of efficient, low-cost Beowulf clusters because interprocessor communication demands are low.
mpiBLAST achieves super-linear speedup in situations where the database is too large to fit into RAM, and near linear speedup in other situations. It does not require a dedicated cluster.
· mpiBLAST requires that an MPI implementation is installed. Two free implementations are:
· MPICH - http://www-unix.mcs.anl.gov/mpi/
· LAM/MPI - http://www.lam-mpi.org
· In its most common configurations, mpiBLAST also requires that the computers have some shared storage directory. This can be an NFS mount, samba share, AFS, or any other type of shared network filesystem. The location of the shared directory must be specified in the ~/.ncbirc configuration file.
· To build mpiBLAST from source you will also need to compile a matching version of the NCBI Toolbox, available at ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools/
· A maximum of 250 database fragments can be created by mpiformatdb on most systems
· Tiny differences in e-value between NCBI BLAST and mpiBLAST may exist due to numerical instability in result processing. Most results are unaffected.
What's New in 1.4.0-pio Stable Release:
· This release adds parallel I/O.
What's New in 1.5.0 Beta 1 Development Release:
· Assorted enhancements and bugfixes.
· Updated dependencies on the NCBI toolkit.