ubuntu中显示本机的gpu_LAMMPS的GPU加速(deepin15)
系统:deepin15.11 处理器:AMD3600X 显卡:RTX2060 (AMD的显卡不行)软件:mpich3.3.2fftw3.3.8Nvidia450.66 Nvidia-CUDA10.0基本操作和基本词汇解释: 终端:鼠标右键后打开的命令符窗口备注:其中“liu”是自己本机的用户名显卡型号对照:Nvidia arch 型号对照blog.csdn.net注意:CUDA以及其他...
系统:deepin15.11 处理器:AMD3600X 显卡:RTX2060 (AMD的显卡不行)
软件:mpich3.3.2 fftw3.3.8 Nvidia450.66 Nvidia-CUDA10.0
基本操作和基本词汇解释:
终端:鼠标右键后打开的命令符窗口
备注:其中“liu”是自己本机的用户名
显卡型号对照:
Nvidia arch 型号对照blog.csdn.net
注意:CUDA以及其他版本不一样请注意路径自己修改成适配版本,个人建议完全一致以降低错误率。
下载网站:
LAMMPS:
https://lammps.sandia.gov/download.html
MPICH3:
https://www.mpich.org/downloads/
FFTW3:
FFTW Download Page
NVIDIA驱动:(deepin请选择Linux 64-bit)
下载最新版官方 GeForce 驱动程序
CUDA:(linux→x86_64→Ubuntu→18.04)
CUDA Toolkit 10.0 Archive
〇:准备
1.更换库源
进入系统后,先进入首先打开终端
输入:vim /etc/apt/sources.list进入软件库来源文件
百度进入阿里镜像站,其中deepin系统的网址为:
https://developer.aliyun.com/mirror/deepin?spm=a2c6h.13651102.0.0.3e221b11n3AYxf
将deb [by-hash=force] http://mirrors.aliyun.com/deepin lion main contrib non-free
替换掉源文件中的地址。
2.下载好(1)Nvidia450.66(2)Nvidia-CUDA10.0(3)mpich3(4)fftw3(5)LAMMPS
为了方便,请都放在/home/liu文件夹内,并将Nvidia的文件改名为NVIDIA.run, cuda的文件改名为cuda.run
一.配置环境变量
进入终端,
cd
vi .bashrc
按“insert”进行编辑。插入
export PATH=/home/liu/lammps/mpich3/bin:/home/liu/lammps/fftw3/bin:$PATH
export LD_LIBRARY_PATH=/home/liu/lammps/mpich3/lib:/home/liu/lammps/fftw3/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.0/bin:$PATH
export PATH=/home/liu/lammps/bin:$PATH
按“esc”退出编辑,并按shift,连按两次z保存。
终端输入
source .bashrc
用来更新设置
二.NVIDIA驱动安装
1.禁用deepin自带开源驱动
(1)打开终端,输入cd(进入根目录)输入:
sudo dedit/etc/modprobe.d/blacklist.conf
(2)在文件内输入
blacklist nouveau
options nouveau modeset=0
保存编辑退出
(3)输入
sudo update-initramfs -u
(4)重启后,输入
lsmod |grep -i nouveau
若无输出,则禁用成功
2.安装
(1)ctrl+alt+f2进入tty2,输入
sudo service lightdm stop
用来关闭图形界面服务(关闭后系统的图形操作界面就没有啦,请不要惊慌失措)
(2)赋予权限
cd(如果文件不在根目录,请自行移动至NVIDIA.run所在文件夹)
chmod +x NVIDIA.run
(3)安装
sudo ./NVIDIA.run
安装过程中的选项:
问题:The distribution-provided pre-install script failed! Are you sure you want to continue?
选择 yes 继续。
问题:Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?
选择 No 继续。
问题xx,选项是:install without signing
问题:Nvidia's 32-bit compatibility libraries?
选择 No 继续。
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up.
选择 Yes 继续
三.安装CUDA
打开终端,输入
cd(如果文件不在根目录,请自行移动至cuda.run所在文件夹)
chmod +x cuda.run
sudo ./cuda.run --no-opengl-libs
问题1Do you want to....
accept
问题:you are attempting to install on an ......(可能没有)
y
问题:install NVIDA Accelerated Graphics Driver for .....
n
问题:install the CUDA......
y
问题enter toolkit location
enter
问题do you want to install a symbolic link at .....
y
问题Install the CUDA......
y
问题 Enter CUDA samples location
enter
检查
在usr/local/cuda-10.0目录下打开终端
输入nvcc -V
会有信息出现
四.安装lammps
0.解压并重命名文件夹为lammps,放至/home/liu/
1.进入src文件夹,搜索make进入MAKE文件夹,找到Makefile.mpi。
2.打开Makefile.mpi并修改
CC= g++
LINK= g++
MPI_INC = -DMPICH_SKIP_MPICXX -I/home/liu/lammps/mpich3/include
MPI_PATH = -L/home/liu/lammps/mpich3/lib
MPI_LIB = -lmpich -lmpl -lpthread
FFT_INC = -DFFT_FFTW3 -DFFT_SINGLE -I/home/liu/lammps/fftw3/include
FFT_PATH = -L/home/liu/lammps/fftw3/lib
FFT_LIB = -lfftw3f
保存退出
五.安装 FFTW3 和MPICH3
0.解压,在/home/liu/lammps中创建文件夹fftw3和mpich3
1.必备内容安装
打开终端,
cd
sudo apt-get install build-essential
sudo apt-get install gcc
sudo apt-get install gfortran
sudo apt-get install csh
sudo apt-get install libjpeg62-turbo
sudo apt-get install libjpeg62-turbo-dev
2.在FFTW3文件夹(这个指你解压后的文件夹,不是刚刚创建的fftw3)内打开终端,输入:
sudo ./configure --prefix=/home/liu/lammps/fftw3 --enable-float
sudo make -j6
sudo make install -j6
3.在MPICH3文件夹(这个指你解压后的文件夹,不是刚刚创建的mpich3)内打开终端,输入:
sudo ./configure --prefix=/home/liu/lammps/mpich3 --enable-float
sudo make -j6
sudo make install -j6
六:编译LAMMPS库文件
进入/home/liu/lammps/lib/gpu文件夹,找到makefile.linux
修改信息
CUDA_HOME = /usr/local/cuda
CUDA_ARCH = -arch=sm_75
CUDA_PRECISION = -D_SINGLE_DOUBLE
注意:请根据自己的显卡类型修改sm_后面的值,对照信息在文章开头的网站里。
保存信息
在该文件夹下打开终端,输入:
make -f Makefile.linux -j6
进入/home/liu/lammps/src文件夹,输入
make no-all
make clean-all
make yes-gpu #添加gpu包
make yes-KSPACE
make yes-MANYBODY
make yes-MOLECULE
make mpi
sudo cp /usr/local/cuda-10.0/lib64/libcudart.so.10.0 /usr/local/lib/libcudart.so.10.0 && sudo ldconfig
在/home/liu/lammps/创建文件夹bin,将刚刚在src文件夹中生成好的lmp_mpi文件复制到bin中
至此完成
测试
移步至你需要测试的文件的文件夹输入:
mpirun -np 6 lmp_mpi < melt.lmp
这个是6线程运算
mpirun -np 6 lmp_mpi -sf gpu -pk gpu 1 -in melt.lmp
这个是带GPU的6线程运算,目前个人测试自己的硬件下,自己的文件,3线程是速度最快的。请各位多线程用户在bios关闭超线程,应该更能加快计算速度。
两者的melt.lmp都是需要运行的in文件名,请替换为自己的文件
如果要重新安装gpu包
先在src下make clean-all
再在lib/gpu下:make -f Makefile.linux clean
注意!!!!!本文有参考他人的内容,但本文仅为给大家方便,且本人精力有限,因此没有详细列出参考网址。
如果有被参考的作者,可以私聊,会修改并给出源网址。
更多推荐
所有评论(0)