计算化学公社
标题: GROMACS的原生Windows版的编译和安装方法(支持GPU加速) [打印本页]
作者Author: sobereva 时间: 2019-1-4 21:09
标题: GROMACS的原生Windows版的编译和安装方法(支持GPU加速)
GROMACS的原生Windows版的编译和安装方法(支持GPU加速)
Compilation and installation methods of the native Windows version of GROMACS (supporting GPU acceleration)
First release: 2019-Jun-4 Last update: 2021-Jul-10
注1:本文拿2019.1版作为例子进行说明编译过程。本文的纯CPU版的编译方法经测试对于GROMACS 2018、2019各版本都适用,其它版本只要不是太老的应当都可以用,但未经实际测试。本文的编译CUDA GPU加速版的方法经测试对GROMACS 2019.1及之后的2019.x版、2020.x版都适用,不适用于2019.1之前的版本。本文的编译方法对于未来的GROMACS版本以及其它Visual Studio版本是否适用笔者不保证,请自行尝试,如果发现不行,请举一反三试图解决。
注2:如果大家对编译过程不感兴趣,只想立刻直接用笔者编译好的Windows版的GROMACS,请直接看本文第5节,里面有下载地址和安装方法。
1 前言:关于在Windows下使用GROMACS
GROMACS一般都是在Linux下运行,其Linux下的安装方法我在《GROMACS的安装方法》(http://sobereva.com/457)中已经详细交代了,还特意录了视频演示编译过程。在Windows下使用GROMACS有多种方式:
• 使用VMware装Linux虚拟机,并照常以Linux方式编译。装Linux虚拟机十分简单,过程见《在VMware 15中安装CentOS 7.6的完整过程视频演示》(http://sobereva.com/454)。Linux下的所有程序都可以以这种方式使用,而且直接有图形环境。但局限性是VMware客户机支持的CPU核数有限,比如VMware 16最多支持32个核。总的来说笔者极度青睐VMware。
• 在Cygwin下编译。Cygwin提供了类似Linux系统的命令行环境,也提供了程序包管理器和源,相对于使用VMware更轻量级,而且编译出的程序只要提供一些Cygwin的dll文件就可以直接挪到其它Windows机子下用。对于大多数程序Cygwin下编译方式和Linux下一样(gcc、make、cmake等都有),但也有很多情况需要额外折腾,有时编译过程特别迟钝,而且有时候有一些特殊情况,比如笔者在Cygwin下编译GROMACS时必须要求不利用AVX指令集,否则编译会失败。
• Win10的Linux子系统(WSL)。笔者个人不怎么喜欢这东西,用着别扭,这里不多提,和Cygwin在形式上有很大相似之处,鉴于是Windows自带的,以后必然会吞掉Cygwin很大的生存空间。
以上三种方法在原理上都会使得计算性能打一些折扣,但一般也就10~15%左右,这不是重点,共同的严重缺点是不能支持GPU加速(WSL2倒是号称支持,不过我没试过)。在Windows下最完美的运行GROMACS的方法莫过于直接编译原生的Windows版GROMACS,编译出的程序可以拿到任何其它Windows机子上直接用,不需要装额外运行环境,不会像上述三种方法那样会对CPU性能打折扣,而且还能像Linux下一样在跑GROMACS的时候使用GPU加速。
本文目的是详细介绍一下怎么编译原生的Windows版GROMACS,其实过程一点也不复杂(网上有些教别人编译Windows版GROMACS的文章写得很不好,过程十分繁琐,写得不明不白,而且对较新版本还不适用)。
首先提一下,GROMACS需要利用FFT(快速傅立叶变换)库,有三种选择
(1)FFTW库:这是最佳选择,一般都用这个,效率高。在Linux下编译GROMACS可以自动下载FFTW库并安装,但是在Windows下没法实现这点
(2)MKL库:效率和FFTW差不多,需要额外安装,较麻烦,而且占不少硬盘
(3)fftpack库:这是GROMACS自带的,图省事用这个就行了,但是经实测效率比基于FFTW库低百分之十几
下面按照编译过程由简到繁,分为三部分依次说:
(1)编译基于fftpack的纯CPU版
(2)编译基于fftw的纯CPU版
(3)编译基于fftw且支持CUDA加速的版本
本文只涉及编译最常用的单精度版、只能单节点并行的情况。本文编译的都是64bit版本。
2 编译基于fftpack的纯CPU版
如果你对计算效率没什么要求,只需要以尽量简单的方式编译出一个能在Windows下跑的GROMACS,那么只看这一节就够了。下面我们来编译基于fftpack库的GROMACS。
首先安装Visual Studio,这里用的是Visual Studio 2019。Visual Studio最低级的是community(社区)版,是完全免费的。大家在https://visualstudio.microsoft.com/zh-hans/downloads/就可以下载到最新版。下载到的是一个非常小的安装器,启动它就可以在线安装(目前的Visual Studio是没有镜像文件的。虽然也有办法把其组件全部下载后再离线安装,但是会占几十GB硬盘,因此不要考虑离线方式安装)。虽然看起来在线安装好像很耗时,但其实以现在的网速来说总耗时也不算很高。安装Visual Studio的时候应选择“使用C++的桌面开发”,确认“安装详细信息”中“用于CMake的Visual C++工具”是已选中的状态。
将gromacs-2019.1.tar.gz源代码包解压到比如C:\gromacs-2019.1。
在开始菜单里选Visual Studio 2019 - Visual Studio Tools - Developer PowerShell for VS 2019,由此进入编译环境都配置好的命令行窗口。然后依次输入
cd C:\gromacs-2019.1
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=C:/gmx2019.1 -DGMX_FFT_LIBRARY=fftpack -G "Visual Studio 16 2019"
cmake --build . --target INSTALL --config Release
耐心地等待编译好后,会看到出现了C:\gmx2019.1目录,里面就是编译好的可执行文件以及相关文件了,内容和Linux版一样。按照本文第5节的做法将C:\gmx2019.1\bin添加到Path环境变量后,程序就可以用了,用法和Linux版没有任何区别。
当前机子的CPU最高支持什么指令集,默认情况下编译出的GROMACS就是基于什么指令集的。如果比如你的机子的CPU支持AVX2指令集,那么编译出的GROMACS拿到只支持到AVX指令集的CPU上就没法跑,比如mdrun运行时会崩溃。
有几点值得额外说明,有兴趣可以了解一下:
cmake的-G选项代表设置Generator,相当于指定编译环境,可以运行cmake -G查看有哪些Generator可选。"Visual Studio 15 2017 Win64"代表产生出对应于VS2017的64bit平台的解决方案,之后进而编译出的程序就是适合Windows 64bit的版本了。
Visual Studio自带了cmake(因为我们安装VS时选上了),实际上也可以直接去cmake官网上下载独立的cmake程序,里面还带有cmake-gui.exe,提供了cmake的图形界面。网上某些编译Windows版GROMACS的文章用了这个东西,实际上完全多此一举,直接按照上面的做法用命令行输入省事得多。
如果读者打开build目录下的Gromacs.sln解决方案文件,会看到里面有很多不同的工程,其中名为ALL_BUILD的工程对应于编译出最终的可执行文件,而INSTALL的工程对应于不仅编译可执行文件(因为其引用了ALL_BUILD),还将程序安装到CMAKE_INSTALL_PREFIX设的目录,因此上文的语句里用了--target INSTALL。
上面的--config后面跟的是编译时用的配置。名为Release的配置是适合用于发布的,会对代码充分进行优化。
在cmake --build ...的那一步后面再接上比如-j 4代表使用4核并行编译,但是实测发现对编译耗时没有可查觉的影响,和Linux下的情况完全不同。
3 编译基于fftw的纯CPU版
先在此下载FFTW 3.3.8库:http://www.fftw.org/fftw-3.3.8.tar.gz。将之随便解压到某个地方,然后开启Developer PowerShell for VS 2019,进入FFTW库解压的目录(此目录下会看到CMakeLists.txt),运行以下命令
cmake . -DCMAKE_INSTALL_PREFIX=C:\fftw338 -DENABLE_SSE2=ON -DENABLE_AVX=ON -DENABLE_FLOAT=ON -DBUILD_SHARED_LIBS=ON -G "Visual Studio 16 2019"
cmake --build . --target INSTALL --config Release
这样,FFTW库就被装到C:\fftw338目录下了,里面有库文件、头文件等。如果你的CPU支持AVX2指令集,建议把上面命令里-DENABLE_AVX=ON改为-DENABLE_AVX2=ON以获得更好的性能。
接下来的编译过程类似上一节,区别是指定的FFT库不同:
cd C:\gromacs-2019.1
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=C:/gmx2019.1 -DGMX_FFT_LIBRARY=fftw3 -DCMAKE_PREFIX_PATH=C:/fftw338 -G "Visual Studio 16 2019"
cmake --build . --target INSTALL --config Release
编译完成后,手动将C:\fftw338\bin里的fftw3f.dll拷到C:\gmx2019.1\bin目录下,之后将这个目录加入Path环境变量后就可以用了。
4 编译基于fftw且支持CUDA加速的版本
去https://developer.nvidia.com/cuda-toolkit下载CUDA toolkit,里面提供了编译CUDA加速程序所需要的库、头文件、编译器等等。为了节约硬盘空间,装CUDA toolkit时只需要选择安装CUDA分类里的Development、Runtime和Visual Studio Integration即可。这里假定装到了自定义的D:\CUDA_toolkit目录下。值得一提的是,编译CUDA版GROMACS的机子并不需要非得有可以实现CUDA加速的GPU,只要装了CUDA toolkit,在什么机子上都可以编译。
按照上一节的做法把FFTW库编译好,然后输入
cd C:\gromacs-2019.1
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=C:/gmx2019.1_GPU -DGMX_FFT_LIBRARY=fftw3 -DCMAKE_PREFIX_PATH=C:/fftw338 -G "Visual Studio 16 2019" -DGMX_GPU=ON -DCUDA_TOOLKIT_ROOT_DIR=D:/CUDA_toolkit
cmake --build . --target INSTALL --config Release
然后和上一节一样把fftw3f.dll拷到新产生的C:\gmx2019.1_GPU\bin目录下,之后将这个目录加入Path环境变量后就可以用了。
如果你编译出的GROMACS要拿到其它没有装CUDA toolkit的机子上用,或者那台机子装的CUDA toolkit是老版本,那么你应当先把D:\CUDA_toolkit\bin\cufft64_10.dll(_后面的数字视CUDA toolkit版本而定)也拷到C:\gmx2019.1_GPU\bin目录下,然后再把这个gmx2019.1_GPU目录拷到其它机子上用。
如果当前机子里有支持CUDA加速的GPU,而且GPU驱动的版本号足够新,满足当前CUDA toolkit版本的要求,那么运行CUDA版GROMACS的时候就会自动识别出兼容的GPU,并提示利用GPU进行运算。如果你的GPU不满足要求或者驱动版本太老,那么CUDA版GROMACS也能运行,只不过是纯粹用CPU来跑。在https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html页面里可以查到各个CUDA toolkit所需要的GPU驱动最低版本号,如果你的GPU能装上满足要求版本的驱动(较新版本的驱动不支持很老的GPU),那么你的GPU就能加速GROMACS运算。
PS:对于用GPU加速的情况,用fftpack还是fftw对计算耗时影响很小,图省事的话基于fftpack编译GPU版也可以。
5 笔者预编译的原生Windows版的安装方法
这里提供笔者编译好的GROMACS Windows 64bit版,在Win7、Win10、Win11下经测试都可以用,都可以单机并行,FFT库都是用的FFTW。
2018.8 CPU版,AVX指令集(15 MB):http://sobereva.com/soft/gmx/gmx2018.8_AVX_win64.rar
2019.6 CUDA GPU加速版,AVX指令集(93 MB):http://sobereva.com/soft/gmx/gmx2019.6_AVX_CUDA_win64.rar
2020.3 CUDA GPU加速版,AVX指令集(93 MB):http://sobereva.com/soft/gmx/gmx2020.3_AVX_CUDA_win64.rar
2020.6 CUDA GPU加速版,AVX2指令集(88 MB):http://sobereva.com/soft/gmx/gmx2020.6_AVX2_CUDA_win64.rar(nVidia显卡驱动需>=471.11版)
使用前必须先设置环境变量,将程序的bin目录加入到Path环境变量里。对于Win7来说,过程是:假设预编译版GROMACS压缩包解压到了C:\gmx2019.6,应当进入“控制面板”-“系统”,选择“高级系统设置”,在“高级”标签页里选择“环境变量”,在“xxx的用户变量”下面选择Path变量,点击“编辑”,在“变量值”文本框最后加上一个分号,然后再写上GROMACS目录的bin子目录的路径,比如;C:\gmx2019.6\bin\。之后进入Windows的命令行窗口,输入gmx命令的时候就应该出现相关提示信息了,此时就可以像Linux版一样照常使用了。
注:如果你的计算机水平十分糟糕,甚至差到难以按照上面的说明正确设置环境变量,一定要参考演示视频:https://www.bilibili.com/video/av39914815/。
如果你的机子里没有装Visual Studio,或者装了但是版本比2019老,应先去https://aka.ms/vs/16/release/VC_redist.x64.exe下载并安装Visual C++ Redistributable,这提供了必备的运行环境,否则启动时会提示缺少dll。
对于上面提供的CUDA GPU加速版,使用者并不需要在机子里安装CUDA toolkit,只要确保nVidia显卡驱动足够新就可以直接使用。如果你的驱动太老导致无法使用,应当先去nVidia官网https://www.nvidia.com/Download/index.aspx下载最新版本驱动并安装。
不要问我怎么双击gmx.exe之后程序闪退(老有人问),因为GROMACS根本就不是靠双击图标来使用的!GROMACS是通过命令行使用的程序,稍微有点最基本GROMACS常识的人都知道不应该双击gmx.exe图标来使用。如果想从0开始系统性学习GROMACS,强烈建议参加北京科音分子动力学与GROMACS培训班,一次性彻底学明白,详见:http://www.keinsci.com/workshop/KGMX_content.html。
如果你对Windows下命令行的操作一丁点都没概念,连查看目录下有什么文件(dir命令)、怎么切换路径(cd命令)都不会的话,我强烈建议你先花一点点看这套视频学一遍这些基础:https://www.youtube.com/watch?v= ... xT4JbMu&index=1。没有这些最基本常识的话,什么命令行程序你都没法顺利使用(不限于GROMACS)。
经笔者在2*E5 2696v3(36核)机子上对一个三万多原子的蛋白质+水盒子的测试发现,Windows下纯CPU版的计算速度只有按照《GROMACS的安装方法》(http://sobereva.com/457)方法编译出来的Linux版的60%,估计是微软的编译器没有gcc那么给力所致。GPU版我没有对比测试,但应该速度相差不会这么显著。所以,如果你只用CPU来跑计算,建议还是用Linux系统。
作者Author: comboy2008 时间: 2019-1-4 22:23
进入“控制面板”-“系统”,选择“高级系统设置”,在“高级”标签页里选择“环境变量”,在“xxx的用户变量”下面选择Path变量,点击“编辑”,在“变量值”文本框最后加上一个分号,.....。。。。。。。。。。。很详细!
作者Author: sobereva 时间: 2019-1-5 09:26
我每次写帖子都是考虑到初学者理解能力的底限来写的,甚至还担心有人不懂都录了视频。但仍然经常有人不能正确领会...
作者Author: yjcmwgk 时间: 2019-1-5 09:35
然后就有人困惑:“控制面板是啥?”
作者Author: dalaomao2008 时间: 2019-1-5 12:08
感谢大神,大神辛苦了
作者Author: greatzdk 时间: 2019-1-6 13:15
很棒,cmake的gui工具也很好,如此,可以可视化的来选择编译条件。
作者Author: lonemen 时间: 2019-1-6 13:15
感谢sob老师!太赞了!
作者Author: zsu007 时间: 2019-1-7 21:39
谢谢,可以一试!
作者Author: sobereva 时间: 2019-3-29 08:36
彻底重写了本文,将Windows下编译GROMACS的过程终极完美化,增加了基于FFTW库的编译介绍,增加了支持CUDA版本的编译介绍,而且还直接提供了预编译好的直接就能用的CUDA加速版windows 64bit GROMACS 2019.1。
作者Author: neocc 时间: 2019-4-21 02:42
本帖最后由 neocc 于 2019-4-21 15:51 编辑
下载社长的CUDA加速版(93.3MB)
D:\CUDA_toolkit目录下装CUDA toolkit时,选择安装CUDA分类里的Development、Runtime和Visual Studio Integration。
把D:\CUDA_toolkit\bin\cufft64_10.dll拷到C:\gmx2019.1_GPU\bin
然后cmd里面输入gmx -version
最后一行依然显示CUDA runtime: N/A
请问社长这个要如何修改?
注:神船k680e i5 7400 1050ti 4g gddr5
作者Author: sobereva 时间: 2019-4-21 06:44
dll已经直接提供在我的文件包里了,有这个直接就能跑我编译好的,不需要你额外安装CUDA toolkit从里面提取这个文件。你需要做的是把你的显卡驱动更新到最新,显卡驱动版本和CUDA toolkit版本完全是两码事
作者Author: neocc 时间: 2019-4-21 15:51
好的,谢谢社长
作者Author: neocc 时间: 2019-4-24 12:43
请问社长,驱动已经更新到最新,gpu可以跑起来,但是在cmd里面想看NVIDIA-smi,提示failed to initialize NVML:unknown error😂
作者Author: sobereva 时间: 2019-7-6 17:09
本贴里编译好的gromacs 2019.1版下载链接已更新为了gromacs 2019.3版
作者Author: @Bruce 时间: 2019-7-8 19:30
老师好,请问为什么我用VS2019编译的fftw-3.3.8和gromacs-2019.3都没有bin文件夹?是过程出问题了吗?
作者Author: sobereva 时间: 2019-7-9 03:03
不清楚
反正用VS2017,严格按文中的做法编译,肯定有bin目录
作者Author: @Bruce 时间: 2019-7-9 08:16
好的,我用VS2017试试,谢谢老师
作者Author: 308866814 时间: 2019-7-9 17:04
恳请社长测试下windows版gpu加速的gromacs与Linux下gpu加速的区别,因为到目前也不确定在windows下跑支持cuda的gromacs速度衰减是不是很显著,谢谢谢谢
作者Author: sobereva 时间: 2019-7-10 08:38
我目前手头没条件测试
gmx 2019里已经把几乎所有耗时的部分全都挪到GPU了,而windows和linux下GPU代码部分都是用的相同的nvidia的编译器,原理上不会有多少速度差异
作者Author: tjuptz 时间: 2019-8-19 15:03
本帖最后由 tjuptz 于 2019-12-23 14:03 编辑
之前的错误认识,已删除
作者Author: liuyuje714 时间: 2019-8-19 17:23
不存在这个问题。
作者Author: tjuptz 时间: 2019-8-19 17:36
本帖最后由 tjuptz 于 2019-8-19 19:14 编辑
经核验确实是。
作者Author: aken5555 时间: 2019-10-13 16:42
谢谢老师分享,下载了试试去
作者Author: lao7 时间: 2019-12-23 12:12
本帖最后由 lao7 于 2019-12-23 13:19 编辑
我加了之后仍旧提示错误:提示为:gmx不是内部或者外部命令,也不是可运行的程序或批处理文件。
安装的是win 10下的CPU版本。
作者Author: lao7 时间: 2019-12-23 13:17
× 是个什么东西?
作者Author: tjuptz 时间: 2019-12-23 14:04
这是我之前的错误认识,你的问题可能重启一下就行了,使环境变量生效
作者Author: sobereva 时间: 2020-1-11 01:00
更新了本文提供的预编译的gmx版本,给出了2018.8纯CPU版和2019.5 CUDA GPU加速版
作者Author: 夏一天 时间: 2020-1-12 14:53
社长大人,能否编译一个基于AVX2指令集编译的gromacs5.1.5 的原生windows CUDA GPU加速版?因为很多程序新版本的不兼容,期待有老版本的WindowsGPU加速版!
作者Author: sobereva 时间: 2020-1-12 15:29
目前没这个编译打算
作者Author: liuyuje714 时间: 2020-1-12 20:27
下面链接是基于AVX2_256编译的GROMACS 5.1.5的GPU加速版本,里面有说明,请尽快下载以免链接过期。
https://c-t.work/s/6d35e8dc4f5741
作者Author: 夏一天 时间: 2020-1-13 16:36
大神!请受小弟一拜!真的非常崇拜您!太感谢您的帮助了!小弟跪谢!
作者Author: 夏一天 时间: 2020-1-20 22:14
大神您好,最近我在编译基于avx2_256指令的gromacs2019.5的windowsGPU版时,cuda总是连接不上去。网上说AVX2_256比AVX_256快很多,说可以三路交叉什么的,一直想尝试比较一下,但本人水平有限,请教您能否有时间帮忙编译一下?非常感谢!
作者Author: liuyuje714 时间: 2020-1-20 22:21
听谁说快很多的?在win下不存在快很多,也不懂你说的交叉是什么东西,win下一般也是单机,多显卡并行显然不要用win,linux才是最好的选择。下面网址是我提供的各种版本的gmx,除了4.6.7,其他都是avx2_256,你如果对性能感兴趣可以自行测试,我并不认为会有大幅提升。https://liuyujie714.com/15.html
作者Author: sobereva 时间: 2020-1-21 01:02
直接用我文中提供的编译好的2019.5就完了,完全没必要自己编译。
本来GPU大部分计算量就在GPU上,根本没必要编译成AVX2版。更何况我在文中也明确说了AVX2版并不会比AVX版性能有什么明显提升。
作者Author: 夏一天 时间: 2020-1-21 14:44
多谢大神指导!听网上说的,只是想亲测一下,没有其他意思!多谢您提供的版本链接!
作者Author: 夏一天 时间: 2020-1-21 14:47
是的,多谢您的指点,网上看了很多杂七杂八的帖子,现在明白了,确实计算是在GPU上,和指令集无关。受教了!
作者Author: lao7 时间: 2020-4-2 22:38
这里面有个疑问:楼主用的虚拟机装的Gromacs。那么进行GPU显卡加速的时候,VM里面的显卡似乎是虚拟出来的?如何让Gromacs直接调用硬件上的加速显卡呢?是不是linux版本的显卡驱动需要另行安装?
作者Author: sobereva 时间: 2020-4-4 05:06
VMware里面虽然支持硬件加速显示3D物体(性能大打折扣),但完全不支持CUDA GPU加速,没法在vmware里直接用GPU加速跑gmx
作者Author: huangjin 时间: 2020-4-4 20:33
感谢老师的分享,老师辛苦了。
作者Author: 一起搞科研 时间: 2020-7-21 17:26
您好,我用win10,重启了也还是不行,总是提示为:gmx不是内部或者外部命令,也不是可运行的程序或批处理文件。
作者Author: tjuptz 时间: 2020-7-21 18:53
严格按照社长的视频教程做,再有问题得具体把你的操作步骤贴出来了
作者Author: 一起搞科研 时间: 2020-7-21 23:06
问题解决了。下次我注意提问方式。谢谢提醒。
作者Author: sobereva 时间: 2020-8-16 17:34
文中第五节新加入了2019.6 GPU win64版,这是2019系列的最终版本。还加入了2020.3 GPU win64版,这是当下最新版本。
作者Author: 永远的奇风镇 时间: 2020-9-9 15:30
“5 笔者预编译的原生Windows版的安装方法 这里提供笔者编译好的GROMACS Windows 64bit版,在Win7、Win10下经测试都可以用,都可以单机并行,是基于AVX指令集编译的,FFT库都是用的FFTW”
请问这个方法需要提前编译好FFT库吗?还是只用安装好93MB的包就行了?
作者Author: sobereva 时间: 2020-9-10 03:43
不用自己装FFTW。直接用我编译的gmx就完了
作者Author: 永远的奇风镇 时间: 2020-9-10 09:20
谢谢sob大神
作者Author: cheviax 时间: 2020-10-5 21:07
本帖最后由 cheviax 于 2020-10-6 13:18 编辑
sob老师,我在运行第四行命令时报错说Could not create named generator Visual Studio 2019 Win64
安装的版本是vs2019,cudav11.1,gromacs20.3,
会不会是我改错了?
cmake .. -DCMAKE_INSTALL_PREFIX=C:\soft\gmx2020.3_GPU -DGMX_FFT_LIBRARY=fftpack -G "Visual Studio 2019 Win64" -DGMX_GPU=ON -DCUDA_TOOLKIT_ROOT_DIR=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1
作者Author: liuyuje714 时间: 2020-10-6 08:14
你犯了两个错误。第一,用vs2019默认的generator是Visual Studio 16 2019,
64位和32位可以用-A选项指定但如果你用的是x64的那个vs终端,就不需要,甚至你不用指定-G选项也可以,默认的就是这个;第二,你用的cuda11,它废除了sm30的支持,你必须修改nvcc cmake那个文件,删掉与30有关的部分才能够编译通过。
作者Author: cheviax 时间: 2020-10-6 14:37
感谢,改成vs 16 2019后确实能往下进行了
不过run.nvcc.cmake文件里搜不到sm或者30,就没管它
然后出现了Configuring incomplete, errors occurred,让看一个log文件,但是log文件里错误和警告都是0……
暂时放弃了,直接用sob老师编译好的那个了
作者Author: 海人1213 时间: 2020-12-17 11:43
sob老师,我使用了win10的机子,按照视频演示先解压编译好的gmx2019.6_GPU,然后在Path环境变量后面加分号,再把bin的地址复制过去。用win+r的方式打开命令行窗口,但是输入gmx的时候一直不成功,显示的内容如图。下面我该怎么办呀
作者Author: mekelleche 时间: 2020-12-17 15:00
How to make the program support the 4 CPU of my PC, in the compilation process.
作者Author: mekelleche 时间: 2020-12-17 18:56
How to compile the program in purpose to use all the CPU in my PC.
作者Author: sobereva 时间: 2020-12-18 06:04
You do not need to do any special thing, the compiled GROMACS utilizes all CPU cores in you machine by default, and you can use -nt option to customize how many cores will be used in the calculation.
作者Author: sobereva 时间: 2020-12-18 06:06
重启再试。还不行的话,输入echo %Path%命令看看到底gmx.exe所在目录加入到Path环境变量没有,没有的话肯定是环境变量没设对,没其它的原因。
作者Author: 海人1213 时间: 2020-12-18 20:33
sob老师,我按您说的方法看了一下,环境变量应该是添加上了,如图。
我这种情况还有救吗?
作者Author: snljty 时间: 2020-12-18 20:45
不知道你怎么编辑的环境变量,你双引号用的不对。Win10的话此电脑→右键单击→属性→高级系统蛇者→环境变量→上面的用户变量或者下面的系统变量→Path→编辑,自己调整一下。先把双引号去了。你这个情况没必要用双引号。
作者Author: 牧生 时间: 2020-12-22 09:14
本帖最后由 牧生 于 2020-12-22 09:17 编辑
可以更简单易懂的,不用管分号。
不要用中文路径
(, 下载次数 Times of downloads: 118)
作者Author: 海人1213 时间: 2020-12-27 09:39
谢谢各位老师的指点,我已经按照牧生提供的方法给解决了。
作者Author: 薛定谔没有定 时间: 2021-3-13 17:04
老师你好,我是纯小白,我按照您的步骤安装后,打开bin文件夹中的gmx,可是只会闪过一个黑框,还是打不开,请问这该怎么解决
作者Author: 牧生 时间: 2021-3-13 22:01
似乎你双击图标了吧??
如果是win10系统,参照57楼,操作结束后,在任意英文路径下,按住shift点右键,打开命令窗口,输入gmx就会有提示了
作者Author: azero 时间: 2021-6-1 12:05
PrepareForBuild:
正在创建目录“x64\Release\release-version-info\”。
正在创建目录“x64\Release\release-version-info\release-.3F9F699C.tlog\”。
InitializeBuildStatus:
正在创建“x64\Release\release-version-info\release-.3F9F699C.tlog\unsuccessfulbuild”,因为已指定“AlwaysCreate”。
CustomBuild:
Generating release version information
CMake Error at cmake/gmxGenerateVersionInfoRelease.cmake:121 (file):
file failed to open for reading (No such file or directory):
C:/gromacs-2020/computed_checksum
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(209,
5): error MSB6006: “cmd.exe”已退出,代码为 1。 [C:\gromacs-2020\build\release-version-info.vcxproj]
已完成生成项目“C:\gromacs-2020\build\release-version-info.vcxproj”(默认目标)的操作 - 失败。
求助,编译2020.6版本,这个 C:/gromacs-2020/computed_checksum是什么梗
作者Author: yuangenyue 时间: 2021-8-20 18:58
确实要重启一下才行,谢谢大神分享!
作者Author: hlfancomeon 时间: 2021-9-17 16:49
非常受用,谢谢社长分享
作者Author: sun666 时间: 2021-9-27 17:12
请问老师gromacs2021版有windows版本吗
作者Author: sobereva 时间: 2021-9-27 19:58
无
作者Author: 喵星大佬 时间: 2021-10-15 03:39
本帖最后由 喵星大佬 于 2021-10-15 05:53 编辑
在Win下纯CPU跑就用WSL2就好了,速度和直接用Linux几乎没啥差,只不过注意跑的时候目录一定要是Linux的目录,所以其实如果跑MD的话只用Win+WSL2是完全OK的
作者Author: moxxi 时间: 2022-5-14 15:05
卢老师,下载您预编译的“2020.6 CUDA GPU加速版,AVX2指令集”解压并按文章设置环境变量后,运行时显示gromacs是modified的版本,而“2019.6 CUDA GPU加速版,AVX指令集”则在同样操作后没有出现这一显示,请问这个是我环境变量设置的问题吗?(我电脑上的CUDA Toolkit版本是v11.7,fftw版本是3.3.8)
作者Author: sobereva 时间: 2022-5-14 16:37
不用管这个
作者Author: moxxi 时间: 2022-5-14 18:04
哦哦,好的,谢谢老师
作者Author: joke122 时间: 2022-9-18 20:13
请问老师,win11能否安装
作者Author: sobereva 时间: 2022-9-19 00:36
just try
作者Author: 深爱小李 时间: 2022-9-28 16:18
2018.8 CPU版,AVX指令集(15 MB):http://sobereva.com/soft/gmx/gmx2018.8_AVX_win64.rar
2019.6 CUDA GPU加速版,AVX指令集(93 MB):http://sobereva.com/soft/gmx/gmx2019.6_AVX_CUDA_win64.rar
2020.3 CUDA GPU加速版,AVX指令集(93 MB):http://sobereva.com/soft/gmx/gmx2020.3_AVX_CUDA_win64.rar
2020.6 CUDA GPU加速版,AVX2指令集(88 MB):http://sobereva.com/soft/gmx/gmx2020.6_AVX2_CUDA_win64.rar(nVidia显卡驱动需>=471.11版)
请问@sobereva 老师,这三种加速版(尤其最后一种)文中说的是需要N卡才能提供加速还是只有N卡才能正常运行呀,不是N卡的是直接不能用吗,还是只是不能用GPU加速呢?
作者Author: 夏一天 时间: 2022-9-28 19:10
希望@sobereva 老师继续补充2021 CUDA GPU加速版、2022 CUDA GPU加速版等win版gromacs,完善win平台gromacs软件
作者Author: sobereva 时间: 2022-9-29 04:28
新版本gmx在windows下由于编译器兼容性问题不便于编译
用太新的版本也没多大必要
作者Author: sobereva 时间: 2022-9-29 04:31
有nVidia的GPU(而且不是性能特烂的低端型号)就用这里的CUDA GPU加速版,没有就用CPU版
作者Author: 深爱小李 时间: 2022-9-29 10:24
嗯嗯好的 谢谢老师
作者Author: raymond 时间: 2022-11-10 10:51
使用第5步预编译的原生Windows版的安装方法里面的2020.6 CUDA GPU加速版,AVX2指令集(88 MB)版本的GROMACS 是不是就不需要经过第2/3/4步的操作,只要设置好环境变量之后就可以直接使用是吗?
作者Author: sobereva 时间: 2022-11-10 11:16
是。文中说得很明确
作者Author: raymond 时间: 2022-11-10 11:25
好的,非常感谢老师
作者Author: yaoshi1206 时间: 2023-11-22 10:52
社长有没有编译好的 gmx2023.1 windows版本,工作站上是linux版的gmx2023.1,运行完把结果拷回来,分析处理时用gmx2020.6处理轨迹是,报版本不兼容错误Fatal error:
reading tpx file (md_0_1.tpr) version 127 with version 119 program
作者Author: sobereva 时间: 2023-11-22 19:15
没有
虚拟机里装个2023就完了
作者Author: yaoshi1206 时间: 2023-11-22 23:15
已按社长的博文方法(http://bbs.keinsci.com/thread-11848-1-1.html)编译好windows下cpu版的gmx2023.1,多谢指点!
作者Author: uogh 时间: 2023-12-7 07:58
感谢大神!
作者Author: PoorChaos 时间: 2023-12-25 10:46
分享一个出来
作者Author: wilely 时间: 2024-4-2 18:13
我按照第5项下载安装的windows版,里面各种力场文件都有吗》还是自己去下载?
作者Author: sobereva 时间: 2024-4-3 02:12
有
作者Author: wilely 时间: 2024-4-3 16:15
哦,谢谢。我笔记本cpu8核的,要设置吗?
作者Author: sobereva 时间: 2024-4-3 16:57
语义不明
如果是指做动力学用的核数设置,mdrun结合恰当的选项就完了,对windows和linux一样。所有这类常识知识在北京科音分子动力学与GROMACS培训班(http://www.keinsci.com/workshop/KGMX_content.html)里都有详细说明
作者Author: wilely 时间: 2024-5-19 18:08
刚学习使用,问个简单问题,模拟所需的top,gro,itp文件都准备好了,要把它们放在在该程序哪个目录下运行了。
作者Author: wilely 时间: 2024-5-19 19:57
我安装的软件top目录下,很多itp文件(像ffG431,ffG432)等打开出现error。
(, 下载次数 Times of downloads: 41)
。要怎么办》
作者Author: Seyilaxa 时间: 2024-5-19 20:14
这个不是什么error,像文件中说的一样,自带的水模型和其他.itp文件被移到了各个力场的文件夹中,使用时.top中应该include力场文件夹中的.itp。如果是对大分子进行模拟,pdb2gmx能自动生成.top,不需要自己操心,只要按屏幕上的提示选择力场和水模型就行。
作者Author: wilely 时间: 2024-5-19 20:38
好的。谢谢
作者Author: wilely 时间: 2024-5-19 20:54
运行时出现错误。是什么问题?
作者Author: sobereva 时间: 2024-5-20 02:07
确保压缩包下载完整,并且尝试放到其它分区、关闭任何防护程序再试
作者Author: wilely 时间: 2024-5-25 21:06
我做有机小分子的模拟。sobtop准备小分子配体top文件。有些力场似乎没有,这个按照包是全的吗?
作者Author: Seyilaxa 时间: 2024-5-25 23:44
有些力场没有指的是什么,有一些力场属于gmx支持但是不自带,可以下载后解压到top文件夹里
作者Author: Christ 时间: 2024-6-7 01:58
各位老师好,我想请问,使用2020.6 CUDA GPU加速版,除了常规的Gromacs的引用,是否还需要引用此网页?因为您这个毕竟是motified的版本。谢谢各位指导!
作者Author: sobereva 时间: 2024-6-7 02:13
不用
作者Author: Eudaimonia 时间: 2024-6-16 11:23
请问一下老师,我下载了 2020.6 CUDA GPU加速版,AVX2指令集,显卡型号4070,cuda驱动版本555.85;
在使用的过程中发现cpu占用率100%,显卡占用率0%,看起来是没有调用GPU导致的,这种情况应该怎样解决呢?
作者Author: sobereva 时间: 2024-6-16 19:23
尝试论坛里其他人编译的更新的gromacs windows GPU版
欢迎光临 计算化学公社 (http://bbs.keinsci.com/) |
Powered by Discuz! X3.3 |