计算化学公社

 找回密码 Forget password
 注册 Register
Views: 14770|回复 Reply: 14
打印 Print 上一主题 Last thread 下一主题 Next thread

[CP2K] 使用VMware在Centos工作站安装cp2k尝试,避免更换工作站系统

[复制链接 Copy URL]

255

帖子

1

威望

2682

eV
积分
2957

Level 5 (御坂)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 ChemG 于 2021-10-9 17:59 编辑

作为一枚小白,编译cp2k的那些日子让我苦不堪言(大家都懂的)。本文全部的安装过程均在笔记本(i7-9750H)win10系统的VMware16pro下进行。
本文一个重要的原因就是,最好使用Centos8系统来编译cp2k,其实我也头铁的用centos7.6尝试了无数次编译(希望也能在工作站上编译cp2k),最后我撞了南墙回了头,改用Centos8.3来编译cp2k,基本一次就成了,也没有出现什么报错。基本也是根据社长的博文(CP2K第一性原理程序在CentOS中的简易安装方法 http://sobereva.com/586)进行编译,方法后文详细说。
另一个原因,由于工作站(双路8173m,社长博文http://sobereva.com/444的顶级双路)购买来的时候预装了Centos7,并且已经安装了大量软件并且稳定运行很久了,不想重装系统再重新配置软件(主要是课题组只有这一台工作站,本小白没有在实体机安装过系统,一方面怕把机器搞坏,另一方面,其他软件用起来完全没问题,不想因为cp2k破坏了现有状态),而且用预编译版cp2k速度(56核)还没我笔记本(6核)自己编译的快,果断不能用啊。所以绞尽脑汁想了个奇葩的路线,在工作站中装VMware再安装Centos8编译cp2k。(注意:VMware16pro只能使用32核,对于性能有要求的小伙伴还是换系统吧)
1. 安装VMware
win10下安装VMware16pro方法根据社长的教程来很简单 https://www.bilibili.com/video/B ... id_from=333.999.0.0
Linux下安装VMware16pro也很简单,https://www.tecmint.com/install-vmware-workstation-in-linux/
软件都很容易找到,这里就不说了。(Google大法好)
2. 安装Centos 8.3
Centos 8.3是在笔记本的VMwanre16pro安装的,后面说怎么将整个系统包括编译的东西转移至工作站。下载路径 https://vault.centos.org/8.3.2011/isos/x86_64/ 当然了社长推荐Centos 8 stream也可以,自己选择就行。
安装方法还是
https://www.bilibili.com/video/BV1mt41167Uf?spm_id_from=333.999.0.0 ,但是Centos 8在选择Base Environment稍有不同,社长也在CP2K第一性原理程序在CentOS中的简易安装方法 http://sobereva.com/586)给出了选择的部分:(PS:常有人问我装CentOS 8的时候应该选什么,建议Base Environment选Workstation,组件选GNOME Applications、Legacy UNIX Compatibility、Development Tools、Scientific Support)
3. 编译cp2k
cp2k也是在我自己的笔记本上编译的,基本就是按照社长博文来的CP2K第一性原理程序在CentOS中的简易安装方法 http://sobereva.com/586);
只有部分不同,intel mkl 我使用的是2020 u4,安装方法:社长视频 https://www.bilibili.com/video/B ... id_from=333.999.0.0 ;toolchain部分采用./install_cp2k_toolchain.sh --with-sirius=no --with-openmpi=install --with-plumed=install --with-elpa=no ;这是因为有小伙伴发帖最新的epla有bug,会导致第一个离子步结束卡住,索性我就不用elpa了,去掉elpa后确实第一个离子步不再卡住了,原帖在这里( http://bbs.keinsci.com/thread-25553-1-1.html);其他都是一样的,按照社长的方法来就行。
4. 转移至工作站
用过VMware的小伙伴应该都知道,在VMware的Home页面可以打开其他的虚拟机 https://www.cnblogs.com/jiefu/p/10604835.html,基于此我们将笔记本上的Centos8.3的文件夹整体复制到工作站上,然后用linux的VMware打开这个虚拟机,就可以顺利的进入系统了,并且可以使用cp2k了。但是经过不严谨简单的测试,直接在工作站上直接使用笔记本上编译好的cp2k效率似乎一般般,我就把toolchain/install文件夹删掉,重新./install_cp2k_toolchain.sh --with-sirius=no --with-openmpi=install --with-plumed=install --with-elpa=no ;然后将cp2k-8.2文件夹下的exe、lib、obj文件夹删掉重新编译了cp2k,效果就好一些了。相比6核的笔记本,32核的工作站上速度能达到6核笔记本的3倍左右。(不知道有没有道理,这个问题我在编译QE的时候也发现了,应该是笔记本的CPU是比较新的,工作站的CPU较老,其实相比之下笔记本上的效率并不低。在笔记本上用intel编译器编译的QE6.8相比gnu编译的版本速率要快很多,而工作站上intel编译器编译的版本竟然效率还不如gnu;这是个人的一点浅见,也不知道对不对)。相比原本工作站上只能用预编译版,现在能使用32核的cp2k.popt效率强得多。在test后仅出现了4个错误。
自问自答环节:
Q1:问什么不在工作站直接安装Centos?A:学校网络问题没连上外网,没有笔记本yum方便;同时,费了劲儿在工作站上安装的Centos8竟然编译cp2k各种报错。
Q2:为什么不把系统移动到工作站再编译,而是在笔记本编译一遍再到工作站编译一遍?A:笔记本上其实是之前编译好的,其实也是我的习惯,在自己虚拟机玩儿明白的再到工作站上折腾,况且工作站没外网用着费劲儿,而且Linux系统的VMware了解不是太多,没有win版本玩的溜。
总之:
cp2k能在工作站上使用已经十分欣慰了,解决了很久以来工作站上不能安装cp2k的烦恼,还有就是自己太菜了,对于linux系统及软件编译能力十分欠佳(实验组的计算猿),因此出以下测,在自己使用的情况下也分享给或许也有所困惑的小伙伴们。最后,我只是方法的搬运工,基本上都是总结了社长及其他小伙伴们的方法和经验,有不足之处望大家指出。

评分 Rate

参与人数
Participants 1
威望 +1 收起 理由
Reason
sobereva + 1

查看全部评分 View all ratings

我唯一知道的就是我一无所知,但我是化学小迷弟

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

2#
发表于 Post on 2021-10-9 19:14:42 | 只看该作者 Only view this author
docker
singularity 值得你拥有……

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

255

帖子

4

威望

4941

eV
积分
5276

Level 6 (一方通行)

3#
发表于 Post on 2021-10-10 10:13:00 | 只看该作者 Only view this author
这样每次使用CP2K都要打开VMware吧,感觉挺麻烦的,队列系统也不好搭配使用了。这种需求用singularity确实更好,但是工作站上编译失败只能先放到其他机器上编译好带cp2k的singularity。不过还得注意指令集兼容的问题。

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

4#
发表于 Post on 2021-10-10 12:11:56 | 只看该作者 Only view this author
jitou11 发表于 2021-10-10 11:30
是迁移那一步吗?
细说也@djjj148上面那位大佬。

google for docker singularity

放弃微软,早日解放。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

5#
发表于 Post on 2021-10-10 14:39:12 | 只看该作者 Only view this author
jitou11 发表于 2021-10-10 13:55
你视频里用的conda能不能完成类似这样的迁移?

conda 全平台通用的,你说呢?

当然,你也不能拿着Mac下面的office去微软安装使用。

我是换一个思路……
既然微软能上网,
微软能访问服务器,
可是服务器不能上网。
我有方案让Linux服务器上网,
无需root权限。
比如conda install ,wget ,git clone啥的都可以用。

无需调整现有任何网络设定。
不限定机器数量。

我前几天,给千里之外的机器测试了一下,
轻松让后面的11台机器,顺利dnf update ,没有压力。

当然了,如果经费不足,建议买路由器解决吧。


High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

255

帖子

4

威望

4941

eV
积分
5276

Level 6 (一方通行)

6#
发表于 Post on 2021-10-10 16:53:14 | 只看该作者 Only view this author
jitou11 发表于 2021-10-10 11:30
是迁移那一步吗?
细说也@djjj148上面那位大佬。

singularity无视Linux操作系统的种类和环境,只要CPU的指令集一样,可像可执行文件那样复制到任意的机器上使用,且运行速度和本地的一样快。

255

帖子

4

威望

4941

eV
积分
5276

Level 6 (一方通行)

7#
发表于 Post on 2021-10-10 17:28:22 | 只看该作者 Only view this author
jitou11 发表于 2021-10-10 17:16
好的,我知道了。
我的情况其实比楼主更糟糕一些,服务器内核太老,glibc版本太旧。小机器用的是win10上 ...

yum/apt-get你值得拥有,实在没网络要自己编译也只是configure-make。用个饮水机直接按按钮就好了吧,还得学会里面的电路构造等各种太累

255

帖子

1

威望

2682

eV
积分
2957

Level 5 (御坂)

8#
 楼主 Author| 发表于 Post on 2021-10-10 17:59:50 | 只看该作者 Only view this author
abin 发表于 2021-10-9 19:14
docker
singularity 值得你拥有……

好嘞,谢谢老师指导,我去学习一下新技能
我唯一知道的就是我一无所知,但我是化学小迷弟

255

帖子

1

威望

2682

eV
积分
2957

Level 5 (御坂)

9#
 楼主 Author| 发表于 Post on 2021-10-10 18:09:29 | 只看该作者 Only view this author
djjj148 发表于 2021-10-10 10:13
这样每次使用CP2K都要打开VMware吧,感觉挺麻烦的,队列系统也不好搭配使用了。这种需求用singularity确实 ...

1. 确实用的时候需要打开虚拟机,但是工作站不关机的情况下虚拟机也不需要关机呀,随时都可以使用,空闲的时候也不会怎么占用工作站的cpu和内存,只不过由于VMware16pro的限制最多只能用32核,至少对于我现在只能用笔记本的情况也是一种进步吧。2. 队列系统肯定是不能用啦(除非在虚拟机中的系统装队列),本文的方式主要还是针对自用的工作站吧,这样在不换工作站系统的基础上还能用cp2k,或许也能给有相同需求的小伙伴提供一点点帮助。3. 在上文中也说啦,在系统转移至工作站后又在工作站上重新编译了cp2k,这样也就不存在指令集兼容的问题啦。
我唯一知道的就是我一无所知,但我是化学小迷弟

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

10#
发表于 Post on 2021-10-10 19:05:17 | 只看该作者 Only view this author
jitou11 发表于 2021-10-10 18:57
确实,对一般软件是这样的。
但是CP2K它不一般至少对我来说
开发组锅得背好,虽说是用爱发电,但 ...

怎么的, cp2k提供的Dockfile不好用吗?

有更好的方案提供, 你不会用, 这要是闹哪样呀?

用一个晚上学习一下, 绝对值得.

或者, 我也可给你讲讲singularity在计算平台方面的应用.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

255

帖子

4

威望

4941

eV
积分
5276

Level 6 (一方通行)

11#
发表于 Post on 2021-10-10 19:08:05 | 只看该作者 Only view this author
ChemG 发表于 2021-10-10 18:09
1. 确实用的时候需要打开虚拟机,但是工作站不关机的情况下虚拟机也不需要关机呀,随时都可以使用,空闲 ...

我说的指令集兼容问题是针对容器的。虚拟机我也接触过,作为折衷方案还可以,和容器的方案比70 vs. 100分这样。所以我们也只是给你一个更好的解决方案供参考

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

12#
发表于 Post on 2021-10-10 19:12:52 | 只看该作者 Only view this author
还有二货用腐朽的猪脑子提出质疑,
Docker/Singularity这种方式, 不会导致运行特别慢吗?

腐朽的古董脑子, 可能只能理解微软系统下面那个低能的虚拟机.

如果真的效率不行,
那么在各大云平台上, 使用Docker等技术跑各种应用的互联网公司,
都是白痴吗?

这点逻辑思维都没有的话,
估计博士毕业都很困难的.

Docker上手难度稍高;
Singularity, 绝对是折腾各种软件的必备神器.
以上两句, 来自一个, 从来没有学习过任何计算机专业课程的业余选手的个人言论.

什么, 微软下怎么用?
WTF!!!
算了, 当我没说.
我不使用微软都十多年了. . .
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

255

帖子

1

威望

2682

eV
积分
2957

Level 5 (御坂)

13#
 楼主 Author| 发表于 Post on 2021-10-10 22:41:59 | 只看该作者 Only view this author
djjj148 发表于 2021-10-10 19:08
我说的指令集兼容问题是针对容器的。虚拟机我也接触过,作为折衷方案还可以,和容器的方案比70 vs. 100分 ...

懂啦,谢谢指导啦,刚接触计算一年左右,还有更多的东西要学
我唯一知道的就是我一无所知,但我是化学小迷弟

1245

帖子

1

威望

3860

eV
积分
5125

Level 6 (一方通行)

14#
发表于 Post on 2021-10-31 11:18:42 | 只看该作者 Only view this author
整个docker不比现在这个强多了,还好部署,更好的解决办法是不用cent os而是选SUSE或者ubuntu

255

帖子

1

威望

2682

eV
积分
2957

Level 5 (御坂)

15#
 楼主 Author| 发表于 Post on 2021-10-31 12:45:27 | 只看该作者 Only view this author
biogon 发表于 2021-10-31 11:18
整个docker不比现在这个强多了,还好部署,更好的解决办法是不用cent os而是选SUSE或者ubuntu

docker确实是个好方法,但是对于基础一般的小伙伴还是很有难度的,还好之后小伙伴已经分享了相应的方法 http://bbs.keinsci.com/thread-25773-1-1.html 。我分享的方法其实也是当时情况的一种妥协,实际用着还挺好,也在尝试使用小伙伴分享的方法,利用更多的核数来提高计算效率
我唯一知道的就是我一无所知,但我是化学小迷弟

本版积分规则 Credits rule

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

GMT+8, 2026-2-19 05:42 , Processed in 0.186390 second(s), 22 queries , Gzip On.

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