1. 编译出支持并行的LAMMPS可执行文件,网上有很多文章,大家可以找找,有问题联系我。我编译出的可执行文件是lmp_gpu;
2. 修改输入文件,加入如下内容:
package gpu force/neigh 0 3 1
其中第二位数字3是指定支持GPU卡的数量的,也就是说:
package gpu force/neigh 0 0 1(支持1片GPU卡)
package gpu force/neigh 0 1 1(支持2片GPU卡)
package gpu force/neigh 0 2 1(支持3片GPU卡)
package gpu force/neigh 0 3 1(支持4片GPU卡)
之前我一直以为LAMMPS只支持2片GPU卡,就是误以为这个数字只能是0或者1,所以最多支持到2片。实验的结果并非如此。
还有人问我,LAMMPS支持8片GPU卡吗?这个我没试过,所以暂时只能回答“不知道”。
3. 运行,我的命令是:
mpirun -np 16 ./lmp_gpu -sf gpu -c off < input.test
然后用nvidia-smi -l监控GPU卡,如图: