24小时热门版块排行榜    

查看: 461  |  回复: 7
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 glai8818 的 7 个金币

glai8818

木虫 (著名写手)

[交流] 【讨论】并行计算与体系的大小

大家好,我在用gromacs做并行计算的时候,5000(大约)个原子以下的体系并行效率很高,四个核都100%运行,而对更大的体系,则效率很差,四个核都只占用70%,最后总的效率还不如单核计算的,而通常到中途计算就中断了。很奇怪啊,既然cpu没有完全占用,那么说明不是cpu的问题,是内存的原因吗?我的内存很大的啊,4G,困惑中......
回复此楼
.....
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjpm

金虫 (正式写手)

★ ★
glai8818(金币+2,VIP+0):谢谢第一个回帖 7-25 21:43
4GB内存也算大啊....

I/O方面也有问题吧,而且通信开销也大
2楼2009-07-25 21:36:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glai8818

木虫 (著名写手)

引用回帖:
Originally posted by tjpm at 2009-7-25 21:36:
4GB内存也算大啊....

I/O方面也有问题吧,而且通信开销也大

但是我查看实际上只用了1/6内存啊,能否说的详细点,加入时I/O问题,如何查证或试着解决呢? 我单核计算不管多大的体系,总是能正常运行的啊

[ Last edited by glai8818 on 2009-7-25 at 21:45 ]
.....
3楼2009-07-25 21:43:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjpm

金虫 (正式写手)

★ ★ ★ ★ ★
glai8818(金币+1,VIP+0):ths 7-25 22:06
mingdong(金币+4,VIP+0):谢谢交流! 7-28 11:58
intel的最新的E5500系列之前的CPU或者是 桌面I7之前的intel全系CPU都很可能出现这样的问题。
受前端总线的限制。
AMD的CPU基本上会好很多的。不过最新的intel的U加了内存控制器后比AMD的还强了。
不过照理说你的内存才用这么点应该不会有多大问题的。其他的我也不了解了,没有用过这个东西。
4楼2009-07-25 21:53:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glai8818

木虫 (著名写手)

引用回帖:
Originally posted by tjpm at 2009-7-25 21:53:
intel的最新的E5500系列之前的CPU或者是 桌面I7之前的intel全系CPU都很可能出现这样的问题。
受前端总线的限制。
AMD的CPU基本上会好很多的。不过最新的intel的U加了内存控制器后比AMD的还强了。
不过照理说你 ...

我的cpu是Q8200
.....
5楼2009-07-25 22:06:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glai8818

木虫 (著名写手)

★ ★
zeoliters(金币+2,VIP+0):谢谢分享! 9-5 12:54
经过这几天试探,感觉应该是负载(不)平衡引起的, load balancing用掉的时间好像太高, 达30%, 负载平衡这一项高是由什么引起的?与体系的大小有什么联系?很奇怪这时候为什么cpu只运行70%左右?如何解决? 我以前没有试过并行,请问用过并行的朋友,这是以前版本就有,还是4.0版以后才有的,我的单核运行不管是什么版本都没有这一项,是不是3.3并行不会产生这个问题?

并行正常的情况:
Average load imbalance: 3.4 %

并行不正常的情况:
Average load imbalance: 29.2 %
.....
6楼2009-07-27 13:05:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuyalihd

铜虫 (小有名气)

★ ★
zeoliters(金币+2,VIP+0):谢谢回帖交流! 9-5 12:54
CPU占用率是指cpu计算的比率.不能单看这项的!70%说明有70%的时刻有数据送去cpu做计算,其他30%cpu等着的!
粒子数目多了占内存就多, 你cache多大呀!
还要看占用内存的比例的!
你用top能看到的
7楼2009-09-05 16:59:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

antediluvian

金虫 (初入文坛)

★ ★
zeoliters(金币+2,VIP+0):谢谢回帖交流! 9-5 12:54
引用回帖:
Originally posted by glai8818 at 2009-7-27 13:05:
经过这几天试探,感觉应该是负载(不)平衡引起的, load balancing用掉的时间好像太高, 达30%, 负载平衡这一项高是由什么引起的?与体系的大小有什么联系?很奇怪这时候为什么cpu只运行70%左右?如何解决? 我以前没 ...

关于体系有个需要注意的问题是在做平行化处理的时候,程序对体系是否处理妥当,有可能体系太过于复杂,程序直接处理分给不同核的任务时难以简单分割,例如某些大分子之类,这样的话在各个核之间需要频繁通信来交换数据这样的话用于Load banlance的时间可想而知就多了,同样原子数如果处理小分子流体可能就会好很多。楼上提到的总线问题的却对i7之前的U来说是个问题,但是我觉得这个对于QM级别来说会非常突出,对于MD来说可能还可以,当然一家之言啦。Gromacs同样提供了程序参数来优化分割问题,看看manual吧,grompp方面。
8楼2009-09-05 17:26:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 glai8818 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见