计算化学公社

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

[并行运算] 一种高性能小型集群方案

[复制链接 Copy URL]

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

本帖最后由 abin 于 2021-4-13 10:46 编辑

更新
如果预算允许,
推荐升级为IB网络方案。
两台机器,IB网络可以直通,而不用采用交换机。
咸鱼找旧货,成本价格大概是3000左右;
买新品,56Gb,大约4000~6000之间。
这样,双机通讯互联,能甩以太网好几条街。



推荐一种我自己根据实际工作经验, 琢磨的小型集群方案.

实际上, 多年以前我用过这种方案.
近来看到万兆网卡价格便宜, 固态硬盘也便宜,
这样无需交换机的两节点并行计算就可以搞一搞了.






欢迎跟帖讨论.
一些相关的视频资料, 可以前往 B 站, 搜索用户 abbottcn 找到.
抱歉我不晓得如何在 B 站弄一个专属的频道.
视频资料放在 B 站是考虑大家访问便利, 无其他原因.
此种配置方案, 也有一定的适用范围,
比如格林函数之类的计算, 上来就需要上百GB内存的, 如果超出主板内存上限, 当然无法工作。

CPU核心数目,只能选择看Intel最多有多少核心, 主板能支持到什么程度。

献丑。献丑。  


免责申明
从未接触或者学习过任何计算专业课程、知识,
有关于通信带宽的估算可能存在部分偏差。

以上配置方案, 来自于自己的实践经验。
如果能看到B站上的演示视频, 其中提到的ee集群,就是采用双机网线直连。
没想到现在万兆卡都这么便宜了, 考虑更新一下万兆网卡,做个升级。
更新
遇到很多朋, 上来就说, 你给我做个集群, 我计算用.
问用什么软件, 能否提供软件的具体名称, 如果是自己私有的专业软件, 并行效率如何之类的问题,
对方就一句, 我就做计算, 你弄个集群就行, 咋这么多问题呢?

其实, Linux 集群是高度可定制的,
可以根据用户计算软件的特点, 比如 CPU 密集型, 那你需要频率高的 CPU, 并且并行效率可以的话, 核心多更好.
也有某些软件, 并行效率并不是十分理想, 那么就要考虑是否单节点或者单 CPU 运行, 那么这个时候, 考虑本地读写缓存就很好, 这个时候, 用合适的固态硬盘效果很好.

目前 CPU, 内存都很快了,
影响计算速度的主要问题在于读写.

要针对不同的应用场景, 合理配置读写缓存, 可以非常明显的加速读写.
举个简单例子,
比如高斯, 一般能找到的版本都是单机并行版本,
而且这玩意多节点并行效率是不十分理想.
所以, 如果主要用高斯, 那么单机配置机械盘(DFT 类计算), CCDT 之类的, 估计需要配 NVME/SSD 之类的提高读写了.

Linux 集群是高度可定制的,
不是固定不变的唯一模式.

以上言论, 如有纰漏, 请多多包涵, 仅仅代表鄙人的愚见.

Sat Apr 18 13:23:23 CST 2020 更新
修正一下方案。
1 加装万兆网卡,推荐光纤口(因为便宜),两台机器,采用DAC线缆直连,获得10G带宽。
2 入门级读写配置,4 x 1TB --> RAID0, 读写实测高达660MB/s,开启72个进程并行读写小文件时,顺序读写大文件依旧高达620MB/s;
   进阶版,NVME SSD x 2 ---> RAID0, 提升并发读写。注意给NVME SSD散热哦,这东西热了后,掉速很厉害。
3 应用场景。对于高斯DFT计算,读写要求不高的,读写随便配置;做动力学之类,要频发读写,或者同事计算好多轨迹,有较高的并发读写,推荐至少4x1TB HDD RAID0.
4 不建议固态硬盘单盘用于并发读写,读写线程上去了,性能堪忧。

以上结论基于如下的测试:
双机,千兆互联,RAID0读写缓存,72线程读写(其中一般相当于本地读写,另外36个读写是通过千兆进行),
两台机器满载情况下,I/O wait偏高,分析发现,瓶颈在网络层面。
升级为万兆光纤互联,机器满载时候,I/O wait不足0.1%,机器运转正常。
因为我的计算,涉及72个读写进程,不停写数据,通过nmon分析发现,每秒平均有570多次写操作。

