|
先说下具体背景,VASP计算小白一个,之前从未自己组过服务器,这次组服务器时看过论坛里的帖子,有很大帮助。
首先致谢S大佬的硬件帖:http://bbs.keinsci.com/thread-32755-1-1.html
和关于超线程讨论的帖子:http://sobereva.com/392
对我有很好的帮助,感恩!
服务器主要配置如下:
CPU:AMD epyc 7c13*2,共计128核256线程
主板:同泰怡t1deep
内存:SK ddr4 3200, 32*16=512G
运行系统为windows工作站版本,软件为某个界面化的VASP软件。
关于超线程的讨论,最开始的时候我其实是准备按照S大的建议,开着超线程计算的。但是在这个过程中遇到了点问题。
首先是某个教师A的服务器上(同配置),未关闭超线程,他单次提交128核任务后,任务管理器中256线程全部占满,CPU 100%占用,频率跑至2.8ghz左右。而我的软件设置与其相同的情况下,我单次提交任务128核后,就正常只有128线程100%占用。提交第二个128核任务后,258线程可以占满,但cpu频率只有2.6 ghz左右。为保证服务器算力全部发挥,后我请教另一个专攻计算的教师B,他指导我说要关超线程。为解决上述困扰,同时也做一下我服务器的稳定性测试,我花了两天时间进行了测试。对比方式分别为,开超线程只计算1个任务;开超线程同时计算2个任务;关超线程计算1个任务,和关超线程同时计算两个任务。测试结果如下:
从我的测试结果上看,在关闭超线程计算一个任务的情况下,三个任务的计算时间都是最短的;开启超线程计算1个任务的情况下,计算时间都会增加;同时计算2个任务的情况下,计算时间会急剧增加,甚至比关闭超线程只计1个任务时间的双倍还有多。所以开启双线程同时计算2个任务无疑是一个非常低效率的选择。而关闭超线程同时计算两个任务的情况,第一个任务的时间似乎比只计算1个任务时间增加一点,而第二个任务会延长一点。关闭超线程同时计算两个任务,似乎有可能能提高计算效率。但这个后续我不准备再测试了,太费时间。
所以,以上即是我的结论,只对我的测试环境及软件负责。分享出来也希望能给后来如我一般的小白一些参考,也不费我两天的测试。结论即:VASP计算时关闭超线程,单次运行一个任务是最有效率的计算方式。
上述还存在问题,我至今还不知道原因,如果有大佬知道,还请不吝赐教:
(1) 我同事A的服务器上,单次提交128核任务,为什么cpu即跑满256线程?
(2) 为什么关闭超线程后,系统显示128核心128线程,但我单次提交128核任务后,我提交第二个任务后还可以同时计算,而不是排队。
|
评分 Rate
-
查看全部评分 View all ratings
|