Matlab并行编程方法

本文介绍了Matlab中的并行编程方法,重点讨论了parfor和SPMD的区别。parfor适用于不依赖其他迭代结果的循环,并行化简单计算,而SPMD在同一段代码中处理不同数据,可用于随机抽样并行和块并行。注意事项包括避免在parfor中使用eval,不嵌套parfor或spmd循环,以及遵循parfor的透明性规则。欢迎分享更多并行编程技巧。
摘要由CSDN通过智能技术生成

本文讲一下matlab中的并行方法与技巧,这里我们不涉及GPU加速,主要考虑for循环并行和数据并行。分为以下几个板块:

1. 怎么并行?

2. parfor vs. SPMD

3. 注意事项及经验总结



-----------------------------------------------------------

1. 如何并行?

1. Request a number of workers;
2. Issue the normal command to run the program. The client program will call on the workers as needed;
3. Release the workers;

具体到代码:

matlabpool local 2;
    %parallel program
matlabpool close

其中2是core数目,注意2是core数。你的电脑如果是双核四线程的,那么只能申两个(而非4个)matlab local pool。

具体实现parallel program呢,主要是通过parfor(parallel for)和SPMD(single program, multiple data)完成的。




-----------------------------------------------------------

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值