sokrypton / sokrypton/ColabFold
`colabfold_search` fails GPU search
Open
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 2.9k
- Forks
- 747
- PR merge metrics
- No merged PRs in 30d
Description
TL;DR -> colabfold_search fails search on "GPU" DB setup
Error
INFO:colabfold.mmseqs.search:Running mmseqs align /home/ec2-user/result/prof_res /home/ec2-user/msa-work/db/uniref30_2302_db_seq /home/ec2-user/result/res_exp /home/ec2-user/result/res_exp_realign --db-load-mode 0 -e 10 --max-accept 100000 --threads 64 --alt-ali 10 -a
align /home/ec2-user/result/prof_res /home/ec2-user/msa-work/db/uniref30_2302_db_seq /home/ec2-user/result/res_exp /home/ec2-user/result/res_exp_realign --db-load-mode 0 -e 10 --max-accept 100000 --threads 64 --alt-ali 10 -a
Input /home/ec2-user/result/prof_res does not exist
Traceback (most recent call last):
File "/home/ec2-user/msa-work/localcolabfold/colabfold-conda/bin/colabfold_search", line 8, in <module>
sys.exit(main())
File "/home/ec2-user/msa-work/localcolabfold/colabfold-conda/lib/python3.10/site-packages/colabfold/mmseqs/search.py", line 461, in main
mmseqs_search_monomer(
File "/home/ec2-user/msa-work/localcolabfold/colabfold-conda/lib/python3.10/site-packages/colabfold/mmseqs/search.py", line 131, in mmseqs_search_monomer
run_mmseqs(mmseqs, ["align", base.joinpath("prof_res"), dbbase.joinpath(f"{uniref_db}{dbSuffix1}"), base.joinpath("res_exp"), base.joinpath("res_exp_realign"), "--db-load-mode", str(db_load_mode), "-e", str(align_eval), "--max-accept", str(max_accept), "--threads", str(threads), "--alt-ali", "10", "-a"])
File "/home/ec2-user/msa-work/localcolabfold/colabfold-conda/lib/python3.10/site-packages/colabfold/mmseqs/search.py", line 46, in run_mmseqs
subprocess.check_call([mmseqs] + params)
File "/home/ec2-user/msa-work/localcolabfold/colabfold-conda/lib/python3.10/subprocess.py", line 369, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '[PosixPath('mmseqs'), 'align', PosixPath('/home/ec2-user/result/prof_res'), PosixPath('/home/ec2-user/msa-work/db/uniref30_2302_db_seq'), PosixPath('/home/ec2-user/result/res_exp'), PosixPath('/home/ec2-user/result/res_exp_realign'), '--db-load-mode', '0', '-e', '10', '--max-accept', '100000', '--threads', '64', '--alt-ali', '10', '-a']' returned non-zero exit status 1.
Steps to reproduce
1. DB setup
git clone https://github.com/sokrypton/ColabFold.git
GPU=1 ./setup_databases.sh /path/to/db_folder
2. Install mmseqs
wget https://mmseqs.com/latest/mmseqs-linux-gpu.tar.gz;
tar xvfz mmseqs-linux-gpu.tar.gz;
# In ~/.bashrc
export PATH=$(pwd)/mmseqs/bin/:$PATH
source ~/.bashrc
3. Install localcolabfold
### INSTALL colabfold ###
wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_linux.sh
bash install_colabbatch_linux.sh
# In ~/.bashrc
export PATH="/path/to/your/localcolabfold/colabfold-conda/bin:$PATH"
source ~/.bashrc
4. Running coldfold_search
colabfold_search --mmseqs mmseqs --gpu 1 input_sequences.fasta /home/ec2-user/msa-work/db/ ~/result/
Infrastructure setup
- Nvidia 1xL40S
- 16 CPU cores (AMD EPYC 7R13 Processor)
- 128GB Ram
- 3TB SSD
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in colabfold/mmseqs/search.py, especially mmseqs_search_monomer and the run_mmseqs call that invokes align on prof_res. Reproduce the GPU database setup and colabfold_search command, then check why prof_res is absent before alignment. Done means GPU-backed search completes without the missing prof_res error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bash, python
- Domain
- bioinformatics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100