计算化学公社

标题: 南叔装机小记——第四篇(上集):首次全某东装集群 [打印本页]

作者
Author:
tomwong4253    时间: 2023-8-2 22:38
标题: 南叔装机小记——第四篇(上集):首次全某东装集群
本帖最后由 tomwong4253 于 2023-8-2 22:46 编辑

我阿南又来装只因啦!

距离上次作业贴又双叒叕过去两年多了,就在前不久,居然阴差阳错摸到了一点小钱。尽管相比E佬(本站Entropy.S.I)或者a佬(本站abin)这些大佬们手头的预算和用的机器,我这个总预算也就只值一个集群一两个配件的价钱。霸特,就算钱再少,领导的要求和想法却一点都不会少。哎,钱这东西,想多点没有,想少点,那干脆没你用。反正要都要来了,蚊子腿也是肉,硬着头皮上吧。


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1. 硬件选择和购买
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

先确认预算,仅有45000元,这个预算下做MD或者DL什么的带高端GPU的设备是想都别想了,何况还想挤出两块3060 DUG 12G给之前展示过的的GPU集群加一点算力。剩下能够购置其它设备的钱也就不到40000了。只能考虑做Gaussian,ORCA或者xtb这种纯CPU的运算,硬件主要还是选择消费级硬件即7950X就好。

这次的采购我这次联系的经销商全程走某东采购这些硬件,并帮我打理报销和发票这些事情,等各个配件来之后一起送来,我自己组装和测试。

最终定的配置如下


计算node(同配置共四台):

==================================
【CPU主板】AMD R9 7950X盒装+微星MAG B650M MORTAR WIFI套装
【散热】利民PA120 BLACK AGHP3.0。
【内存】光威64GB(32GB*2) DDR5 6000MHz(海力士adie)。
【nvme固态】致态 长江存储 512GB nvme PC005
【sata固态】致态 长江存储 256GB SATA SC0001
【机箱】先马平头哥matx mini小机箱
【电源】振华HG 750W 全模组
==================================

其它部件:
==================================
【交换机】TPLINK 8口企业级 2.5G TL-SH1008

【UPS】 台达N-3K 3000VA/2700W 在线式不间断电源
【杂项】sata线,超六类网线,插座等。
===================================

额外购买(不在这套集群内使用):
==================================
【GPU】耕升3060 DUG 12G 两块

===================================

以上合计:44800软妹币。

