fluent经典问题请问双CPU并行计算的效率问题.docx
《fluent经典问题请问双CPU并行计算的效率问题.docx》由会员分享,可在线阅读,更多相关《fluent经典问题请问双CPU并行计算的效率问题.docx(16页珍藏版)》请在冰豆网上搜索。
fluent经典问题请问双CPU并行计算的效率问题
fluent经典问题请问双CPU并行计算的效率问题.txt27信念的力量在于即使身处逆境,亦能帮助你鼓起前进的船帆;信念的魅力在于即使遇到险运,亦能召唤你鼓起生活的勇气;信念的伟大在于即使遭遇不幸,亦能促使你保持崇高的心灵。
发信人:
rao(绕绕),信区:
NumComp
标题:
[合集]请问双CPU并行计算的效率问题
发信站:
BBS水木清华站(MonJul703:
32:
432003),站内
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
03:
442003)提到:
大致上只有一个CPU在工作,或者两CPU占有率相当于一个CPU
mpich1.2.5+fortran
怎么配置可以使两个CPU同时工作?
?
BOW
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
04:
572003)提到:
mpirun-np2*.exe
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
大致上只有一个CPU在工作,或者两CPU占有率相当于一个CPU
:
mpich1.2.5+fortran
:
怎么配置可以使两个CPU同时工作?
?
:
BOW
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
06:
272003)提到:
不是,你误解了我的意思
再具体点说就是16个节点双CPU的集群,并行计算过程中
每个节点的CPU效率大概只有50%
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
mpirun-np2*.exe
☆─────────────────────────────────────☆
Jumping(ManinExperiments)于(FriJul411:
07:
302003)提到:
如果算法不怎么nb,也就这个效率了。
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
不是,你误解了我的意思
:
再具体点说就是16个节点双CPU的集群,并行计算过程中
:
每个节点的CPU效率大概只有50%
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
09:
302003)提到:
在host文件中修改一下
hostid;numberofcpuyouwanttouse;filepath.
然后要生成16*2=32个domain,这样每个节点就会用2个cpu处理
2个domain了
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
不是,你误解了我的意思
:
再具体点说就是16个节点双CPU的集群,并行计算过程中
:
每个节点的CPU效率大概只有50%
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
09:
352003)提到:
你的意思是和算法有关?
那双CPU岂不白搭了,单CPU就ok了,呵呵
【在Jumping(ManinExperiments)的大作中提到:
】
:
如果算法不怎么nb,也就这个效率了。
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
11:
522003)提到:
你的意思是修改machinefile?
?
那样的话第二个选项应该是启动进程个数,不是CPU个数吧
还有只希望每个节点2CPU处理一个domain。
。
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
在host文件中修改一下
:
hostid;numberofcpuyouwanttouse;filepath.
:
然后要生成16*2=32个domain,这样每个节点就会用2个cpu处理
:
2个domain了
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
11:
532003)提到:
如果配置得当的话,即便算法不好,总体cpu使用率不高,但是峰值
的cpu使用率还是可以超过50%的,如果cpu使用率始终低于50%,那
就是配置的问题了。
呵呵
我的程序平均平行效率也只有60%上下,//汗!
,但峰值的时候还是
可以达到100%的。
【在Jumping(ManinExperiments)的大作中提到:
】
:
标题:
Re:
请问双CPU并行计算的效率问题
:
发信站:
BBS水木清华站(FriJul411:
07:
302003),转信
:
:
如果算法不怎么nb,也就这个效率了。
:
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
:
不是,你误解了我的意思
:
:
再具体点说就是16个节点双CPU的集群,并行计算过程中
:
:
每个节点的CPU效率大概只有50%
:
:
:
--
:
╭────────︿︿─────────╮
:
║┃║
:
║席拥飞花落絮,┃炉烹白雪清冰,║
:
║┃║
:
║坐林中锦绣团裀;┃熬天上玲珑液髓。
║
:
╰────────︿︿─────────╯
:
:
:
※来源:
·BBS水木清华站smth.org·[FROM:
166.111.36.123]
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
13:
292003)提到:
当……两个cpu处理一个domain,那你让系统怎么处理,嘻嘻……
除非你那个domain里面又有smp的代码……否则系统当然只能以串行
的方式计算你的domain了,cpu使用率当然只有50%
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
标题:
Re:
请问双CPU并行计算的效率问题
:
发信站:
BBS水木清华站(FriJul411:
11:
522003),转信
:
:
你的意思是修改machinefile?
?
:
那样的话第二个选项应该是启动进程个数,不是CPU个数吧
:
:
还有只希望每个节点2CPU处理一个domain。
。
:
:
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
:
在host文件中修改一下
:
:
hostid;numberofcpuyouwanttouse;filepath.
:
:
然后要生成16*2=32个domain,这样每个节点就会用2个cpu处理
:
:
2个domain了
:
:
:
--
:
念来去,如水流
:
徘徊久,叹息浓
:
旧心情,情依旧
:
愁自去,去更愁
:
:
:
※来源:
·BBS水木清华站smth.org·[FROM:
166.111.165.137]
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
20:
322003)提到:
那看来你的意思就是每个节点当两个节点用了,是把:
)
精华区有人说2CPU效率基本达到100%也是这样的喽?
主要是程序中有不少文件操作,那样的话会文件使用处突,得改文件名
比较麻烦,呵呵
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
当……两个cpu处理一个domain,那你让系统怎么处理,嘻嘻……
:
除非你那个domain里面又有smp的代码……否则系统当然只能以串行
:
的方式计算你的domain了,cpu使用率当然只有50%
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
23:
132003)提到:
你就在每个domain中间加一点openmp的代码吧……也不是很麻烦……
而且你的这个想法其实很好哦……如果在每个结点上作smp,可以减少
很多mpi通信时间……
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
标题:
Re:
请问双CPU并行计算的效率问题
:
发信站:
BBS水木清华站(FriJul411:
20:
322003),转信
:
:
那看来你的意思就是每个节点当两个节点用了,是把:
)
:
:
精华区有人说2CPU效率基本达到100%也是这样的喽?
:
:
:
主要是程序中有不少文件操作,那样的话会文件使用处突,得改文件名
:
比较麻烦,呵呵
:
:
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
:
当……两个cpu处理一个domain,那你让系统怎么处理,嘻嘻……
:
:
除非你那个domain里面又有smp的代码……否则系统当然只能以串行
:
:
的方式计算你的domain了,cpu使用率当然只有50%
:
:
:
--
:
念来去,如水流
:
徘徊久,叹息浓
:
旧心情,情依旧
:
愁自去,去更愁
:
:
:
※来源:
·BBS水木清华站smth.org·[FROM:
166.111.165.137]
☆─────────────────────────────────────☆
cloudfly(阿斐)于(FriJul411:
26:
532003)提到:
除了加入smp代码以外,只有改文件名了,
而且我实践的结果是每个节点当两个节点的效率比每个节点使用smp要高
所以推荐你改文件名。
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
那看来你的意思就是每个节点当两个节点用了,是把:
)
:
精华区有人说2CPU效率基本达到100%也是这样的喽?
:
主要是程序中有不少文件操作,那样的话会文件使用处突,得改文件名
:
比较麻烦,呵呵
☆─────────────────────────────────────☆
Jumping(ManinExperiments)于(FriJul411:
28:
132003)提到:
那你前面说的50%的效率,难道值得是两个cpu只有一个工作,所以是50%?
倒。
。
。
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
你的意思是和算法有关?
:
那双CPU岂不白搭了,单CPU就ok了,呵呵
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
29:
012003)提到:
这个不一定吧……看编译器还有程序的算法了
从理论上说,smp只要在同一机器内部线程通信,而mpi如果不特意设定的话,
需要在整个机群中通信,应该还是smp快一些?
【在cloudfly(阿斐)的大作中提到:
】
:
标题:
Re:
请问双CPU并行计算的效率问题
:
发信站:
BBS水木清华站(FriJul411:
26:
532003),转信
:
:
除了加入smp代码以外,只有改文件名了,
:
而且我实践的结果是每个节点当两个节点的效率比每个节点使用smp要高
:
所以推荐你改文件名。
:
:
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
:
那看来你的意思就是每个节点当两个节点用了,是把:
)
:
:
精华区有人说2CPU效率基本达到100%也是这样的喽?
:
:
主要是程序中有不少文件操作,那样的话会文件使用处突,得改文件名
:
:
比较麻烦,呵呵
:
:
:
--
:
:
※来源:
·BBS水木清华站smth.org·[FROM:
202.108.174.201]
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
29:
072003)提到:
呵呵,其实我指的就是这个意思,哈哈
【在Jumping(ManinExperiments)的大作中提到:
】
:
那你前面说的50%的效率,难道值得是两个cpu只有一个工作,所以是50%?
:
倒。
。
。
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
29:
262003)提到:
似乎是这样的……呵呵
【在Jumping(ManinExperiments)的大作中提到:
】
:
那你前面说的50%的效率,难道值得是两个cpu只有一个工作,所以是50%?
:
倒。
。
。
☆─────────────────────────────────────☆
cloudfly(阿斐)于(FriJul411:
31:
262003)提到:
所以我说的是实践的结果,(^_^)
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
这个不一定吧……看编译器还有程序的算法了
:
从理论上说,smp只要在同一机器内部线程通信,而mpi如果不特意设定的话,
:
需要在整个机群中通信,应该还是smp快一些?
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
33:
402003)提到:
Thankstoall:
)
【在cloudfly(阿斐)的大作中提到:
】
所以我说的是实践的结果,(^_^)
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
这个不一定吧……看编译器还有程序的算法了
:
从理论上说,smp只要在同一机器内部线程通信,而mpi如果不特意设定的话,
:
需要在整个机群中通信,应该还是smp快一些?
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
36:
042003)提到:
那这么说的话,你前面给出得效率是相对于单个CPU说的?
?
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
似乎是这样的……呵呵
☆─────────────────────────────────────☆
luxz(panda--在热死和冻死边缘挣扎)于(FriJul411:
38:
372003)提到:
不是啊,就是相对与两个cpu,是这样的,我程序里面有些操作必须是串行
的,这样的话只有一个cpu工作,效率是50%,另一些操作可以并行,此时
效率是100%,两个cpu充分发挥。
但是整体平均下来是60%,比一个cpu快,
但是没有充分发挥两个cpu的效能……
【在xuzheng(天使暂时离开@_@反方向的钟)的大作中提到:
】
:
标题:
Re:
请问双CPU并行计算的效率问题
:
发信站:
BBS水木清华站(FriJul411:
36:
042003),转信
:
:
那这么说的话,你前面给出得效率是相对于单个CPU说的?
?
:
:
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
:
似乎是这样的……呵呵
:
:
:
--
:
永远不变的只有改变
:
:
:
※来源:
·BBS水木清华站smth.org·[FROM:
166.111.165.137]
☆─────────────────────────────────────☆
Jumping(ManinExperiments)于(FriJul411:
40:
062003)提到:
那在程序中如何辨识两个cpu(线程)是不是在同一个机器上呢?
呵呵,
比较好奇的说:
p
【在luxz(panda--在热死和冻死边缘挣扎)的大作中提到:
】
:
不是啊,就是相对与两个cpu,是这样的,我程序里面有些操作必须是串行
:
的,这样的话只有一个cpu工作,效率是50%,另一些操作可以并行,此时
:
效率是100%,两个cpu充分发挥。
但是整体平均下来是60%,比一个cpu快,
:
但是没有充分发挥两个cpu的效能……
☆─────────────────────────────────────☆
xuzheng(天使暂时离开@_@反方向的钟)于(FriJul411:
41:
432003)提到:
compareprocessorname?
?
hehe
【在Jumping(ManinExperiments)的大作中提到:
】
:
那在程序中如何辨识两个cpu(线程)是不是在同一个机器上呢?
呵呵,
:
比较好奇的说:
p
☆─────────────────────────────────────☆
cloudfly(阿斐)于(FriJul414:
19:
482003)提到:
3.3.5SMPClusters
Whenusingaclusterofsymmetricmultiprocessors(SMPs)(withthech_p4
devicecon-
figuredwith-comm=shared),youcancontrolthenumberofprocessesthat
communicate
withsharedmemoryoneachSMPnode.First,youneedtomodifythe
machinesfile(see
Section3.3)toindicatethenumberofprocessesthatshouldbe
startedoneachhost.Normally
thisnumbershouldbenogreaterthanthenumberofprocessors;on
SMPswithlarge
numbersofprocessors,thenumbershouldbeonelessthanthenumber
ofprocessorsin
ordertoleaveoneprocessorfortheoperatingsystem.Theformatis
simple:
eachlineof
themachinesfilespecifiesahostname,optionallyfollowedbyacolon
(:
)andthenumber
ofprocessestoallow.Forexample,thefilecontainingthelines
mercury
venus
earth
mars:
2
jupiter:
15
specifiesthreesingleprocessormachines(mercury,venus,andearth),a
2processormachine
(mars),anda15processormachine(jupiter).
Bydefault,mpirunwilluseatmostthenumberofprocessorsspecified
inthemachines
listforeachnode,upto16processesoneachmachine.Bysettingthe
environmentvariable
MPI_MAX_CLUSTER_SIZEtoapositiveintegervalue,mpirunwilluseupto
thatmanyprocesses,
sharingmemoryforcommunication,onahost.Forexample,if
MPI_MAX_CLUSTER_-
SIZEhadthevalue4,thenmpirun-np9withtheabovemachinefile
createoneprocess
oneachofmercury,venus,andearth,2onmars(2becausethe
machinesfilespecifiesthat
marsmayhave2processessharingmemory)and4onjupiter(because
jupitermayhave
15processesandonly4moreareneeded).If10processeswereneeded,
mpirunwouldstart
overfromthebeginningofthemachinesfile,creatinganadditional
processonmercury;
thevalueofMPI_MAX_CLUSTER_SIZEpreventsmpirunfromstartinga
fifthprocesssharing
memoryonjupiter.
【在Jumping(ManinExperiments)的大作中提到:
】
:
那在程序中如何辨识两个cpu(线程)是不是在同一个机器上呢?
呵呵,
:
比较好奇的说:
p
☆──