作者yllan (蓝永伦)
看板MacDev
标题Re: [问题]core 2 Duo电脑 让一个程式跑两个cpu
时间Thu Dec 6 00:12:52 2007
※ 引述《astroodie (宇宙)》之铭言:
: 我有一个单纯的程式(fortran的)
: 里面有非常多的回圈(流体力学的程式)
: ex.
: do t=0,10,1d-4
: do k=1,8
: do j=1,1024
: do i=1,1024
: ...
: 为了提昇效率
: 有没有办法简单的让我的Core 2 duo mac book pro
: 的两颗cpu一起跑?
: (因为我发现只有一颗跑100% 另一颗在发呆, 但神奇的是偶尔还会交换)
: 还是只能靠MPI?
: 又如果只能靠MPI, 有没有人能推荐一些关於入门的网页或文献(for mac)
: 谢谢 : )
你的计算有 data dependency 吗?拿你的例子来说
do t=0,10,1d-4
do k=1,8
do j=1,1024
do i=1,1024
...
可不可以拆成两个程式分别计算一半?
do t=0,5,1d-4 do t=5,10,1d-4
do k=1,8 do k=1,8
.... ....
或者是
do t=0,10,1d-4 do t=0,10,1d-4
do k=1,4 do k=5,8
可以的话,在你机器上(才一台机器,dual core CPU XD)最简单的方法就是
拆成两个程式同时跑再把结果手动 merge 起来吧!
如果不行的话... 就算用 MPI 也是没救。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.112.176.150