AutoDock-GPU的运行
下载
1.创建一个文件夹 例如:mkdir /media/test/Documents/Glinttsd/AutoDock4.2
2.cd 到文件夹中,使用git init
3.用git pull https://github.com/ccsb-scripps/AutoDock-GPU.git把AutoDock4-GPU的源码从github下载下来,由于速度比较慢,可以用下面的命令代替
git pull https://github.com.cnpmjs.org/ccsb-scripps/AutoDock-GPU.git
4.这时文件夹里就有AutoDock4-GPU的所有文件了
环境准备
1.根据自己的GPU安装驱动,我的GPU是NVIDIA GTX 1060,所以应该安装NVIDIA的驱动。有一个方便的方法,打开software&update,选择additional drivers,找到NVIDIA驱动直接安装,如图
2.现查看自己的GPU最高支持多少版本的CUDA,使用 NVIDIA-smi -l,查看最高支持版本号,如图
在右上角可以看到最高支持CUDA11,因为AutoDock-GPU最高支持CUDA10,所以我们安装CUDA10
3.在nvidia官网找到想要的CUDA版本进行下载下载链接
虽然CUDA10只提供了ubuntu18的选项,但是安装在ubuntu20上是没问题的
4.接着按照nvidia官网进行安装,注意由于我们在第一步安装过nvidia驱动,所以这一步的安装中不要勾选安装驱动
5.安装完成后,使用vim ~/.bashrc看看环境变量中有无cuda,检查有无下面三句话,没有的话加进去
6.使用 nvcc -V查看安装好后的信息
编译
1.cd到文件夹
2.根据官方提供的readme,使用 make DEVICE=< TYPE >,NUMWI=< NWI >,其中TYPE可以为CPU,GPU,CUDA,OCLGPU,NWI可以为1,2,4,8,16,32,64,128,256。注意,如果TYPE为CUDA时,编译可能会出错,要在后面再加上GPU_INCLUDE_PATH="/usr/local/cuda/include" GPU_LIBRARY_PATH="/usr/local/cuda/lib64"以指定CUDA的位置
3.编译好后,会在AutoDock4-GPU文件夹/bin中生成可执行文件autodock_gpu_128wi
运行
1.以官方给的受体与配体为例,使用CUDA选项编译后
2.运行./bin/autodock_gpu_128wi -ffile ./input/1stp/derived/1stp_protein.maps.fld -lfile ./input/1stp/derived/1stp_ligand.pdbqt
3.即可得到运行结果
AutoDock-GPU的调试
1.安装visual studio code
2.打开vs code,下载c++,cuda,opencl等的插件
3.在vs code中,我们通过配置launch.json和tasks.json文件来进行调试,可以参考以下这篇博客
4.简单来说就是配置tasks.json去完成编译的工作,配置launch.json完成运行的工作
5.与上面那篇博客的不同之处在于我们要在tasks.json中使用make命令,并且加上后续的命令,比如设置TYPE,NUMWI。在launch.json中program设置成我们用make命令生成的可执行文件,同样在后面加上参数,注意以空格分割的命令在这里要用“”分割!如图
6.最关键的一点单独提出来说,在编译时,也就是配置tasks.json时,要添加命令CONFIG=FDEBUG,否则将不可调试。关于这一点可以在makefile.cuda文件中找到。
7.配置好两个文件后,点击左侧的运行按钮就可以开始调试了
对.json文件中的其他命令感兴趣的话可以自己搜搜