计算化学公社

 找回密码 Forget password
 注册 Register

求助:GPU支持的Gromacs2018.4安装总是出错。

查看数: 14231 | 评论数: 16 | 收藏 Add to favorites 2
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-11-5 18:21

正文摘要:

本帖最后由 lao7 于 2020-11-5 18:24 编辑 1、按照SOB之前的教程安装GPU加速下的Gromacs 2018.4。GPU 2070s驱动和cuda已经安装,且nvidia-msi检查完全正常。cmake3、fftw也已经顺利安装。但是到编译gromacs这一步 ...

回复 Reply

lisanoid 发表于 Post on 2022-5-10 20:03:54
问题已解决,原因是给的代码里,显示有^M的换行,搜索了一下,发现是win下的文本与linux中的换行符不一致,解决方法是把脚本中内容替换一下,命令
cat patch_cuda11.bsh | tr -s "\r\n" "\n" > cuda.bsh
然后运行新命令就可以继续了。
然后再参考社长博文 http://sobereva.com/457,就可以安装cuda加速的gromacs了
lisanoid 发表于 Post on 2022-5-10 18:24:35
本帖最后由 lisanoid 于 2022-5-10 18:26 编辑
liuyuje714 发表于 2021-1-6 16:41
你们真的是够折腾的。。。低于2020.4版本的gromacs自己打个cuda11的补丁不就行了(也就是删除几行的事)。 ...

前辈你好,我用此脚本时出现报错:
patch_cuda11.bsh: line 2: $'\r': command not found
patch_cuda11.bsh: line 3: syntax error near unexpected token `$'\r''
'atch_cuda11.bsh: line 3: `Check_Cuda11()
centos7.6版本,打算杆状的gromacs是2018.8
具体操作是:将代码复制后,在win下新建的txt文档中粘贴,在复制到准备安装gromacs文件夹下的build文件夹,运行命令后即上述报错,请问这个是哪里出现问题了呢?
annaqz 发表于 Post on 2021-8-12 11:48:01
liuyuje714 发表于 2020-11-5 20:00
既然你选择高版本的cuda11.1,那么最简单的解决方法就是使用gromacs2020.4,完全兼容cuda11。如果坚持使用 ...

请问gromacs2020.6是否兼容cuda11.2
k64_cc 发表于 Post on 2021-1-6 17:16:32
牧生 发表于 2021-1-6 16:42
因为希望用较低版本的gromacs,且同时用新旧两个显卡。

我的几次经验是,必须按照这个步骤来,否则编 ...

你甚至可以不装driver编译成功……
牧生 发表于 Post on 2021-1-6 16:42:43
k64_cc 发表于 2021-1-6 16:38
按理说你直接装最新驱动就行啊,cuda toolkit其实可以拿来直接用,并不需要“安装”

因为希望用较低版本的gromacs,且同时用新旧两个显卡。

我的几次经验是,必须按照这个步骤来,否则编译gromacs不一定能通过。cuda toolkit也不一定是直接就可以拿来用。
liuyuje714 发表于 Post on 2021-1-6 16:41:57
本帖最后由 liuyuje714 于 2021-1-6 16:43 编辑
  1. #!/bin/bash

  2. Check_Cuda11()
  3. {
  4.     if [[ `which nvcc |grep nvcc` ]];then
  5.         cuda_version=$(nvcc --version |grep release |\
  6.         awk '{gsub(/.+release/, "", $0);gsub(/,.+$/, "" , $0);print $0+0}')
  7.         echo -e "\nCUDA version is $cuda_version"
  8.         Yes_Cuda11=`awk -v cv=$cuda_version 'BEGIN {print (cv>=11.0)}'`
  9.         if [[ $Yes_Cuda11 -eq 0 ]];then
  10.             echo "CUDA version is less than 11.0, so skip patch..."
  11.             exit 1
  12.         else
  13.             echo -e "\nPatch..."
  14.         fi
  15.     else
  16.         echo -e "\nCUDA can not be detected! Please check it"
  17.         exit 1
  18.     fi
  19. }

  20. Patch_Cuda11()
  21. {
  22.     cd ../cmake
  23.     file="gmxManageNvccConfig.cmake"
  24.     if [[ ! -f $file ]];then
  25.         echo -e "\nError! $file not found in cmake directory"
  26.         echo "Maybe your GROMACS version is too old?"
  27.     else
  28.         sed -E -i '/list.+sm_[2?3]0/d' $file
  29.         echo -e "\nPatch done!"
  30.     fi
  31. }

  32. Check_Cuda11 && Patch_Cuda11