升级费用,咸鱼万兆光纤网卡,大概200元,DAC互联线缆,京东约80元,合计升级成本不到500元。
关机,安装网卡,开机,约10分钟。 ifconfig -a 找到网卡,配置网卡IP,约3分钟。
加上开机等待时间,合计耗时不足20分钟。
等有功夫,再整理一个详细的机器升级前后的读写压力分析文档,分析数据基于sar汇报。

推理一下,如果算VASP多核心并行(我不晓得112核心并行效率如何),
可以买两台8173M,采用万兆互联,或者升级到40G光纤口互联,配合4个NVME 2TB磁盘RAID0读写,速度应该飞快的。
同时,理论推测,这套方案,也适用于WRF-CHEM(一种天气预报计算模拟程序,采用NetCDF读写,目测读写很频繁)。

40G光纤网卡,新的2000左右,不过你可以找万能的淘宝咸鱼啊。

我升级用的卡,就是咸鱼找的。便宜。

评分 Rate

参与人数
Participants 4
eV +12 收起 理由
Reason
ylbt1989 + 2 谢谢
ghifi37 + 2 好物!
SAI + 3 谢谢
qinzhong605 + 5 谢谢

查看全部评分 View all ratings

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

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

19

帖子

0

威望

303

eV
积分
322

Level 3 能力者

2#
发表于 Post on 2020-1-7 21:55:52 | 只看该作者 Only view this author
之前看了infiniband的技术文档后,就知道这个方法了。这种短期折中的方法其实挺好的,虽然很冷门,但是感谢你给大家分享。

1236

帖子

1

威望

3495

eV
积分
4751

Level 6 (一方通行)

3#
发表于 Post on 2020-1-7 22:18:11 | 只看该作者 Only view this author
本帖最后由 biogon 于 2020-1-7 22:21 编辑

但是高斯linda版本很贵,ORCA倒是能这么并行,但是需要这么多核心算的体系内存必然得有TB级,需要的SSD容量也得有10TB以上,其它的量化程序能好点,但是都有不少限制
我用orca处理大体系上后HF用36核768GB内存8TBSSD机器,都经常内存硬盘不够用,单次计算耗时一般也就24小时以内,后面都准备加到1536GB内存24TB SSD了



2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

4#
 楼主 Author| 发表于 Post on 2020-1-7 22:51:01 | 只看该作者 Only view this author
biogon 发表于 2020-1-7 22:18
但是高斯linda版本很贵,ORCA倒是能这么并行,但是需要这么多核心算的体系内存必然得有TB级,需要的SSD容量 ...

具体没测过。
不过ORCA使用那么多的CPU核心, 并行效率如何?
也许小点CPU核心好些呢。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

1236

帖子

1

威望

3495

eV
积分
4751

Level 6 (一方通行)

5#
发表于 Post on 2020-1-8 09:00:50 | 只看该作者 Only view this author
abin 发表于 2020-1-7 22:51
具体没测过。
不过ORCA使用那么多的CPU核心, 并行效率如何?
也许小点CPU核心好些呢。

效率还行,没有具体测过,36核不算多,2696v3到现在6254单节点都是36核,核心更多的8173M 8280 9242都试过,还是高频的效率更高

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

6#
 楼主 Author| 发表于 Post on 2020-1-8 23:27:49 | 只看该作者 Only view this author
biogon 发表于 2020-1-8 09:00
效率还行,没有具体测过,36核不算多,2696v3到现在6254单节点都是36核,核心更多的8173M 8280 9242都试 ...

我有遇到过一个奇怪的算例.

测试服务器是浪潮的双路 E5 2697 v2服务器. 单节点两颗处理器 24 核心(关闭超线程).
网络是普通千兆.
测试软件是 VASP 和 ADF.

单节点独占两个处理器, 24 核心计算, 速度没有, 每个机器使用一个处理器, 采用两个节点的方式快.
具体原因不明.

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

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

7#
 楼主 Author| 发表于 Post on 2020-3-3 11:28:31 | 只看该作者 Only view this author
更新:
时常在微信上被问到双节点集群的部署策略以及实现原理,有点懒,不想打字。
特别录制了一个讲解视频,希望自己DIY的,请看视频并结合google自行搭建。

由于B站审核太慢,视频链接请先通过U2B访问,链接如下:
https://www.youtube.com/watch?v=iDMu7Rx7D7w

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

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

8#
 楼主 Author| 发表于 Post on 2020-3-3 11:31:53 | 只看该作者 Only view this author
