主要内容

使用并行计算实施折刀

这个示例来自折刀功能参考页,但并行运行。

从平均0和标准偏差5的正态分布中生成尺寸10000的样本数据。

Sigma = 5;rng('默认')y = normrnd(0,Sigma,10000,1);

折刀并行估计差异。为此,请使用Statset创建选项结构并设置useParallel字段为真。

opts = statset(“ useparalallel',真的);m =折刀(@var,y,1,'选项',选择);

比较已知的偏置公式与折刀偏置估计。

n =长度(y);偏见= -sigma^2/n%已知偏见公式jbias =(n-1)*(平均(M)-VAR(y,1))%折刀偏见估计
使用“本地”配置文件开始并行池(PARPOOL)...连接到并行池(工人数量:6)。bias = -0.0025 jbias = -0.0025

比较以串行和并行计算所需的时间。

tic; m = jacknife(@var,y,1); toc%序列计算
经过的时间为1.638026秒。
tic; m =折刀(@var,y,1,'选项',选择); toc%并联计算
经过的时间为0.507961秒。

折刀不使用随机数,因此每次都会给出相同的结果,无论是并行还是串行运行。