|
发表于 2023-3-26 13:21:02
|
显示全部楼层
这么大矩阵的优化不仅仅是parfor 还有是更加优化的计算和预分配
加入 a = zeros(10000,10000); 预分配就可以节省很多时间了
tic
a = zeros(10000,10000);
for i=1:10000
for j=1:10000
a(i,j)=i*j;
end
end
toc
Elapsed time is 2.071419 seconds.
抛弃for循环,,, 纯矩阵计算.... 可以下降到
tic
i = [1:10000];
c = i' * i;
toc
Elapsed time is 0.173366 seconds.
如果你还有GPU
可是试试这个
tic;
i = gpuArray([1:10000]);
d = i' * i;
toc;
Elapsed time is 0.015586 seconds. |
|