Alphafold2的配置要求
- Linux系统(Windows中的wsl可用)
- 3T以上硬盘空间(SSD速度更快)
- NVIDIA显卡(显存越大可处理的蛋白序列越长)
下载流程
按照Deepmind在Github官方公开的链接即可,官方为docker版本,按照步骤依次完成即可。(链接点我)
遇到的错误及解决办法
下载较慢
官方给出的下载脚本确实是及其慢的。可以打开\scripts
文件下的sh脚本文件,里面有下载链接,使用迅雷下载后解压即可。SSD硬盘解压会快一些,我用的普通机械硬盘解压确实非常慢。其中的uniref30.sh
需要通过一个命令把两个文件合并在一起,按照文件中的代码执行即可。
docker镜像创建不成功
本人在docker创建镜像这步失败了无数次之后发现,可能是跟网络有关系,梯子也无法改善。后来在北京时间的早上或者上午进行的这一步,一次成功。
GPU显存不够问题
运行时的报错如下
I0507 10:34:26.888418 140715855425536 run_docker.py:258] 2024-05-07 02:34:26.888174: E external/xla/xla/stream_executor/cuda/cuda_driver.cc:1639] failed to alloc 17059072 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of memory
I0507 10:34:26.896312 140715855425536 run_docker.py:258] 2024-05-07 02:34:26.896068: E external/xla/xla/stream_executor/cuda/cuda_driver.cc:1639] failed to alloc 15353344 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of memory
I0507 10:34:26.903648 140715855425536 run_docker.py:258] 2024-05-07 02:34:26.903407: E external/xla/xla/stream_executor/cuda/cuda_driver.cc:1639] failed to alloc 13818112 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of memory
I0507 10:34:26.912209 140715855425536 run_docker.py:258] 2024-05-07 02:34:26.912021: E external/xla/xla/stream_executor/cuda/cuda_driver.cc:1639] failed to alloc 67108864 bytes on host: CUDA_ERROR_OUT_OF_MEMORY: out of memory
我也尝试了无数次,最终还是在github上找到了解决方案。
打开docker\run_docker.py
文件,将里面的'TF_FORCE_UNIFIED_MEMORY': '1','XLA_PYTHON_CLIENT_MEM_FRACTION': '4.0',
这两行注释掉就可以正常运行了。
提升速度的一点尝试
本地运行起来太慢了,所以尝试将\alphafold\data\tools
文件下的hhblits.py
、hmmsearch.py
、jackhmmer.py
中的cpu
调到了本机的最大。(但好像没什么用)
使用reduced databases版的数据库,运行时间会缩短很多。
另外,如果序列过长,需要把hhblits.py
中的maxseq
调到1_000_000。不然会报错。
一点记录,希望能帮到大家,令如有需要建模的可联系我,限时免费哦。