本帖最后由 abin 于 2020-3-3 18:01 编辑

更新,
录制了一个实现原理的讲解视频,
有兴趣自己搭建集群的,对实现原理不理解,搞不清楚部署方案的,
建议先看看这个视频,约30分钟。
请移步查看以下链接:
https://www.youtube.com/watch?v=iDMu7Rx7D7w

B站审核太慢,估计过一段时间,B站搜索abbottcn也可以找到这个视频。
B站终于审核完毕了。 视频连接如下:
https://www.bilibili.com/video/av93244589

不晓得回复信息怎么搞出两条来。
烦请管理员删除另一条不重要的回帖吧。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

9#
 楼主 Author| 发表于 Post on 2020-4-18 14:33:26 | 只看该作者 Only view this author
考虑到大家不喜欢看很长的东西。
我把更新内容最为回复,贴在下面。

Sat Apr 18 13:23:23 CST 2020 更新
修正一下方案。
1 加装万兆网卡,推荐光纤口(因为便宜),两台机器,采用DAC线缆直连,获得10G带宽。
2 入门级读写配置,4 x 1TB --> RAID0, 读写实测高达660MB/s,开启72个进程并行读写小文件时,顺序读写大文件依旧高达620MB/s;
   进阶版,NVME SSD x 2 ---> RAID0, 提升并发读写。注意给NVME SSD散热哦,这东西热了后,掉速很厉害。
3 应用场景。对于高斯DFT计算,读写要求不高的,读写随便配置;做动力学之类,要频发读写,或者同事计算好多轨迹,有较高的并发读写,推荐至少4x1TB HDD RAID0.
4 不建议固态硬盘单盘用于并发读写,读写线程上去了,性能堪忧。

以上结论基于如下的测试:
双机,千兆互联,RAID0读写缓存,72线程读写(其中一般相当于本地读写,另外36个读写是通过千兆进行),
两台机器满载情况下,I/O wait偏高,分析发现,瓶颈在网络层面。
升级为万兆光纤互联,机器满载时候,I/O wait不足0.1%,机器运转正常。
因为我的计算,涉及72个读写进程,不停写数据,通过nmon分析发现,每秒平均有570多次写操作。

升级费用,咸鱼万兆光纤网卡,大概200元,DAC互联线缆,京东约80元,合计升级成本不到500元。
关机,安装网卡,开机,约10分钟。 ifconfig -a 找到网卡,配置网卡IP,约3分钟。
加上开机等待时间,合计耗时不足20分钟。
等有功夫,再整理一个详细的机器升级前后的读写压力分析文档,分析数据基于sar汇报。

推理一下,如果算VASP多核心并行(我不晓得112核心并行效率如何),
可以买两台8173M,采用万兆互联,或者升级到40G光纤口互联,配合4个NVME 2TB磁盘RAID0读写,速度应该飞快的。
同时,理论推测,这套方案,也适用于WRF-CHEM(一种天气预报计算模拟程序,采用NetCDF读写,目测读写很频繁)。

40G光纤网卡,新的2000左右,不过你可以找万能的淘宝咸鱼啊。

我升级用的卡,就是咸鱼找的。便宜。

关于光纤网卡的性能介绍,交换机介绍等,
请移步:
https://zhuanlan.zhihu.com/p/76400103
https://zhuanlan.zhihu.com/p/74082377
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

10#
 楼主 Author| 发表于 Post on 2020-4-18 15:19:16 | 只看该作者 Only view this author
以上技术方案,可以看成一种高性价的高性能计算集群实现方案。

如果自己能实现,可以买了硬件自己搞。

如果搞不定呢,技术层面,我没问题。
这这边认识的售卖硬件的商家,可以按照我的技术方案定制机器。
如有需求,可以联系我。
签名中有联系方式哦。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

11#
 楼主 Author| 发表于 Post on 2020-4-18 17:56:11 | 只看该作者 Only view this author
特别声明,以上集群方案,
并非我原创。
我仅仅是在别人的基础上做了修改。

最初的设计理念来自于这里, https://www.calvin.edu/~adams/research/microwulf/
我在12年前用了30天时间,用两台P4 3.0做了一个双机,可以跑高斯,挺快。
我当时动手的时候,都不晓得如何check you kernel with uname -a。

