关于单机4核CPU的并行问题

wxqdelphi
关于单机4核CPU的并行问题

我在论坛中搜索到了一个帖子,是关于单机双核CPU的并行效率问题的讨论:[url]http://linux.chinaunix.net/bbs/viewthread.php?tid=851916&highlight=%B5%A5%BB%FA[/url]

单位有两台Dell-690(4核),我想用它们来进行集群搭建的测试,以我的一台HP笔记本做服务器(很简陋的设备)。
第一步,我想先实现“单机”4核的并行运算。网上很多帖子都是关于集群搭建的,但关于单机并行运算的帖子则很少。
目前,我了解一些关于MPICH的基本知识,并浏览了鸟哥关于集群搭建的帖子:[url]http://bbs.chinaunix.net/viewthread.php?tid=353817[/url]

MPICH已在机器中安装成功,我的问题是,如何能够证明,4个CPU都在工作?能否给一个比较详细的关于/usr/local/mpich/util/machines中配置文件的书写方法?

谢谢!

troyme
hostname
hostname
hostname
hostname

跑的时候看看是不是四个进程,是的话,cpu就是用满了

wxqdelphi
是用ps-e显示当前所有进程吗?
2楼的四个hostname是输入还是输出信息啊?
谢谢!

wxqdelphi
我刚才试了一下,我那个程序是这样显示的:
2527 pts/1 00:11:03 pw.x
除了这行,就没有关于pw.x的进程了。
这是不是说明,目前只有一个进程在运行这个程序?

wxqdelphi
关于单机多处理器的问题,搜索的关键词是不是SMP?

troyme
[quote]原帖由 [i]wxqdelphi[/i] 于 2008-1-30 08:58 发表 [url=http://linux.chinaunix.net/bbs/redirect.php?goto=findpost&pid=6451750&ptid=919951][img]http://linux.chinaunix.net/bbs/images/common/back.gif[/img][/url]
是用ps-e显示当前所有进程吗?
2楼的四个hostname是输入还是输出信息啊?
谢谢! [/quote]


machinefile的写法,就是4个主机名,因为四核,你用mpich跑程序,就是并行运算,搜索mpirun或者mpiexec

芬达7402
假设你的dell机器名为node1,那么在你的machinefile里写入:            node1
                                                                                       node1
                                                                                       node1
                                                                                       node1
这样就代表让4个核心同时参与到计算当中。
至于你说的看进程的话,可以用top命令,然后按1,应该能看到相关内容。

[[i] 本帖最后由 芬达7402 于 2008-1-30 22:31 编辑 [/i]]

wxqdelphi
谢谢各位,小弟还有一个疑问。
如果我现在成功安装了smp,并且机器是四核的,为什么运行的时候,pw.x程序还是一个线程呢?
还要安装mpich吗?
搜索了一下,好像mpich2里包含了smp的功能,但具体的就不太清楚了,请高人指点啊!
谢谢!

troyme
[quote]原帖由 [i]wxqdelphi[/i] 于 2008-1-31 11:31 发表 [url=http://linux.chinaunix.net/bbs/redirect.php?goto=findpost&pid=6452083&ptid=919951][img]http://linux.chinaunix.net/bbs/images/common/back.gif[/img][/url]
谢谢各位,小弟还有一个疑问。
如果我现在成功安装了smp,并且机器是四核的,为什么运行的时候,pw.x程序还是一个线程呢?
还要安装mpich吗?
搜索了一下,好像mpich2里包含了smp的功能,但具体的就不太清楚 ... [/quote]


你的逻辑有点混乱
简单说

你有smp内核,系统就可以看到多个cpu了,但是跑程序的时候,你如果不用mpi等,程序一般是不会自动用smp的并行方式跑的,所以只有一个进程。
如果你想4个核心同时跑程序,就要用到mpi,并且你的应用程序要支持mpi来跑

芬达7402
楼上的兄弟说的很清楚,顶!

wxqdelphi
奇怪,为什么四核计算不收敛而单核计算却收敛?

小弟现在可以进行四核并行计算,感谢楼上各位大哥的热心指导:em02:
但是,在四核运算的时候,原先计算收敛的程序,现在却无法收敛,不知道大虾是否遇到过类似情况?

nntp
什么计算不能收敛?
用什么得出了计算不能收敛的判断? 残差值?还是守恒?
迭代过程中流动性变量群体中,有代表性的那些,是否因为其值已经不变化造成误判?
你用的什么计算软件,有计算收敛的辅助支持功能么?
上一篇:Linux论坛 下一篇:选择LVS算法