复制代码

你们真的是够折腾的。。。低于2020.4版本的gromacs自己打个cuda11的补丁不就行了(也就是删除几行的事)。我这里提供一个,使用编译gromacs的时候把bash脚本丢到build路径下然后执行bash patch_cuda11.bsh即可。脚本内容如上

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
snljty + 5 谢谢

查看全部评分 View all ratings

k64_cc 发表于 Post on 2021-1-6 16:38:56
牧生 发表于 2021-1-6 16:32
补充一个比较自欺欺人的,在较低版本的gromacs使用cuda11的方法:

1、先正常步骤安装nvidia驱动(比如我 ...

按理说你直接装最新驱动就行啊,cuda toolkit其实可以拿来直接用,并不需要“安装”
牧生 发表于 Post on 2021-1-6 16:32:42
本帖最后由 牧生 于 2021-1-6 16:36 编辑

补充一个比较自欺欺人的,在较低版本的gromacs使用cuda11的方法:

1、先正常步骤安装nvidia驱动(比如我的是1080TI显卡,就装NVIDIA-Linux-x86_64-440.64.run),cuda10(我用的是cuda_10.2.89_440.33.01_linux.run),gromacs 2019.6 ,保证可以正常进行运行

2、再重启机器,不卸载任何的驱动和cuda,直接在命令行界面安装最新本的驱动,且只安装驱动(比如NVIDIA-Linux-x86_64-455.23.04)

3、重启机器,那么,对于1080TI,gromacs2019.6,也显示用的cuda11了。

实际上,在使用过程中并没有什么区别。

但好处是,可以运行较低版本的gromacs。比如gromacs 2019.6,且让同一台仪器上同时使用1080TI和3090两个显卡。
jimulation 发表于 Post on 2021-1-6 16:00:26
本帖最后由 jimulation 于 2021-1-6 16:10 编辑
lao7 发表于 2021-1-6 15:44
在cuda安装系统里面删除以前安装的,重新安装旧的就可以了。Cuda自带的有删除以往版本的方法,在安装选择 ...

我的/usr/local下有cuda和cuda-11.0两个文件夹,请问是直接删掉这俩吗?这俩是显卡驱动还是toolkit呀,比较懵我参照这个链接https://developer.nvidia.com/cuda-10.1-download-archive-base?target_os=Linux&target_arch=x86_64&target_distro=CentOS&target_version=7&target_type=rpmlocal中的Installation Instructions,依次执行:
sudo rpm -i cuda-repo-rhel7-10-1-local-10.1.105-418.39-1.0-1.x86_64.rpm
sudo yum clean all
sudo yum install cuda
然后在/usr/local下多了一个cuda-10.1文件夹,过程中并未提示删除已安装的内容,这个正常么?
lao7 发表于 Post on 2021-1-6 15:44:00
jimulation 发表于 2021-1-6 14:34
求教CUDA的降级方法

在cuda安装系统里面删除以前安装的,重新安装旧的就可以了。Cuda自带的有删除以往版本的方法,在安装选择那里。
jimulation 发表于 Post on 2021-1-6 14:34:20
lao7 发表于 2020-11-5 23:44
你说的是对的!终于搞定了。我把cuda 降到10.1就可以了。十分感谢!

求教CUDA的降级方法
lao7 发表于 Post on 2020-11-5 23:44:37
liuyuje714 发表于 2020-11-5 20:00
既然你选择高版本的cuda11.1,那么最简单的解决方法就是使用gromacs2020.4,完全兼容cuda11。如果坚持使用 ...

你说的是对的!终于搞定了。我把cuda 降到10.1就可以了。十分感谢!
lao7 发表于 Post on 2020-11-5 21:19:53
liuyuje714 发表于 2020-11-5 20:00
既然你选择高版本的cuda11.1,那么最简单的解决方法就是使用gromacs2020.4,完全兼容cuda11。如果坚持使用 ...

谢谢 我还是把cuda重新降级吧 谢谢!如果不懂我再请教您。
liuyuje714 发表于 Post on 2020-11-5 20:00:10
既然你选择高版本的cuda11.1,那么最简单的解决方法就是使用gromacs2020.4,完全兼容cuda11。如果坚持使用其他低版本gmx,就必须删掉小于等于compute_30部分的配置,具体更改文件位置是源码包中cmake文件夹下一个叫gmxManageNvccConfig.cmake文件

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-14 04:44 , Processed in 0.256134 second(s), 26 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list