本家様 https://github.com/soedinglab/MMseqs2
MMseqs2 (Many-against-Many searching) is a software suite to search and cluster huge sequence sets.
MMseqs2 is open source GPL-licensed software implemented in C++ for Linux, Mac OS and Windows.
MMseqs2 is designed to run on multiple cores and servers, making it highly scalable. MMseqs2 matches the sensitivity of BLAST, but with several orders of magnitude faster speed.
It can perform profile searches, like PSI-BLAST, but with a speed advantage of up to 400 times faster.
(日本語訳, deepL様翻訳)
MMseqs2 (Many-against-Many searching) は、巨大な配列セットを検索し、クラスタリングするソフトウェアスイートである。
MMseqs2は、Linux、Mac OS、Windows用のC++で実装されたGPLライセンスのオープンソースソフトウェアである。
MMseqs2はマルチコアやサーバー上で動作するように設計されており、高いスケーラビリティを持つ。MMseqs2はBLASTの感度に匹敵するが、スピードは数桁速い。
PSI-BLASTのようなプロファイル検索が可能ですが、最大400倍のスピードのアドバンテージがあります。
condaでも提供されている. これを使うのが一番楽かな.
こちらでは pyenv/anaconda(miniforge) を敷いて、そこで仮想実行環境を作っています
もし初回なら下記を実施して pyenv/anaconda を敷きます
git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install --list (これで使えるanaconda/miniforgeが確認できます)
pyenv install anaconda3-2024.10-1
pyenv global anaconda3-2024.10-1
source /apps/pyenv/versions/anaconda3-2024.10-1/etc/profile.d/conda.sh既にpyenv/anaconda を敷いているなら使っているanaconda/miniforgeに対して
source /apps/pyenv/versions/anaconda3-2024.10-1/etc/profile.d/conda.shとしておきます.
次に MMseqs2 を検索してみます. biocondaチャンネルにて提供さているようで、最新版を使ってみます
[root@rockylinux9 ~]# conda search mmseqs2 -c bioconda
Loading channels: done
# Name Version Build Channel
:
mmseqs2 16.747c6 pl5321hd6d6fdc_1 bioconda
mmseqs2 17.b804f hd6d6fdc_0 bioconda
mmseqs2 17.b804f hd6d6fdc_1 bioconda
[root@rockylinux9 ~]# conda create -n mmseqs2 mmseqs2 -c bioconda -c conda-forge
:
[root@rockylinux9 ~]# conda activate mmseqs2
(mmseqs2) [root@rockylinux9 ~]# conda list
:
mmseqs2 17.b804f hd6d6fdc_1 bioconda
:
(mmseqs2) [root@rockylinux9 ~]# conda deactivate
[root@rockylinux9 ~]#これでインストールは完了
EnvironmentModulesはこんな感じで
[root@rockylinux9 ~]# cat /apps/modulefiles/mmseqs2
#%Module1.0
set root /apps/pyenv/versions/anaconda3-2024.10-1/envs/mmseqs2
prepend-path PATH $root/bin
[root@rockylinux9 ~]#Ampere世代(RTX 30x0, RTX Ax000 とか)以上が望ましいみたい. cudaライブラリに 12.4 以上を載せてソースからコンパイルすれば使えるそうな
[root@rockylinux9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 570.153.02 Tue May 13 16:34:43 UTC 2025
GCC version: gcc version 11.5.0 20240719 (Red Hat 11.5.0-2) (GCC)
[root@rockylinux9 ~]# ls -l /usr/local/cuda
ls: cannot access '/usr/local/cuda': No such file or directory
[root@rockylinux9 ~]# nvcc
bash: nvcc: command not found...
[root@rockylinux9 ~]# nvidia-smi -L
GPU 0: NVIDIA GeForce GTX 1070 (UUID: GPU-a49de51b-de1e-52f3-1e3f-ce704e159713)
[root@rockylinux9 ~]#まずはcudaライブラリをインストールします
[root@rockylinux9 ~]# dnf localinstall /Public/cuda/cuda-repo-rhel9-12-8-local-12.8.1_570.124.06-1.x86_64.rpm
[root@rockylinux9 ~]# dnf install cuda-toolkit-12-8
[root@rockylinux9 ~]# dnf remove cuda-repo-rhel9-12-8-local-12.8.1_570.124.06-1.x86_64
[root@rockylinux9 ~]# vi /apps/modulefiles/cuda/12.8
#%Module1.0
set cuda /usr/local/cuda-12.8
prepend-path PATH $cuda/bin
prepend-path LD_LIBRARY_PATH $cuda/lib64
prepend-path MANPATH $cuda/share/man
[root@rockylinux9 ~]#っでmmseqs2のソースコードを取得してコンパイル
[root@rockylinux9 ~]# module use /apps/modulefiles/
[root@rockylinux9 ~]# module load cuda/12.8
[root@rockylinux9 ~]# cd /apps/src/
[root@rockylinux9 src]# git clone https://github.com/soedinglab/MMseqs2
[root@rockylinux9 src]# cd MMseqs2/
[root@rockylinux9 MMseqs2]# mkdir build
[root@rockylinux9 MMseqs2]# cd build/
[root@rockylinux9 build]# cmake -DCMAKE_INSTALL_PREFIX=/apps/MMseqs2 -DCMAKE_BUILD_TYPE=RELEASE -DENABLE_CUDA=1 -DCMAKE_CUDA_ARCHITECTURES="75;80;86;89;90" ..
(10x0な pascal GPU のために 61 を追加したらエラーになった..)
[root@rockylinux9 build]# make install