Skip to content
forked from EddyRivasLab/hmmer

An accelerated version of original HMMER, which adopts AVX2/AVX512 intrinsics to accelerate on latest CPUs. HMMER performs biological sequence analysis using profile HMMs.

License

Notifications You must be signed in to change notification settings

IntelLabs/hmmer

 
 

Repository files navigation

HMMER accelerated using latest CPUs

HMMER performs biological sequence analysis using profile HMMs. This is an accelerated version of original HMMER, which adopts AVX2/AVX512 intrinsics to accelerate on latest x86 CPUs.

Compilation

Please follow the guides to finish the compilation:

install oneAPI HPC Toolkit

Guidelines of Intel oneAPI HPC Toolkit

Configure and compile

source <intel-oneapi>/tbb/latest/env/vars.sh
cd hmmer
git submodule update --init --recursive
cp easel_makefile.in easel/Makefile.in
cd easel && autoconf && ./configure --prefix=$PWD && cd ..
autoconf
CC=icpx CFLAGS="-O3 -march=icelake-server -fPIC" ./configure --prefix=$PWD/release
make && make install
./release/bin/jackhmmer -h

The README information of original repo is kept in the following lines:

HMMER - biological sequence analysis using profile HMMs

HMMER searches biological sequence databases for homologous sequences, using either single sequences or multiple sequence alignments as queries. HMMER implements a technology called "profile hidden Markov models" (profile HMMs). HMMER is used by many protein family domain databases and large-scale annotation pipelines, including Pfam and other members of the InterPro Consortium.

To obtain HMMER releases, please visit hmmer.org.

To participate in HMMER development, visit us at github. HMMER development depends on the Easel library, also at github.

to download and build the current source code release:

   % wget http://eddylab.org/software/hmmer/hmmer.tar.gz
   % tar zxf hmmer.tar.gz
   % cd hmmer-3.3.2
   % ./configure --prefix /your/install/path
   % make
   % make check                 # optional: run automated tests
   % make install               # optional: install HMMER programs, man pages
   % (cd easel; make install)   # optional: install Easel tools

Executable programs will be installed in /your/install/path/bin. If you leave this optional ./configure argument off, the default prefix is /usr/local.

Files to read in the source directory:

  • INSTALL - brief installation instructions.
  • Userguide.pdf - the HMMER User's Guide.

To get started after installation, see the Tutorial section in the HMMER User's Guide (Userguide.pdf).

to clone a copy of HMMER3 source from github:

The tarball way, above, is a better way to install HMMER (it includes a precompiled Userguide.pdf, for example), but you can also clone our github repo. You need to clone both the HMMER and Easel repositories, as follows:

   % git clone https://github.com/EddyRivasLab/hmmer
   % cd hmmer
   % git clone https://github.com/EddyRivasLab/easel
   % autoconf

and to build:

   % ./configure
   % make

Our git workflow includes three main branches:

  • master is the stable branch for HMMER3 releases (including when H3 is released as a library inside Infernal)
  • develop is the HMMER3 development branch
  • h4-develop is the HMMER4 development branch.

To build the most recent official release, leave both HMMER and Easel on their default master branch. To contribute to HMMER3 development, you want to be on the develop branches. If you want to send us a pull request on GitHub, please base your changes on our develop branches.

to report a problem:

Visit our issues tracking page at github.

About

An accelerated version of original HMMER, which adopts AVX2/AVX512 intrinsics to accelerate on latest CPUs. HMMER performs biological sequence analysis using profile HMMs.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 84.7%
  • Perl 8.4%
  • Roff 5.6%
  • Makefile 0.4%
  • M4 0.4%
  • Shell 0.3%
  • Other 0.2%