免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 11115 | 回复: 35
打印 上一主题 下一主题

HPCC方案咨询 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-07 22:52 |只看该作者 |倒序浏览
大家好,最近定了一套HPCC系统有些问题想向大家咨询一下
说明:

科学并行计算用,准备安装RHEL5或CENTOS
目前的磁盘的使用规划是所有数据存储在主节点(4*450G 3.5英寸SAS硬盘,RAID5),包括操作系统,并行环境,程序,个人数据(/home)
计算节点只安装操作系统,原则上不存放个人数据,最多只是作为计算生成文件的临时存储(各计算节点的/tmp)。

硬件配置(都是DELL的)
主(管理存储)节点1台
PowerEdge 2950MLK
CPU:两颗Intel四核 Xeon 5405;
内存:2G×4= 8G ECC;
硬盘:4*450G 3.5英寸SAS硬盘(15k rpm);
RAID卡:集成PERC 6/i卡(Raid1), 做RAID5;

计算节点20台
PowerEdge 1950MLK
CPU:两颗Intel四核 Xeon E5410;
内存:4G×4 = 16G ECC;
硬盘:146G 3.5英寸SAS硬盘(15k rpm);

千兆交换机
Dell  PowerConnect 6248
2台;六类网线


主要有两个问题:
(1)集群管理套件,目前正在考虑使用ROCKS或者OSCAR,这两个哪一个更好?
看了nntp版主的两个帖子,
http://bbs.chinaunix.net/viewthread.php?tid=754245
http://bbs.chinaunix.net/viewthread.php?tid=754246

由于"Oscar generally works best in a homogeneous environment",考虑到将来可能升级(再添10-15个计算节点),新的硬件配置肯定会不一样,所以目前倾向于ROCKS。在别的方面还有些什么要考虑的?

(2)目前的配置中每个计算节点是双CPU,每个CPU四核,这样每个计算节点内就有8个核。由于我们所需要运行的程序并行线程多了效率降低很快,据网上公开的测试,千兆网下一般超过8线程就只有50%了。因此我有这样的设想,将计算尽量放在同一个节点内的8个核上并行,以减少数据在网络上的传输交换。在这种模式下,提交计算的时候,编写一个脚本,将输入文件先复制到某一个计算节点的/tmp下,然后计算就在这个节点的8个核来完成,计算完后再将输出文件(大小一般不超过100M)复制回主节点。

我们主要做凝聚态物理的第一性原理计算,输入文件只有几K或者几十K,输出文件则有好多个,最大的文件有几个G(一般是存储波函数之类的),小的只有几M或者几十M,但实际上对我们最有用的信息都是在这些小文件里。我考虑的是,如果按照常规的模式把主节点硬盘当作本地硬盘来运行程序,那计算节点生成的这些几个G的大文件在计算的时候会通过千兆网络写回到主节点上,会耗费时间和网络带宽;如果先把输入文件COPY 到计算节点上,算完后再把有用的小输出文件COPY回主节点,这样实际上通过网络来回走的数据量会小很多。

请问
a. 这个设想是否可行?
b. 如果可行的话,/tmp应该怎么分区,计算节点硬盘大小为146G,是不是可以把除操作系统外的所有空间都给/tmp?
c. 要实现这个目的,在队列管理上应该怎么做?是给每个节点定义一个队列,这样的划分的队列是不是太多了一些?
还是一个队列的资源里包含多台机器,通过设置来保证每个计算只在一个节点内完成?

(3)由于我们还有一些串行计算的需求,划分队列的时候能够专门弄一个队列做串行计算吗?

谢谢大家!


