AMD Zen Software Studio with Spack
- AMD Optimizing C/C++ Compiler (AOCC)
- AMD Optimizing CPU Libraries (AOCL)
- AMD uProf
- Setting Preference for AMD Zen Software Studio
Open MPI with AMD Zen Software Studio
Micro Benchmarks/Synthetic Benchmarks
Spack HPC Applications
Introduction
HMMER is a popular open source implementation of profile Hidden Markov Models (HMM) algorithm, widely used for sequence analysis of bio-molecules. It is often used together with profile databases like, Pfam (for protein families), Rfam (for non-coded RNA families), Dfam (for repetitive DNA based), etc. It is developed and maintained by Prof. Sean Eddy (Harvard University).
Official website for HMMER: www.hmmer.org
Build HMMER using Spack
Please refer to this link for getting started with spack using AMD Zen Software Studio.
# Example for building HMMER with AOCC
$ spack install hmmer %aocc ^openmpi fabrics=cma,ucx
Explanation of the command options:
Symbol | Meaning |
---|---|
%aocc | Build HMMER with AOCC compiler. |
^openmpi fabrics=cma,ucx | Use OpenMPI as the MPI provider and use the CMA network for efficient intra-node communication, falling back to the UCX network fabric, if required.. Note: It is advised to specifically set the appropriate fabric for the host system if possible. Refer to Open MPI with AMD Zen Software Studio for more guidance. |
Running HMMER
The following example illustrates the usage of hmmsearch using Pfam database and uniprot_sprot as the input.
Run Script for AMD EPYC™ Processors
#!/bin/bash
# Loading HMMER built with AOCC
spack load hmmer %aocc
# Downloading Pfam Database
wget http://ftp.ebi.ac.uk/pub/databases/Pfam/current_release/Pfam-A.hmm.gz
gzip -d Pfam-A.hmm.gz
# Downloading uniprot_sprot.fasta input
wget https://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/complete/uniprot_sprot.fasta.gz
gzip -d uniprot_sprot.fasta.gz
# MPI and OMP settings
# MPI_RANKS=Number of cores available in the system.
MPI_RANKS=$(nproc)
export OMP_NUM_THREADS=1
MPI_OPTS="-np $MPI_RANKS --bind-to core "
# Run Command to carry out search using hmmsearch binary
mpirun $MPI_OPTS hmmsearch --mpi -o hmmsearch.out Pfam-A.hmm uniprot_sprot.fasta
Note: The above build and run steps are tested with HMMER-3.4, AOCC-5.0.0, and OpenMPI-5.0.5 on Red Hat Enterprise Linux release 8.9 (Ootpa) using Spack v0.23.0.dev0 (commit id : 2da812cbad ).
For technical support on the tools, benchmarks and applications that AMD offers on this page and related inquiries, reach out to us at toolchainsupport@amd.com.