|
Profile hidden Markov models (profile HMMs) can be used to do
sensitive database searching using statistical descriptions of a
sequence family's consensus. HMMER is a freely distributable
implementation of profile HMM software for protein sequence
analysis.
The current version is HMMER 2.3.2 (3 Oct 2003), containing minor
bugfixes and updates for the May 2003 release of HMMER 2.3.
Text files associated with the HMMER 2.3.2 release:
[README]
[Installation]
[Release notes]
[License summary]
[GNU General Public License].
The HMMER User's Guide:
[PDF, 94 pages].
The theory behind profile HMMs:
R. Durbin, S. Eddy, A. Krogh, and G. Mitchison,
Biological sequence analysis: probabilistic models of proteins
and nucleic acids,
Cambridge University Press, 1998.
Other publications
from the Eddy group.
The current source code version:
hmmer-2.3.2.tar.gz.
For precompiled binaries, see the table below. All distributions
below come with full source code, the
User's Guide (PDF format), UNIX man pages, and other
documentation. Once you download, uncompress (gunzip), and un-tar (tar
xf), see the file
INSTALL
for quick installation instructions.
HMMER should compile cleanly on any UNIX platform, including Mac OS/X.
It should also compile on Microsoft Windows platforms, but
you would have to work around the GNU configure script and UNIX makefiles.
Porting to other non UNIX operating systems such as VAX/VMS
should not be difficult. The code is standard ANSI/POSIX C.
All binary distros are compiled with posix threads support for
multiprocessors (--enable-threads), and support for 64-bit
filesystems (--enable-lfs). Details on the host machine, OS, configuration options,
compiler, and compiler options are provided below each link. PVM
support for clusters (--enable-pvm) is only compiled into the GNU/Linux distribution;
build from source code if you want PVM support for other platforms.
If you are compiling on a host that we don't have a binary distro
for, and you want to contribute a binary distro for us to post here,
please see
these notes on how to do it.
- AMD Opteron/Linux
- Download:
hmmer-2.3.2.bin.amd-opteron-64-suse-linux.tar.gz
Opteron 242, 2x1.6 GHz; SUSE Linux; GCC 3.3.3; --enable-threads --enable-lfs
[Contributed by Martin Gollery, University of Nevada, Reno.]
RPMs built with the
Portland Group
C compiler are also available from Joe Landman and
Scalable Informatics, LLC:
you can download
hmmer-2.3.2-5pgi.x86_64_pgi.rpm from their site.
- AMD Opteron/Solaris
- Download:
hmmer-2.3.2.bin.amd64-solaris.tar.gz
SunOS 5.10; Sun /opt/SUNWspro/bin/cc -fast -xtarget=opteron -xarch=amd64 -x05
Contributed by Mithun Sridharan, Sun Microsystems GmbH, Walldorf Germany.
- Apple Macintosh PowerPC OS/X
- Download:
hmmer-2.3.2.bin.powerpc-apple-osx.tar.gz
Apple PowerPC; 2x G4/1.25Ghz; OS/X Darwin 6.8; --enable-threads --enable-lfs --enable-altivec; CFLAGS="-O"
Includes Altivec optimizations contributed by Erik Lindahl, Stanford University.
- Compaq Alpha Tru64
- Download:
hmmer-2.3.2.bin.alpha-tru64.tar.gz
Compaq Alpha ES40; Tru64 5.1B; --enable-threads --enable-lfs; CC=cc CFLAGS=-O
- Compaq Alpha Linux
- Download:
hmmer-2.3.2.bin.alpha-linux.tar.gz
Compaq Alpha ES40; Red Hat Alpha Linux 7.1; --enable-threads --enable-lfs; CFLAGS=-O
- Hewlett/Packard IA64 (Itanium2), Linux
- Download:
hmmer-2.3.2.bin.ia64-hp-linux.tar.gz
HP rx2600; 2xItanium2/900/1.5; Linux 2.4.18-e.12; --enable-threads --enable-lfs; CFLAGS="-O2"
- Hewlett/Packard IA64 (Itanium2), HP/UX
- Download:
hmmer-2.3.2.bin.ia64-hp-hpux.tar.gz
HP rx2600; 2xItanium2/900/1.5; HP/UX 11.22; --enable-threads --enable-lfs; CC=cc CFLAGS="-O"
- IBM Power4, Linux
- Download:
hmmer-2.3.2.bin.ibm-pwr4-suse-linux.tar.gz
IBM pSeries; Power4; SusE Linux 8 (SLES8); --enable-threads --enable-lfs; CC=xlc_r CFLAGS="-O -q64 -qtune=pwr4 -qcache=auto"
[Provided by Bob Arenburg and IBM Life Sciences.]
- IBM Power4, AIX
- Download:
hmmer-2.3.2.bin.ibm-aix.tar.gz
IBM pSeries 630; 4xPower4/1.2GHz; AIX 5.2; --enable-threads --enable-lfs; CC=xlc_r CFLAGS="-O2"
On large multiprocessor systems (8 cpus or more), you
want to add "-bmaxdata:0x80000000" to CFLAGS and recompile to
enable AIX's "Large Program Support"; otherwise, AIX only allows a program to
allocate 256 MB of RAM by default.
- IBM Power5, AIX
- Download:
hmmer-2.3.2.bin.ibm-pwr5-aix.tar.gz
unknown IBM system; AIX 5.3; with pthreads support, IBM xlc 8.0, CC=xlc_r CFLAGS="-O3 -q64 -qtune=pwr5 -qarch=pwr5"
[Contributed by Yinhe Cheng, IBM Systems Group, Austin TX].
- IBM Power6, AIX
- Download:
hmmer-2.3.2-altivec_gen2.bin.ibm-pwr6-aix.tar.gz
IBM Power6 JS22 blade; AIX 5.3; with threads and Altivec support;
IBM xlc 9.0, CC=xlc_r CFLAGS="-O5 -q64 -qarch=ppc970 -qtune=ppc970 -qaltivec -qenablevmx"
[Contributed by Yinhe Cheng, IBM Systems Group, Austin TX].
- Intel FreeBSD
- Download:
hmmer-2.3.2.bin.intel-freebsd.tar.gz
Dell 1550/VMWare; 2xPIII/1.27/512K; FreeBSD 4.7; --enable-threads --enable-lfs; CFLAGS="-O2 -static"
- Intel GNU/Linux
- Download:
hmmer-2.3.2.bin.intel-linux.tar.gz
Or, as an RPM:
hmmer-2.3.2-1static_pvm.i686.rpm
Dell 6450; 4xPIII/700/2; Red Hat Linux 7.2; --enable-threads --enable-lfs --enable-pvm; CC=icc CFLAGS="-O3 -axMKW -static"
the RPM spec file is available:
hmmer-pvm.spec
- Intel OpenBSD
- Download:
hmmer-2.3.2.bin.intel-openbsd.tar.gz
Dell 1550/VMWare; 2xPIII/1.27/512K; OpenBSD 3.2; --enable-threads --enable-lfs; CFLAGS="-O2 -static"
- Intel Solaris
- Download:
hmmer-2.3.2.bin.intel-solaris.tar.gz
Dell 1550/VMWare; 2xPIII/1.27/512K; x86 Solaris 9; --enable-threads --enable-lfs; CFLAGS="-O2"
- Silicon Graphics IA64 (Itanium2), Linux
- Download:
hmmer-2.3.2.bin.ia64-sgi-linux.tar.gz
Silicon Graphics Altix 3000; 16xItanium2/900/1.5; Linux 2.4.19; --enable-threads --enable-lfs; CFLAGS="-O2 -static"
- Silicon Graphics MIPS IRIX
- Download:
hmmer-2.3.2.bin.sgi-irix64.tar.gz
Silicon Graphics Origin200; 4xMIPS R10K/180,195/2; IRIX 6.5.12; --enable-threads --enable-lfs; CFLAGS="-O2 -static"
- Sun Sparc Solaris
- [The Solaris box in our compile farm died a few years ago,
after years of faithful service. For now, build from the
source release instead. We have one report that 2.3.2 does not
compile cleanly on Solaris 8: you may need to manually add
-lnsl to LIBS in src/Makefile, after running ./configure. We
will resolve this in a subsequent release, as soon as we have
access to Solaris again.]
These are other ports and contributions that have been sent to me, or
links to HMMER-related tools and information. Not all contributions
are necessarily up to date with the current release; check the notes
with each item. Additional contributions or links are welcome.
Extensions for current HMMER2 releases:
- HMMER is in Debian Linux
- Nelson de Oliveira packages HMMER for Debian. See:
[debian.org].
- MPI-HMMER
- JP Walters and Scalable Informatics, LLC have added MPI parallelization
to 2.3.2, to create a version called
MPI-HMMER.
MPI support will be incorporated into the main HMMER codebase, likely based on the Walters implementation.
- Microsoft Windows ports
- The Computational Biology Service Unit (CBSU) at Cornell University
has ported HMMER to MS Windows:
Executables (Windows Installer format):
hmmer-2.3.2.bin.i686-Win32.msi
Executables (zip format):
hmmer-2.3.2.bin.i686-Win32.zip
Source (Visual Studio 2005):
hmmer-2.3.2.VS2005.Win32.zip
CBSU has also made an MPI-parallelized version of hmmpfam called P-HMMER available:
Description and installation instructions : PHMMER.pdf
Executables (.zip format) : CBSU_PHMMER.zip
- Microsoft Windows under PC/Cygwin environment
- Download:
hmmer-2.3.2.bin.i686-pc-cygwin.tar.gz
Contributed by Matt Yoder (Texas A&M University), Oct 2004.
- Optimized RPMs for multiple systems, including Athlon
- Scalable Informatics, LLC has made a variety of optimized RPMs available at
this FTP site.
- IBM DB2 support for HMMER, in DB2 Information Integrator.
- See:
[ibm.com].
Developed by Robert Wilson (IBM).
- HMMVE visualization tool for profile HMMs.
- By Jianyong Dai and Jianlin Cheng.
Download from hmmve web site;
a paper describing HMMVE is
BMC Genomics. 9(S1):S8, 2008.
Aging contributions:
- HMMER 2.2g binaries for Apple OS/X.
- README:
00README_macosx
Download:
hmmer-2.2g.bin.apple-osx.tar.gz
Contributed by Greg Gloor (U. Western Ontario).
- HMMER 2.2g binaries for DOS/Cygwin environment.
- README:
00README.dos-cygwin
Download:
hmmer-2.2g.bin.dos-cygwin.zip
Contributed by David Mathog (Caltech).
- HMMER 2.2g in the FreeBSD ports tree.
- See:
[freebsd.org].
Developed by Johann Visagie at Electric Genetics.
A FreeBSD user can install HMMER with "# cd /usr/ports/biology/hmmer && make install".
HMMER is also apparently available on FreeBSD CD distros.
- HMMER 2.1 package from Apple Computer.
- See:
[apple.com].
Older versions of HMMER are available from the
HMMER anonymous FTP site.
One version in particular may be of more than historical interest:
- HMMER 1.8.5 (ftp download, source version only)
- The 1.8 lineage (1995-1998) was closer to the original Krogh/Haussler conception
of profile HMMs. It includes two features that
are still missing in HMMER2. First, it has the hmmt program for training
HMMs from initially unaligned sequences (and hence creating
multiple alignments). Second, HMMER1 was used extensively for DNA
sequence analysis, in addition to protein analysis,
whereas HMMER2 has not been; HMMER2 is very much optimized
for Pfam/Interpro, and may have drifted away from being
good for DNA -- no testing has been done. Note, however, that neither HMMER1 nor HMMER2 can handle chromosome-sized DNA sequences unless you have a lot
of RAM. Chromosome scale analysis is not a design goal of HMMER at this time.
HMMER is not intended to be commercial software. In particular, it
comes with no promise of support whatsoever. Because I receive more
email than is humanly possible to answer, unfortunately I am not able
to respond individually to requests for help with the package, beyond
the help already provided in HMMER's general documentation. I do
respond gratefully to useful suggestions for improved documentation,
and to bug reports.
If you find that you need more help, you may wish to consider one of
the several commercial versions of HMMER; see the "Commercial
versions" links on the left of this page.
Email me. Please give me enough information (concisely) that I can
reproduce the problem. A good bug report is:. Hi, I'm running
hmmsearch 2.3.2 on an Intel/RedHat Linux 7.1 platform, and when I type
hmmsearch my.hmm my.seq (my HMM and sequence are attached to this
email), hmmsearch gives the following error: "FATAL: Plan 7
activated. Back slowly away from the computer." What's up?
Only a complete outsider could ask your question. Are there control
authorities? There are nothing but control authorities. Of course,
their purpose is not to uncover errors in the ordinary meaning of the
word, since errors do not occur and even when an error does in fact
occur, as in your case, who can say conclusively that it is an error?
- Franz Kafka
Work on HMMER was supported for eleven years (1995-2006) by R01-HG01363 from the NIH
National Human Genome Research
Institute, and from 2000-2006 by the Howard Hughes Medical Institute.
Past support has also included generous gifts from Paracel, Monsanto Life Sciences,
Pangea Systems (DoubleTwist),
and Eli Lilly.
Significant technical assistance and equipment has been provided by Silicon Graphics, Inc..
The HMMER compile farm is also supported by donations from
IBM,
Hewlett-Packard,
Sun Microsystems and
Compaq.
Shocking amounts of coffee have
been instrumental in the development process.
A mathematician is a device for turning coffee into theorems.
- Paul Erdos
|