控制+存储node(大多是已有的老部件,约等于免费
==================================
【CPU】i5 8400
【散热】九州风神玄冰400。
【主板】ASUS B360MK。

【内存】海盗船8GB*2 DDR4 3000MHz。
【sata固态1】三星850EVO 850 120GB
【sata固态2】致态 长江存储 256GB SATA SC0001
【机械硬盘】希捷EXOS 企业级4T
【网卡】TPLINK 2.5G PCIE 网卡
【电源】安钛克BP600P 600W
===================================

关于选用以上配置的一点说明:

1. 消费级电子产品,某东的售后还是可以的,这次仍是主要的自主采购流程,我就直接请经销商走的某东,虽然经销商也不是专业卖计算机的,但他们对某东也不陌生,到货拿回来充分测试,如果有故障,直接走售后挺方便。

2. E佬之前有很多帖子包括回复都提到了,随着CPU制程的提升特别是IPC的提升,原本V3 V4系列的性能基本上被新的CPU甩到了身后,因此V3 V4系列的CPU不建议再买了,何况主板也难找到新的,到时候麻烦可能会比较多,就算钱真的少得不得了,哪怕买个7000系配个丐板,缩一缩存储什么的,性能也比V3 V4要好不少。

3. 有关网络的问题,一个是这套设备确实不多,将来撑死也就扩到6-7个node;另一个是有关什么IB网络配置之类的高端操作,肯定不是我这个技术还停留在上世纪90年代的二把刀能搞定的。至于10G,主要是看万兆的设备特别交换机在某东上不太便宜,也怕自己了解不够,因此网络我还是选的2.5G。

4. 这套消费级配置有个最大的隐患,就是截至发帖时(2023年8月2日),锐龙7000系的CPU和DDR5的高频内存之间的兼容性实在是蛋疼。随手一搜就可见大把的用户反映7000平台下DDR5内存超频各种崩,且不说手超了,就算只是开EXPO或A-XMP都经常不能稳定运行,甚至我这边出现了开EXPO能在BIOS设置界面中卡死的问题,极其抽象(我一度以为是内存坏了,替换了一下发现问题依旧)。不过7月底微星发布了测试版BIOS,据说提高了EXPO超频的稳定性。各位如果遇到类似的抽象问题时请勿惊慌,请先更新BIOS。


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2. 硬件安装
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

控制+存储node是现成硬件改的,搬个机箱换好硬盘就直接能开了,没啥可装的,主要是计算node的组装。

先来个全家福:
(, 下载次数 Times of downloads: 46)


又有一吨的盒子要拆了,因为四台是一样的,就以一台为例了:
(, 下载次数 Times of downloads: 48)

CPU特写:
(, 下载次数 Times of downloads: 49)    

微星的B650m板子,用料一直都还可以,不过注意从这代开始CPU是双8pin的(电源不要买的太缩了,正所谓缩啥别缩电源):
(, 下载次数 Times of downloads: 47)

一阵拆拆拆and装装装
(, 下载次数 Times of downloads: 46)     (, 下载次数 Times of downloads: 49)

利民的散热个头真是大,我这小手握着都不容易,不过鳍片做工比“滴血认亲400”要平滑多了,装好以后有种“主板装散热上”的感觉:
(, 下载次数 Times of downloads: 49)     (, 下载次数 Times of downloads: 46)

小细节,NVME盘是往左边插的:
(, 下载次数 Times of downloads: 48)

装好电源。理线真的不是我的强项,直接盘丝洞了(捂脸)。CPU电源线走背线的话真的感觉有点短:
(, 下载次数 Times of downloads: 54)     (, 下载次数 Times of downloads: 44)     (, 下载次数 Times of downloads: 46)

装好机箱盖子,安装完成啦:
(, 下载次数 Times of downloads: 46)

最终所有计算机装好并且放到简易架子(购自某宝)上的样子:
(, 下载次数 Times of downloads: 47)


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3. 硬件设置
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

注意:7000系引导灰常慢,我一开始一度以为机器没点亮。。。


作为消费级硬件,CPU和内存是都有超频的能力。不过我考虑到,一是目前这个配置应付我的体系速度上勉强还能接受,二是上面说了7000系目前确实暴露出和DDR5内存特别高频内存以及B650m的BIOS三者八字不合不少问题,三是超频这块我的经验也不是很丰富,于是我CPU就默频运行,让它自己睿频去了。

说回内存的问题,如上所述,按照EXPO设置直接超频6000MHz理论上是稳的,但我的四台机子装好之后有两台都出现了EXPO超频直接卡死,甚至有一台A-XMP超频都不能稳定的情况,替换内存并不能解决问题。后来发现可能是兼容性的问题,微星BIOS专门有个新版本(2023年7月底)说是提高EXPO超频稳定性,应该能解决这个问题,速速更新BIOS。

我内存买的是海力士adie颗粒的,E佬提过微星板子对海力士adie有优化,其实指的是更新BIOS之后有一个选项High Efficiency Mode,开启之后有Tightest,Tighter,Balance和Relax四个选项,字面意思是在EXPO的基础上收紧时序以提升内存性能。考虑到目前坑爹的兼容性,我在EXPO设6000的情况下该项直接设置的Tighter,就不搞那么极限了。UCLK我则是直接搞成同步了,免得一不注意分频了。

先简单装了个Win10烤了下FPU(图忘记保存了)。女马口牙,CPU直接给我干到96度。我一度以为散热忘了撕膜,又拆开检查了一下。后来问了问才知道,锐龙7000系特别是7950X为了性能,默认电压给的巨TM高,好在新版的BIOS的PBO选项里有温度限制模式(Thermal Limit),根据一众测试性能损失是不太大的,据说原理就是降了点电压,我给设到85度了。计算端的超线程我是习惯关闭的,因此SMT我也给关了(注意社长有过专门的测试,超线程开着是没有坏处的,此处仅是个人配置后续集群管理软件习惯)。


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4. 系统安装
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

与之前一样,我选用的仍然是轻量级的lubuntu,其中一个原因是我们单位强制使用wifi,很多无线网卡是ubuntu免驱的,rocky等系统还要额外搞驱动,懒虫上身也就没搞,当然计算node用的有线网络与学校网络隔离,但为了一致我也就全装lubuntu了。

时隔多年,lubuntu20.04也从新系统变老系统了,考虑到我GPU集群上装的还是20.04,我就做了启动盘给新设备装20.04,结果启!动!又!黑!屏!,应该是20.04内置的驱动无法正确识别7000系的核显导致的问题,只得换装22.04

磁盘依然是自己分区,由于这次是正儿八经的集群,需要对控制端和计算端进行不同的分区,参考a佬的集群配置说明(https://gitee.com/hpc4you/hpc),我是这么分区的。

计算端:
256GB的SATA固态分5GB的/boot,分2GB的linuxswap,分300MB的/boot/efi(分区类型必须fat32,且需要打上boot的flag,否则没法UEFI启动),剩下的空间全分给/
512GB的NVME固态预计作为苦力盘,直接格式化成ntfs备用。

控制+存储端:
256GB的SATA固态分区方法同计算端。
120GB的SATA固态全部分给/opt
4T的机械硬盘全部分给/home

文件系统选择方面,除了/boot/efi必须fat32,苦力盘我习惯选ntfs之外,其它盘我一律用的ext4。a佬教程里用xfs可以提升一定的性能。

这里重复一下swap的事情,很多网上帖子说一定要分到物理内存的两倍。那是严重的老黄历了,毕竟现在以服务器设备为基础的计算设备动不动都64G往上的内存,个别胖节点甚至上T的内存,难道还得占个固态硬盘专门做虚拟内存?实际上根据Redhat的手册,物理内存够大的情况下,swap弄个2G左右够了。装好linux之后记得把swappiness参数改成10,这个数值默认有60,运行高内存任务时计算机可能会傻X一般地先用虚拟内存而不是物理内存。

a佬的教程中说选择时区的时候最好选择默认纽约时区,装好系统再用命令改回上海时区,我用lubuntu在安装时直接选择上海时区也没啥大的问题。

装好之后,先本地运行一下Gaussian16,使用397测试一下,结果如下:
(, 下载次数 Times of downloads: 45)


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5. 总结与展望
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

本次设备采购和设置以及安装内容较多,因此分成上下两篇来写,本篇目前只到装系统这一步。后续的网络设置、nfs设置、nis设置、ssh设置和slurm设置我将在下半部分写。



作者
Author:
ggdh    时间: 2023-8-2 23:48
本帖最后由 ggdh 于 2023-8-3 22:24 编辑

4.5万能装出5个节点的集群是我万万没想到的。。
我掏出我的7742 和7T83单机跟你的集群pk:
7742:同时跑4个32核的并行TEST0397,每个任务耗时140s
7T83:同时跑4个32核的并行TEST0397,每个任务耗时126s

楼主的小集群:同时跑4个16核并行的TEST3097, 每个任务耗时116s

作者
Author:
Satoru    时间: 2023-8-3 00:53
本帖最后由 Satoru 于 2023-8-3 00:58 编辑

nvme盘做成ntfs有可能会损失性能,也许可以测试一下其他文件系统。
我之前一块512G的pm981a从ntfs改成xfs以后,环己烷分子做DLPNO-CCSD(T)/cc-pVTZ速度提升大概30%。(2698v4*2 256G)
一部分原因可能是我当时linux内核老,用的ntfs-3g挂载ntfs,IO密集的时候ntfs-3g进程能占满一个核。现在新内核应该有内核级的支持了,不知道会不会好些。总之或许可以测试一下这个项目。

作者
Author:
tomwong4253    时间: 2023-8-3 07:16
本帖最后由 tomwong4253 于 2023-8-3 16:38 编辑
ggdh 发表于 2023-8-2 23:48
4.5万能装出5个节点的集群是我万万没想到的。。
我掏出我的7742 和7T83单机跟你的集群pk:
7742:同时跑4 ...

从极限性能或极致性价比角度,装双路二代EPYC或者单路EPYC三代确实优于多台7950X,但主要有几个考虑:

1)首先没有45000,还要扣掉两块全新非矿3060DUG显卡钱和UPS电源的钱,这样怎么算都只剩38000不到了。某东查了下EPYC一套,姑且按双路7742计算吧,三大件20000+6600+2880=29480,还有8520的预算余量。机箱电源和必要的存储按照1500算,还有7020。这个钱买什么就有点尴尬。 除非买单路7T83,按照某东价刚好差不多花完。

2)本来这篇内容是有“花絮”部分的,考虑到可能太过调侃tizhi,就删了。既然大佬锐评了,就简单说说吧,作为一个小地方的非专业院校的小学院,领导之所以还能给点,还得是学院8月底急着申请什么教学基地,赶鸭子上架要搞点“特色”。要不我现在连这几个钱都没有。那么如果只买一台双路7742或者单路7T83,一个服务器孤零零往那一杵。面对一群不知道什么背景(极大概率不是计算)的专家,该怎么吹?难不成“同时跑4个32核的并行TEST0397,每个任务仅需140s”?因此最开始买东西的时候,这个设备就得具有哪怕一内内的宣传性质,但是45000硬上限,搞AI那种花哨的是别想。要么搞一堆V3 V4,搞个唬人的高端机架,装点吹震天呼呼呼的吹似乎也行,但是算了一下那样实验室的电是扛不住的,也不可能请专家专门跑到机房去乘凉,因此买个4~5台7950X是目前的综合考虑最优解。

