楼主: zhanghao2qh
5673 3

[问答] 请问MATLAB怎么开启并行运算 [推广有奖]

  • 2关注
  • 9粉丝

讲师

6%

还不是VIP/贵宾

-

威望
0
论坛币
17093 个
通用积分
4.7329
学术水平
5 点
热心指数
4 点
信用等级
4 点
经验
6018 点
帖子
329
精华
0
在线时间
455 小时
注册时间
2008-9-26
最后登录
2023-9-12

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请问MATLAB2015b版本,怎么开启并行运算,我是一个工作站,2个CPU。低下是代码,请问怎么设计啊,我想计算一个20000*20000的矩阵。

clc;
clear;
tic
x=xlsread('C:\Users\111\Desktop\121.xlsx');
t=20000;
D=[t,t];
D_1=[t,t];
D_output=[t,t];D_norm=[t,t];
for i=1:t
    for j=i+1:t
        D(i,i)=0;
        D_1(i,i)=0;
        D_output(i,i)=0;
        D(i,j)=1/distance(x(i,2),x(i,3),x(j,2),x(j,3),6378.1);
        D(j,i)=D(i,j);
        D_1(i,j)= D(i,j)^2;D_1(j,i)=D_1(i,j);
        D_output(i,j)=x(i,4)*x(j,4)*D_1(i,j);
        D_output(j,i)=D_output(i,j);
        j
    end
    i
end
s=sum(D_output,2);
for k=1:t
    for n=1:t;
         D_norm(k,n)=D_output(k,n)/s(k);
    end
end
D;
D_1;
D_output;
D_norm;
toc

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MATLAB matla atlab Lab Atl distance Desktop 工作站 Users

人生若只如初见~~
沙发
高绥凯 学生认证  发表于 2016-7-2 17:15:42 |只看作者 |坛友微信交流群
改for为parfor, 同时,在parfor 之前加matlabpool(2). 括号里面的2代表两个处理器,这个看个人电脑了,你可以尝试3或者4.
已有 1 人评分论坛币 热心指数 收起 理由
admin_kefu + 20 + 2 热心帮助其他会员

总评分: 论坛币 + 20  热心指数 + 2   查看全部评分

使用道具

藤椅
matlab-007 发表于 2016-7-17 18:00:55 |只看作者 |坛友微信交流群
在菜单栏上点击Parallel,选中Manage configuration,进入Configurations Manager后双击配置命(name),在Local Scheduler Configuration Properties中选择Jobs分支,设置最大和最小的CPU(workers)数目,确定后点击Start Validation,都pass后并行配置即宣告完成。
开始并行计算前,键入命令matlabpool open开启并行计算模式。

使用道具

板凳
zhanghao2qh 发表于 2016-7-18 16:58:36 |只看作者 |坛友微信交流群
高绥凯 发表于 2016-7-2 17:15
改for为parfor, 同时,在parfor 之前加matlabpool(2). 括号里面的2代表两个处理器,这个看个人电脑了,你可 ...
不行,提示错误,不能这样直接用parfpr

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 09:36