Colabfold_batch(Alphafold) 的本地化記錄
文章網(wǎng)址:https://www.nature.com/articles/s41592-022-01488-1
Coblab可用于windows ubuntu 子系統(tǒng);
安裝教程網(wǎng)址:https://github.com/YoshitakaMo/localcolabfold
1、確保自己的子系統(tǒng)安裝了wget,curl和git;
2、安裝cuda>=11.1; 利用ncvv --version 檢查CUDA是否安裝;可按照提示利用apt-get安裝;
3、利用apt 安裝gcc;利用gcc --version 檢查是否已安裝;沒有可按提示利用apt-get安裝;
4、可以下載教程中的install_colabbatch_linux.sh;下載后運(yùn)行安裝;也可打開該文件一步步自己安裝;由于網(wǎng)絡(luò)問題,采用一步步安裝的方法:
?(1)conda創(chuàng)建colabfold環(huán)境; conda create -n colabfold python==3.9
(2)conda activate colabfold
(3)conda 安裝python cudnn cudatoolkit openmm pdbfixer
(4)conda 安裝kalign2 hhsuite mmseqs2
(5)pip 安裝 colabfold ;利用git安裝
(6)pip 本地利用輪子安裝適用于gpu的jaxlib
(7)pip 安裝jax 和 biopython
(8)創(chuàng)建一個文件夾下載參數(shù):
cd ${COLABFOLDDIR}
python -m colabfold.download
cd ${CURRENTPATH}
(9)使matplotlib不依賴于gui運(yùn)行;進(jìn)入colabfold的安裝位置,運(yùn)行:
sed -i -e "s#from matplotlib import pyplot as plt#import matplotlib\nmatplotlib.use('Agg')\nimport matplotlib.pyplot as plt#g" plot.py
(10)關(guān)聯(lián)參數(shù)
sed -i -e "s#appdirs.user_cache_dir(__package__ or \"colabfold\")#\"{放置參數(shù)的文件夾目錄}"#g" download.py
# remove cache directory
rm -rf __pycache__
(10)激活環(huán)境后,運(yùn)行colabfold_batch --help 檢測是否安裝好
5、在wsl中運(yùn)行colabfold_batch需加環(huán)境變量:
export TF_FORCE_UNIFIED_MEMORY="1"
export XLA_PYTHON_CLIENT_MEM_FRACTION="4.0"
export XLA_PYTHON_CLIENT_ALLOCATOR="platform"
export TF_FORCE_GPU_ALLOW_GROWTH="true"
環(huán)境變量的具體詳解見:https://parafold.sjtu.edu.cn/docs/quick-start/#4.2
可通過具體設(shè)置來XLA_PYTHON_CLIENT_MEM_FRACTION的大小解決內(nèi)存問題
PS :1)筆記本的3060ti 可以預(yù)測大概800aa左右的蛋白結(jié)構(gòu),大約只需要20分鐘;比用goole colab快;
2)好像并不支持本地的CPU與運(yùn)行;可以通過卸載jax,重新安裝jax[cpu]來運(yùn)行,但是沒有成功運(yùn)行,報錯推薦GPU運(yùn)行(??);具體的可以查閱jax官網(wǎng):https://jax.readthedocs.io/en/latest/notebooks/quickstart.html
3)很大的蛋白好像可以拆成具有重疊區(qū)域的幾段,然后再在pymol中拼接