3)还是现实的问题,作为技术停留在上世纪的人尚未摸过EPYC,就一台服务器万一手滑搞cei了就不好玩了。请经销商装?你要相信我们这种二三线小城的经销商, 对于这种麻烦生意宁可不做,或者20000的东西买出30000的价来,反正爱买不买(被地头蛇折腾几回,斯德哥尔摩综合征都快出来了)。。。在这边买个组装的服务器难于上青天的B事,已经发生不止一次了。不想再跟他们扯皮的我,这次找的经销商倒是有经销电子产品的资质,但基本上也就是个帮开发票的和帮收货的。品牌的服务器经销商倒是愿意做,但诸位看看那溢价。。。

4)电子产品再可靠也存在损坏几率,本篇中刚买的微星B650m板子就直接cei了一块(买了运行不到两周,板载网卡崩了),幸好某东退换货还算方便,现在我集群剩三台起码还能继续用。如果只有一台服务器,万一哪个地方cei了,我直接放假了。

5)机器最终也不是自己的,不错的单核性能保证了万一哪冒出来个家伙找领导借计算机,这几台7950X还能用,将来有一天有7742这种服务器U了,这几台即使不再升级而直接淘汰,也能搬给管理办公室当办公机,比良心想高到不知道哪里去了。

作者
Author:
tomwong4253    时间: 2023-8-3 07:19
Satoru 发表于 2023-8-3 00:53
nvme盘做成ntfs有可能会损失性能,也许可以测试一下其他文件系统。
我之前一块512G的pm981a从ntfs改成xfs ...

