Documentation
User Guide

MPI-HMMER is primarily a parallel implementation of the two search functions of HMMER, hmmsearch and hmmpfam. The other utilities within the HMMER suite are still available, but are not currently implemented within MPI. We assume that the user has a working MPI implementation and has either compiled MPI-HMMER from source or has installed one of the prebuilt RPMs. Here we detail options that are specific to MPI-HMMER. For non-MPI options (such as the HMMER options) we refer the reader to the HMMER User's Guide.


Using hmmsearch

The hmmsearch utility functions similarly to the PVM
implementation. As an example, consider a search using 16 nodes:

mpirun -np 16 -machinefile <machines> ./hmmsearch
--mpi /path/to/HMM/file /path/to/sequence/database

Most of the output is formatted the same way as HMMER's.
However, we make some modifications to the header.


Using hmmpfam

Because hmmpfam is more IO intensive than hmmsearch, we retainthe requirement that the database be made available to all nodes participating in the computation. This is typically done with a network file system, but can be local to all nodes if needed.

First, the HMM database must be indexed:
./hmmindex /path/to/HMM/file

Just like in the PVM implementation, this will create an index
of the HMM file that you intend to search against. This step is
only required the first time you use a particular database.
Subsequent searches can reuse the resulting .ssi file.

To run hmmpfam, perform the following:
mpirun -np 16 -machinefile <machines> ./hmmpfam
--mpi /path/to/HMM/database /path/to/search/sequence