matlab 设置最大并行数_Matlab并行效率问题

博主在24核工作站上使用Matlab进行并行计算,发现程序仅能利用12个核,且并行效率不足。尽管已将30小时的计算时间缩短至4小时,对于一个双重for循环,仍有优化空间。问题集中在大量矩阵运算导致的时间消耗,尤其是Wnm和echo_PD的乘法。博主考虑使用GPU加速,但担忧并行计算的实现难度,期待社区提供优化建议。
摘要由CSDN通过智能技术生成

本帖最后由 xidianbianjiang 于 2013-10-10 16:26 编辑

大家好,我所用的机器为实验室24核的工作站,按照Matlab的说明,单机最多使用12个worker。

首先,我想问,matlab单机有可能使用更多的核吗?因为我看原来math老大在一个回帖中提到购买license可以单机用更多的核,但一直没有找到更多的信息。

其次,就我自己的实践来说,我的程序改为并行后速度只提高的不到两倍,运行时间大约为4个小时(本人已经尽力优化的算法,最初程序要跑30个小时,后来缩短到4个小时)。程序中最耗时的为一个双重for循环。论坛卧虎藏龙,还希望大家能给些建议。

parfor k=1:M_max

R=Rmin+k*deltaR ;

deltaA=S_huan(k)/ceil(pi/deta_theta(k)+1);%*sigama0(k);

for theta=0:deta_theta:pi

%=======天线增益========%

F_phi=Im'*exp(j*2*pi*d_lamda*(0:M-1)'*(sin(phi(k))-sin(phi0)));

F_theta=In'*exp(j*2*pi*d_lamda*(0:N-1)'*(cos(theta)*cos(phi(k))-cos(theta0)*cos(phi0)));

F=abs(F_phi*F_theta);

F=F/F_max;

const1=Pt*lamda^2*10^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值