用ntfs-3g这种外接的挂载损失性能估计就是内核级支持的锅,回头我也试试改xfs,主要是权限我之前不太会折腾,毕竟计算节点的苦力盘需要具备777的读写权限。
作者
Author:
abdoman    时间: 2023-8-3 09:05
苦力盘为啥喜欢ntfs?有什么特别原因吗?
作者
Author:
牧生    时间: 2023-8-3 09:17
  1. 很多无线网卡是ubuntu免驱的,rocky等系统还要额外搞驱动
复制代码


以前确实有这个问题,但是现在不一定了。
我自己所用的小米随身wifi,在rocky 9.2下,自动就识别了,当作无线网卡用起来毫无问题。

作者
Author:
exity    时间: 2023-8-3 09:18
恭喜南叔喜提新机。
作者
Author:
tomwong4253    时间: 2023-8-3 09:34
abdoman 发表于 2023-8-3 09:05
苦力盘为啥喜欢ntfs?有什么特别原因吗?

其实之前直接搞的ext4,后来又试过xfs,但是/etc/fstab这个开机挂在的权限不知道该咋写,直接设置umask=0000,重启之后100%死鸡。。。反复几次给我整麻了,直接搞的ntfs。。。。
作者
Author:
exity    时间: 2023-8-3 11:49
关于swap有一点小看法,可能是我的个案
高斯16算FC光谱的时候,swap 2G分分钟吃满死机,最后找了一台老服务器,SWAP 62GB的才顺利算完。
老服务器也成功避免了被淘汰的命运。
作者
Author:
tomwong4253    时间: 2023-8-3 14:21
exity 发表于 2023-8-3 11:49
关于swap有一点小看法,可能是我的个案
高斯16算FC光谱的时候,swap 2G分分钟吃满死机,最后找了一台老服 ...