[ 本帖最后由 phonan 于 2008-12-8 12:30 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-12-08 08:53 |只看该作者

回复 #1 phonan 的帖子

你可以考虑ROCKS,这个便于实现,而其你可以用live cd进行测试并积累经验

论坛徽章:
0
3 [报告]
发表于 2008-12-08 10:23 |只看该作者
可以考虑用redhat HPC包.用redhat做系统的话,方便.

关于调度管理,你选什么,sge,torque+maui?资源分配及串行阵列都是支持的,当然主要是免费.

关于文件系统,用拷来拷去的方式,还是在一个并行系统下?

[ 本帖最后由 wysilly 于 2008-12-8 10:27 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-12-08 11:09 |只看该作者
使用rocks或者OSCAR要看你心情了,我是自己做disk image的,也很方便。
关于分区,现在你对你的计算节点磁盘使用情况不明确的情况下,先用LVM,这样便于你方便的调整/tmp空间
关于任务调度分配,SGE可以实现你需求的各种队列,你可以把你的不同性质的任务递交给不同的队列
根据你的计算情况,在可能的情况下,尽量使用local disk
经常察看你的集群的各方面的状态数据,做些调整,呵呵

论坛徽章:
0
5 [报告]
发表于 2008-12-08 11:26 |只看该作者

回复 #2 kns1024wh 的帖子

谢谢,ROCKS有live CD吗?我在http://www.rocksclusters.org下载了,都是直接安装用的啊。
最近倒是考虑在虚拟机下安装试试。

论坛徽章:
0
6 [报告]
发表于 2008-12-08 11:41 |只看该作者

回复 #3 wysilly 的帖子

(1)redhat HPC包不太了解,以我目前的水平,估计直接用像OSCAR, ROCKS这样的套件更容易上手;
(2)调度管理目前倾向于SGE,认识一些同学在别的单位管理HPCC,用SGE的比较多,不过似乎OSCAR和ROCKS里都可以用SGE;
(3)主要的存储都是放在主节点上的(4*450G 3.5英寸SAS硬盘,RAID5),计算节点原则上不存放个人数据。
我们主要做凝聚态物理的第一性原理计算,输入文件只有几K或者几十K,输出文件则有好多个,最大的文件有几个G(一般是存储波函数之类的),小的只有几M或者几十M,但实际上对我们最有用的信息都是在这些小文件里。我考虑的是,如果按照常规的模式把主节点硬盘当作本地硬盘来运行程序,那计算节点生成的这些几个G的大文件在计算的时候会通过千兆网络写回到主节点上,会耗费时间和网络带宽;如果先把输入文件COPY 到计算节点上,算完后再把有用的小输出文件COPY回主节点,这样实际上通过网络来回走的数据量会小很多。在提交计算时写几行脚本就可以实现上述功能,只是如何保证计算总是在一个节点内并行还不是太清楚。
当然,这是我理论上的想法,不知道实践上是否可行,还望各位高手多加指点。

[ 本帖最后由 phonan 于 2008-12-8 11:45 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2008-12-08 11:58 |只看该作者

回复 #4 straw 的帖子

谢谢straw的建议,
(1)OSCAR是image based,但我不知道以后硬件升级,加十多个硬件配置不同的新的节点之后,OSCAR能否还适用;
(2)不好意思,没有说清楚磁盘的使用计划。目前的规划是所有数据存储在主节点(4*450G 3.5英寸SAS硬盘,RAID5),计算节点原则上不存放个人数据,最多只是作为计算生成文件的临时存储(/tmp)。LVM是个好主意,我去试试;
(3)看来SGE的确是个好选择,以后多学习这个;
(4)具体以什么样的方式“尽量使用local disk”呢,是我前面说的使用/tmp的方式吗?不好意思,我目前只想到这个办法。

查了一下"straw"的帖子,“尽量使用local disk”是不是就是类似下面的意思,呵呵
“主要存储和计算几点之间最好在master node上起一个进程,专门负责对计算节点的图片传输,也就是节点获取计算资源的时候不是通过NFS或者其他网络文件系统的形式。而是直接向主节点上的进程获取所要计算的数据,计算完毕以后再通过主节点上的进程回收计算结果,这样就可以绕过海量小文件的问题了。”

(5)硬件设备大约12月底才到,我希望现在可能把一些细节弄清楚一些,让供货商安装系统时尽可能一次性装好。看来完全弄好是不太可能了,只能以后边使用边调整。谢谢您的建议。

[ 本帖最后由 phonan 于 2008-12-8 12:11 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-12-08 13:51 |只看该作者
原帖由 wysilly 于 2008-12-8 10:23 发表
可以考虑用redhat HPC包.用redhat做系统的话,方便.

关于调度管理,你选什么,sge,torque+maui?资源分配及串行阵列都是支持的,当然主要是免费.

关于文件系统,用拷来拷去的方式,还是在一个并行系统下?




有资料么? about RH.

论坛徽章:
0
9 [报告]
发表于 2008-12-08 16:41 |只看该作者
原帖由 baif 于 2008-12-8 13:51 发表




有资料么? about RH.



我可以发给你,给我你的邮件.

Red Hat 的HPC Solution 是今年9月份在全球启动的,中国这边是10月份开始的.

all-in-one方案和ROCKS非常接近,但是个人认为对于商用计算用户来说,比SFDC的ROCKS更棒. 基础研究的用户不会感觉太多差异.

论坛徽章:
0
10 [报告]
发表于 2008-12-08 16:52 |只看该作者
原帖由 phonan 于 2008-12-7 22:52 发表
大家好,最近定了一套HPCC系统有些问题想向大家咨询一下
说明:
科学并行计算用,准备安装RHEL5或CENTOS
目前的磁盘的使用规划是所有数据存储在主节点(4*450G 3.5英寸SAS硬盘,RAID5),包括操作系统,并行 ...



给你我的看法和建议:

1. 你们做凝态物理选择Dell的服务器来做hpc cluster,真的亏大了。 如果是基础研究还好,如果是你们学校老板接项目的话,那些破机器的效率真的是...

2. 用Intel架构多核的平台,对你们这种类型的计算一点好处都没有.

以上是马后炮,不过是大实话,等你们以后有预算了,买两台4core的AMD64跑跑就知道我说的对不对了。

3. 你知道为什么最后你们会考虑把计算搞到一个节点的8core上跑么? 就是我前面两点提到的,你们的计算类型不适合薄节点,你们要用厚节点,没有预算购置IB而只能用GbE的话,厚节点是第一优先考虑的。
   如果你选择 AMD64 4way4c, NuMA开. 你会发现性能boost.
   像你们现在这样,用计算脚本控制计算到一个节点上,呢么做集群还有什么意思呢?

4.现在你们计算所处的类型和你们事实上构建的平台方案处于矛盾的状况,要做的是做性能检查,仔细检查延迟发生在哪里,发生在单节点不同cpu之间,还是cpu/memory之间,还是i/o上,还是节点和节点的通讯上?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP