计算化学公社

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

[使用经验] 论计算机采购时内存的重要性

[复制链接 Copy URL]

207

帖子

0

威望

2300

eV
积分
2507

Level 5 (御坂)

随着人们计算任务的增加,计算体系的增大,计算资源的需求越来越大。
但是人们在配置电脑的时候过多的关注主板(服务器所带),CPU的性能,往往忽略了内存的需要。
如果你需要计算下述内容。那么建议买内存的时候尽量加大内存。至少应该保证每个核(线程4G)
比如你32线程(核)那么就购买128G内存。
否则,你会经常遇见内存不足的情况。
计算包括:高斯等量子化学程序的 激发态优化和紫外荧光的计算。 大体系很多时候 td(nstate=n)n值都会取得比较大。
castep/DMOL/QE/vasp的能带计算特别是牵涉到载流子的计算需要用能带曲线求电子有效质量。那么K点的撒点就会很多。这样内存的消耗是非常大的。
gamess的能量分解计算,要求的内存就更加大了。

评分 Rate

参与人数
Participants 1
eV +4 收起 理由
Reason
sobereva + 4

查看全部评分 View all ratings

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

2#
发表于 Post on 2014-11-11 14:03:06 | 只看该作者 Only view this author
机器内存64G,泪流满面地路过~~~~~
当初在讨论配置的时候,有两种方案:
1. 内存从64G升到128G,计算节点的数量少一些。
2. 内存维持64G不变,计算节点的数量多一些。
俺们选了第2种。

207

帖子

0

威望

2300

eV
积分
2507

Level 5 (御坂)

3#
 楼主 Author| 发表于 Post on 2014-11-11 14:36:31 | 只看该作者 Only view this author
truemantwo 发表于 2014-11-11 14:03
机器内存64G,泪流满面地路过~~~~~
当初在讨论配置的时候,有两种方案:
1. 内存从64G升到128G,计算节点 ...

现在是不是算我说的那个几个感觉总是内存不够用?

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

4#
发表于 Post on 2014-11-11 14:48:03 | 只看该作者 Only view this author
本帖最后由 truemantwo 于 2014-11-11 14:55 编辑
jiewei 发表于 2014-11-11 14:36
现在是不是算我说的那个几个感觉总是内存不够用?

组里面有人用Dmol和vasp,平时感觉64G内存基本够用,应付80%的计算任务无压力。但是体系不能“大”,“大”了内存就不够了。
但是呢,如果体系太大,到了内存不够用的程度,那么CPU也够呛了:计算时间可能要以月为单位。
一次,BOSS说到Intel最新的处理器有18个核,眼睛直放光有木有!

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

5#
发表于 Post on 2014-11-11 14:53:19 | 只看该作者 Only view this author
jiewei 发表于 2014-11-11 14:36
现在是不是算我说的那个几个感觉总是内存不够用?

另外,据我们自己测试,Materials Studio 7.0对多核的支持还是不错的。
一台双路计算节点,共16个核:
Forcite,Dmol这些模块,8核心所用时间基本是16核心的两倍(略有出入,差别不大)。
CASTEP没测试过,因为它的效率和VASP比,实在是太低了,而且狂吃内存。

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

6#
发表于 Post on 2014-11-11 15:00:01 | 只看该作者 Only view this author
对于一些大的模型,我的考虑是采用多机并行:各节点的内存少些,多用几台节点,这样计算时间能少些。

如果只是单机并行,即便内存能满足需要,由于CPU能力有限,计算时间可能还是很长。

3622

帖子

3

威望

1万

eV
积分
18442

Level 6 (一方通行)

第一原理惨品小作坊

7#
发表于 Post on 2014-11-11 15:26:22 | 只看该作者 Only view this author
MS下面,DMol3不怎么吃内存,也不是kpoints并行,但CASTEP集群并行效率和k点划分就很有关系了。我们组测试的情况看,单CPU核心数超过16核心性价比不好,主频合适的要花大价钱。经验上集群的单节点感觉64G还是相当够用的。

评分 Rate

参与人数
Participants 1
eV +4 收起 理由
Reason
zhuhongkunky + 4 赞!

查看全部评分 View all ratings

日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

8#
发表于 Post on 2014-11-11 15:44:43 | 只看该作者 Only view this author
卡开发发 发表于 2014-11-11 15:26
MS下面,DMol3不怎么吃内存,也不是kpoints并行,但CASTEP集群并行效率和k点划分就很有关系了。我们组测试 ...

老兄所言不差。

不过呢,Dmol3不吃内存也是相对而言的,比如我们组有个同学,模型搞得太大,128G内存都不够用。:L

还有,Dmol3的多机并行效率不咋样,Forcite也是如此。我估计,MS公司把重点放在了单机并行上。

3622

帖子

3

威望

1万

eV
积分
18442

Level 6 (一方通行)

第一原理惨品小作坊

9#
发表于 Post on 2014-11-11 16:13:58 | 只看该作者 Only view this author
truemantwo 发表于 2014-11-11 15:44
老兄所言不差。

不过呢,Dmol3不吃内存也是相对而言的,比如我们组有个同学,模型搞得太大,128G内存 ...

我们组是小集群用的千兆网,一般看下来并行效率比较好也就3~4台左右,小体系可能2台比较好,DMol3和Forcite都是这样的。模型很大的话这个时候并行效率反倒是可能比较好。我不知道DMol3和Forcite这些计算量是按照什么划分的。计算量再大的情况可能我们这边就不是程序的限制了,千兆网能够承受的也有限。

这个不是MS公司的问题,毕竟采用的也是intel的编译器和mpi,同样的情况CASTEP好得多,只要节点数和约化k点数相同速度就是快,当然如果掌握技巧的话可以考虑手工调整为G-vector的并行,不过这方面我经验就很少了,调的好效率就很不错。

评分 Rate

参与人数
Participants 1
eV +4 收起 理由
Reason
zhuhongkunky + 4 赞!

查看全部评分 View all ratings

日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

69

帖子

2

威望

1314

eV
积分
1423

Level 4 (黑子)

10#
发表于 Post on 2014-11-11 17:17:41 | 只看该作者 Only view this author
卡开发发 发表于 2014-11-11 16:13
我们组是小集群用的千兆网,一般看下来并行效率比较好也就3~4台左右,小体系可能2台比较好,DMol3和Forci ...

嗯,有道理。

可能是我测试的时候,采用的体系太小了,导致多机并行的效率不高。

3622

帖子

3

威望

1万

eV
积分
18442

Level 6 (一方通行)

第一原理惨品小作坊

11#
发表于 Post on 2014-11-11 17:22:04 | 只看该作者 Only view this author
truemantwo 发表于 2014-11-11 17:17
嗯,有道理。

可能是我测试的时候,采用的体系太小了,导致多机并行的效率不高。

Forcite我测试的情况一直放了1000个H2O,这个时候4节点以内并行才达到线性。
我估计和DMol3类似的SIESTA并行效率也不好,现在在打算上手这个程序呢。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

61

帖子

0

威望

2361

eV
积分
2422

Level 5 (御坂)

12#
发表于 Post on 2014-11-11 17:31:10 | 只看该作者 Only view this author
后悔,配服务器时内层配小了。

207

帖子

0

威望

2300

eV
积分
2507

Level 5 (御坂)

13#
 楼主 Author| 发表于 Post on 2014-11-11 18:01:47 | 只看该作者 Only view this author
truemantwo 发表于 2014-11-11 14:48
组里面有人用Dmol和vasp,平时感觉64G内存基本够用,应付80%的计算任务无压力。但是体系不能“大”,“大 ...

这不一定哦,比如说有机分子C2/C空间群里面有8个分子, dmol算能带的时候kpoint6*6*6,撒点多,k点取值多,也是超级耗内存的。

207

帖子

0

威望

2300

eV
积分
2507

Level 5 (御坂)

14#
 楼主 Author| 发表于 Post on 2014-11-11 18:03:01 | 只看该作者 Only view this author
卡开发发 发表于 2014-11-11 15:26
MS下面,DMol3不怎么吃内存,也不是kpoints并行,但CASTEP集群并行效率和k点划分就很有关系了。我们组测试 ...

dmol平时是不耗内存,如我回复楼上的,如果k点多,撒点也多。其实很耗内存的。
castep确实超级耗内存

3622

帖子

3

威望

1万

eV
积分
18442

Level 6 (一方通行)

第一原理惨品小作坊

15#
发表于 Post on 2014-11-11 19:15:47 | 只看该作者 Only view this author
jiewei 发表于 2014-11-11 18:03
dmol平时是不耗内存,如我回复楼上的,如果k点多,撒点也多。其实很耗内存的。
castep确实超级耗内存

k点在DMol3中应该不是最消耗内存的,理论上和个人经验上看,截断半径的影响相对更大。印象中要是没记错的话,截断半径是5次方标度的。另外数值积分以及弥散基组精度影响也很大,xfine的积分精度也算比较拖累计算速度的。

CASTEP相对来说做FFT的撒点依赖格子大小,这个是计算量大的原因之一,晶格比较小空体积比较小的情况接近的精度CASTEP搞不好比DMol3快得多。

所以具体测试怎么做法还是要看参考的体系是什么,否则意义就不大了。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

本版积分规则 Credits rule

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

GMT+8, 2024-11-27 06:20 , Processed in 0.212803 second(s), 23 queries , Gzip On.

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