linux的swappiness默认值有60。可以粗略理解为当物理内存使用超过100%-60%=40%时,就开始积极使用swap空间。那么对于2GB的swap空间的机器肯定死只因。。。如果你的任务经常需要动到swap,不用多想,加内存是最优解,毕竟硬盘虚拟内存那性能差的不是一星半点。
作者
Author:
exity    时间: 2023-8-3 15:26
本帖最后由 exity 于 2023-8-3 15:34 编辑
tomwong4253 发表于 2023-8-3 14:21
linux的swappiness默认值有60。可以粗略理解为当物理内存使用超过100%-60%=40%时,就开始积极使用swap空 ...

我试过2台服务器,一台192GB 一台256GB,然后高斯调用的核心也尽可能少了,但是还是看着SWAP一点一点被吃满,只有那台老服务器成功了,具体也不知道啥情况。
只有计算FC光谱的时候遇到过,其他都正常,swap 2G也没有任何问题。

PS:还有为啥SATA这么小,是有啥说法吗? :D

作者
Author:
tomwong4253    时间: 2023-8-3 16:35
exity 发表于 2023-8-3 15:26
我试过2台服务器,一台192GB 一台256GB,然后高斯调用的核心也尽可能少了,但是还是看着SWAP一点一点被吃 ...

如果其它占内存的任务正常而单单FC光谱崩swap,也有可能就是瓜斯的程序本身问题。
控制存储node大多都是老部件,SATA是老机器上留下来的三桑的固态,MLC颗粒舍不得扔啊。
作者
Author:
ggdh    时间: 2023-8-3 22:11
本帖最后由 ggdh 于 2023-8-3 22:22 编辑
tomwong4253 发表于 2023-8-3 07:16
从极限性能或极致性价比角度,装双路二代EPYC或者单路EPYC三代确实优于多台7950X,但主要有几个考虑:

...

我算了性价比的(任务时间*价格),如果光跑小任务,双路7742 (3W4)  / 7B12 (3W) / 7B13 (3.6w) 的性价比比你略高,双路7J13 (4W1)性价比跟你的基本一样,其他的各种配置性价比应该都不如这几个了(社长推的7R32没货涨价了)。不过你同时跑4个小任务速度还是最快的。所以性价比方面并不差。最大的遗憾是不能集中4台力量算大任务。。。
你这个集群最后可以拆下来当办公电脑的思路确实不错啊, 哈哈
作者
Author:
tomwong4253    时间: 2023-8-3 22:31
ggdh 发表于 2023-8-3 22:11
我算了性价比的(任务时间*价格),如果光跑小任务,双路7742 (3W4)  / 7B12 (3W) / 7B13 (3.6w) 的性价 ...

