Mtalab R2015b 多核并行运算以加快速度
来源:互联网 发布:淘宝店铺值多少钱 编辑:程序博客网 时间:2024/05/18 23:57
目前网上给出的大部分matalb并行计算代码为
matlabpool local x %开始并行设置 生成并行poolmatlabpool close %关闭 并行pool
但对于matlab2015版本,已经没有了matlabpool命令,修改为
parpool local %开启delete(gcp('nocreate'))%关闭
并利用parfor命令实现并行for循环的计算,实例程序如下:
%传统方式ticc1=1;for i = 1:500 c1 = c1+max(eig(rand(i,i)));endt1 = toc;%parfor并行方式计算parpool localc2=1;ticparfor ii = 1:500 c2 = c2+max(eig(rand(ii,ii)));enddelete(gcp('nocreate'))t2 = toc;display(strcat('客户端串行计算时间:',num2str(t1),'秒'));display(strcat('parfor并行计算时间:',num2str(t2),'秒'));但在实际应用时,使用parfor是,提示问题:The variable X1 in a parfor cannot be classified.
我的代码如下:
parpool localparfor m=1:Mont X1 = [100.*rand(1,N);20.*rand(1,N)] X2 = X1; X1(1,:) = X1(1,:)-1+.3*randn(1,N); X2(1,:) = X2(1,:)+3+.3*randn(1,N); ... disp(m)enddelete(gcp('nocreate'))查了相关帮助文档 doc parfor和相关答疑帖子:http://blog.sina.com.cn/s/blog_866e7fa70101cv08.html
没看太明白,不断尝试后,在end后面加入部分语句后,得到了解决。
parpool localparfor m=1:Mont %产生数据 X1 = [100.*rand(1,N);20.*rand(1,N)] X2 = X1; X1(1,:) = X1(1,:)-1+.3*randn(1,N); X2(1,:) = X2(1,:)+3+.3*randn(1,N); .... disp(m)endX1=0;X2=0;delete(gcp('nocreate'))
阅读全文
0 0
- Mtalab R2015b 多核并行运算以加快速度
- Qt使用多核(jom)加快编译速度
- Matlab 多核 多个CPU 并行运算
- 并行编译加快VS C++项目的编译速度
- 并行编译加快 VS C++ 项目的编译速度
- 并行编译加快 VS C++ 项目的编译速度
- 并行编译加快 VS C++ 项目的编译速度
- 多核并行
- 加快程序执行速度,以我的UDTW为例
- 修改Raspbian软件源以加快软件下载速度
- 延迟加载ycm以加快vim的启动速度
- Angular使用taobao镜像以加快下载速度
- GCD 苹果公司为多核的并行运算提供的解决方案
- GCD 解决多核并行运算的一种方案
- JavaScript被扩展以支持并行运算
- JavaScript被扩展以支持并行运算
- 多核运算
- 多核与异步并行
- 第十周 【项目1
- 绿色版MySQL安装及权限设置
- cocos2dx Button 修改尺寸
- 将Java工程导入到IntelliJ IDEA 不能显示项目里的文件结构?
- 生成主键
- Mtalab R2015b 多核并行运算以加快速度
- Tomcat
- 推荐一些坚持原创的公众号
- 我和Linux
- php倒序显示中英文字符串
- android原生APP adb install问题
- JAVA泛型_JSON
- TECHCRUNCH创始人筹1亿美元瑞波对冲基金,称3000亿美元市场只是一个开始比特币酒吧
- JAVA EJB 简单描述