Matlab之设定运行内核数量函数——parpool

电脑配置高,内核数多,可以设定参与Matlab运行的内核数,从而提高程序运行效率。下面主要介绍三种设定内核数的语法,函数parpool在较高版本可以使用。

一、语法

parpool(resources)
parpool(resources,poolsize);   % 设置并行池数量

delete(gcp('nocreate'));       % 完成计算,关闭并行池

二、三种类型

parpool('Processes',6);
parpool('local',6);
parpool('threads');

三、示例

runtimes = 1e9;
dummy1   = 0;

% 正常运行不添加parpool,不在群集上创建并行池

tic
for x= 1:runtimes
    dummy1 = dummy1 + x;
    dummy2 = 2 * x + 1;
end
toc
figure();
plot([1 2], [dummy1, dummy2]);


% 12核:Processes
parpool('Processes',12);

tic
parfor x= 1:runtimes
    dummy1 = dummy1 + x;
    dummy2 = 2 * x + 1;
end
toc

figure();
plot([1 2], [dummy1, dummy2]);

delete(gcp('nocreate')); % 完成计算,关闭并行池


% 12核:local
parpool('local',12);

tic
parfor x= 1:runtimes
    dummy1 = dummy1 + x;
    dummy2 = 2 * x + 1;
end
toc

figure();
plot([1 2], [dummy1, dummy2]);

delete(gcp('nocreate')); % 完成计算,关闭并行池


% threads,采用预设页的优选内核数

parpool('threads');

tic
parfor x= 1:runtimes
    dummy1 = dummy1 + x;
    dummy2 = 2 * x + 1;
end
toc

figure();
plot([1 2], [dummy1, dummy2]);

delete(gcp('nocreate')); % 完成计算,关闭并行池

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

珞瑜·

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值