我也依据此方案,做过5节点的PC集群,无盘启动。
在实践过程中,如果意外停电,重启会遇到问题。
考虑到维护成本,手里又有多个旧硬盘,所以修改为每个机器都有系统盘。

现在用的机器,为了提升读写性能,针对性的搭配了万兆网络和RAID0磁盘。

这东西是高度可定制的,要针对实际需求,做相应调整。

另,我认为,现在CPU, 内存,都很快了。做计算,如果计算中不能做到全内存读写,那么最大的瓶颈在磁盘读写。
合理改善磁盘读写,才是提速计算的最有效手段。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

12#
 楼主 Author| 发表于 Post on 2020-4-20 15:09:24 | 只看该作者 Only view this author

升级网络前后机器满负荷运行时CPU负载对比。
想拿到合理的监控数据,需要满负荷运行几天,再统计结果,不能观测一个小时就下结论,那样太不严谨了。

A区域,采用千兆网络,机器满载情形下CPU负载图,明显I/O瓶颈十分明显,占据不可忽略的比重,拖慢计算进程。

B区域,升级万兆网络,机器满载情形下CPU负载图,几乎看不到I/O占比了,可以说,是解决掉了I/O瓶颈问题。

C区域,也是万兆网络下,机器通过slurm调度满负荷运行下,又额外绕开PBS,额外跑一个其他双CPU核心的计算,该计算需要大量的随机数,因而出现部分可以忽略的system load。

没有负载的时候,浅色背景,就是机器空闲,没任务跑啊。
空白的地方,就是机器停机的时候啊。


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

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

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

13#
 楼主 Author| 发表于 Post on 2020-11-16 15:00:39 | 只看该作者 Only view this author
补充更新。
硬件
E5-2686v4,16GB x 12, HDD RAID0 Disk, 10Gbps网络,也就是普通的万兆光纤网络。
采用slurm调度。
读写均通过万兆网络共享到RAID0阵列上。

软件,VASP,intel编译器。

算例链接:
链接: https://pan.baidu.com/s/1qRVzhsKZ6s7wS_Olyg-xGQ 提取码: se94

说明,我的研究不涉及VASP,所以我不晓得这个算例是计算啥的。
只是找跑VASP计算的同事,要了一个能跑几分钟的算例而已。

测试结果。
8173M双路服务器,使用28核心,耗时 780s。

E5-2686v4双路服务器,18核心计算,717s,720s,跑了两次,采用节点独占,仅用18个核心。
E5-2686v4双路服务器,36核心计算,543s,采用节点独占。单节点并行
E5-2686v4双路服务器,72核心计算,最快330s,最慢454s,双节点并行
网络不仅仅负载这几台机器哦。所以耗时有差异。
其中,计算最快的时候,万兆网络仅仅负载这干活的两台机器,
观测到,存在间歇性网络流量,峰值高达800Mbps。

未测试3节点或者4节点并行,
也许是测试体系太小,NBANDS数量不大,不适合采用太多的核心来计算。
(这句是猜测,我不懂NBANDS数目到底啥意思)。


结论:
对于小型的计算需求,并且需要属于自己的计算设备,
可以考虑两台或者高达8台的集群规模,
VASP采用双节点并行计算,效率应该还可以。
合理调控参数,VASP在多机器并行的时候,网络流量不是很大的。

以上测试,
部分结论,源自于以下的视频内容:
https://www.bilibili.com/video/BV1zk4y117yW

https://www.bilibili.com/video/BV1h64y1F74A

https://www.bilibili.com/video/BV12J411V7op

https://www.bilibili.com/video/BV1UZ4y1H793

https://www.bilibili.com/video/BV1eg4y1v7HM




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

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

31

帖子

0

威望

72

eV
积分
103

Level 2 能力者

14#
发表于 Post on 2020-11-17 09:33:27 | 只看该作者 Only view this author
感谢分享。

11

帖子

0

威望

564

eV
积分
575

Level 4 (黑子)

15#
发表于 Post on 2024-9-5 21:16:16 | 只看该作者 Only view this author
biogon 发表于 2020-1-8 09:00
效率还行,没有具体测过,36核不算多,2696v3到现在6254单节点都是36核,核心更多的8173M 8280 9242都试 ...

因为学生所以预算有限,想问一下,双路2696v3和后面8173m这些相比,性能差距会有多大呢?

本版积分规则 Credits rule

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

GMT+8, 2024-11-23 12:08 , Processed in 0.200799 second(s), 25 queries , Gzip On.

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