嗯嗯,不过吧,等它慢到不适合计算使用的时候,可能什么9代锐龙/15代INTEL/DDR7什么的都出来了。拆做办公也就是个说辞吧。。。话说回来,tizhi内混日子嫖设备,主打的就是一个时机,赶上合适的时候,说不定重买一套都可能,赶不上合适的时候,V2+DDR3内存都只能凑合用。。。

我觉得,平时多看看大佬们的测试,多去经销商渠道那边跑跑配置,一有机会更新,就得迅雷不及掩耳盗铃之势赶紧下手让生米煮成熟饭,否则夜长梦多,到时候领导突然给你说,啊,之前给你说过的东西,我们得再考虑考虑。。。寄。。。
作者
Author:
Entropy.S.I    时间: 2023-8-4 00:26
ggdh 发表于 2023-8-2 23:48
4.5万能装出5个节点的集群是我万万没想到的。。
我掏出我的7742 和7T83单机跟你的集群pk:
7742:同时跑4 ...

7950X3D + 2*16GB DDR5 6000MT/s(未优化时序)耗时107s
作者
Author:
chrinide    时间: 2023-8-4 20:02
Entropy.S.I 发表于 2023-8-4 00:26
7950X3D + 2*16GB DDR5 6000MT/s(未优化时序)耗时107s

大L3竟然有接近10%左右的gain?!
作者
Author:
Entropy.S.I    时间: 2023-8-4 21:18
chrinide 发表于 2023-8-4 20:02
大L3竟然有接近10%左右的gain?!

两个CCD分开我也测了,

有3D缓存的179s,无3D缓存的190s

有3D缓存的全核频率4.9-5.0GHz,无3D缓存的全核频率5.3-5.4GHz
作者
Author:
chrinide    时间: 2023-8-4 22:40
Entropy.S.I 发表于 2023-8-4 21:18
两个CCD分开我也测了,

有3D缓存的179s,无3D缓存的190s

这个结果太有意思了,高主频完全没有大L3有用
作者
Author:
yzh    时间: 2023-8-10 11:33
楼主可以的,这个一直是我想装的,3年后,这些东西至少还有6折多的残值,你买的志强还有EPYC的这些三年后贬值厉害,消费级平台性价比高。
作者
Author:
lonemen    时间: 2023-8-15 17:18
南叔太牛了!祝贺算力又增加了
作者
Author:
lonewolf659    时间: 2023-8-31 12:38
哈哈,好久不见你更新啦
作者
Author:
tiandikuoyuan    时间: 2023-9-10 22:08
Entropy.S.I 发表于 2023-8-4 21:18
两个CCD分开我也测了,

有3D缓存的179s,无3D缓存的190s

请问下是建议买7950X还是7950X3D,3D版本要贵1000多,如果考虑长时间运行的话7950X超频也不会超太高,主要用Gaussian, Orca; 主板需要购买X670吗,还是B650也够用?谢谢
作者
Author:
Entropy.S.I    时间: 2023-9-11 02:17
tiandikuoyuan 发表于 2023-9-10 22:08
请问下是建议买7950X还是7950X3D,3D版本要贵1000多,如果考虑长时间运行的话7950X超频也不会超太高, ...

没必要用X3D。用7950X,尽可能把内存带宽弄高就行了。最大的瓶颈是内存带宽。主板一般用B650就行了。不过现在买7950X并不合适。至少应该等到双十一,Intel新牙膏(RPL-R)出来后7950X必定会再降一波价。
作者
Author:
tiandikuoyuan    时间: 2023-9-11 08:46
Entropy.S.I 发表于 2023-9-11 02:17
没必要用X3D。用7950X,尽可能把内存带宽弄高就行了。最大的瓶颈是内存带宽。主板一般用B650就行了。不过 ...

多谢建议,等等肯定便宜,这不是等不了吗




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3