电子产业一站式赋能平台

PCB联盟网

搜索
查看: 899|回复: 0
收起左侧

用了parfor并行计算花的时间为什么更长了?

[复制链接]

585

主题

910

帖子

4977

积分

四级会员

Rank: 4

积分
4977
发表于 2023-5-23 08:26:39 | 显示全部楼层 |阅读模式
普通执行一个函数花了1个多小时算完了,用parfor 12核心执行12次这个函数,一共要花10个小时
我能理解通信造成的时间变慢,但是我这个不需要核心之间的通信(每次执行都是独立的),按理说不会慢这么多吧。我看了结果文件和CPU占用,是同时12个在一起算的,不懂为什么要这么久。
代码如下,循环(1)只要花1个多小时,但是这个代码执行完要10个小时,求问怎么改进。
CoreNum=12;
if isempty(gcp('nocreate'))
    parpool(CoreNum);
end


parfor i=1:12
    xunhuan(i)
end
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表