matlab并行计算简介

matlab并行计算简介

ID:30200766

大小:418.91 KB

页数:14页

时间:2018-12-27

matlab并行计算简介_第1页
matlab并行计算简介_第2页
matlab并行计算简介_第3页
matlab并行计算简介_第4页
matlab并行计算简介_第5页
资源描述:

《matlab并行计算简介》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、MATLAB并行计算简介MATLAB并行平台底层架构MATLAB并行平台搭建并行程序的编写与实例实验室MATLAB并行集群1MATLAB并行平台底层架构(一)并行平台上的三种角色“警察”:维护整个平台。(mdce:底层维护和通信进程)“老板”:接任务,雇佣工人并分配任务。(jobmanager:负责对计算机资源的管理,接收用户发过来的并行计算任务。)“工人”:努力工作。(worker:工作进程)我负责维护整个并行平台接生意咯,客户要什么我就叫工人搞定它。听老板的话,努力干活!2MATLAB并行平台底层架构(二)MATLAB并行平台底层架

2、构图3MATLAB并行平台搭建(一)安装和开启mdce(分布式计算引擎)运行->cmd安装mdce:mdceinstall开启mdce:mdcestart注意:mdce安装后会下次开机自动启动警察来了!4MATLAB并行平台搭建(二)配置jobmanager打开matlab软件,菜单选Parallel>ManageConfigurations,弹出对话框;File>new>jobmanager,弹出对话框:Scheduler项,①LookupURL处填写所用计算机的名称,如node5;②Name项为自拟的jobmanager的名称,如m

3、yjobmanagerJobs项,NumberofWorkers处表示该jobmanager运行并行程序时需要最小worker数目(即≥最小worker数目才执行),以及该jobmanager可拥有的最大worker数目;3.点击OK,完成配置。完善资料,合法经营。5MATLAB并行平台搭建(三)打开jobmanager命令行下输入:startjobmanager–namemyjobmanager[即前面配置时的名字]附:关闭jobmanagerstopjobmanager–namemyjobmanager正式登场!6MATLAB并行平

4、台搭建(四)创建worker进程(雇佣工人)同样在命令行下输入:startworker–jobmanagerhostnode5–jobmanagermyjobmanager–nameworker1–remotehostnode1node5:本地计算机名字myjobmanager:jobmanager的名字worker1:worker进程的名字node1:远程计算机的名字注意:①可开启多个不同名字的worker进程;②若在本地上创建则不需后面的-remotehostnode1。附:关闭worker进程:stopworker–namewor

5、ker1–remotehostnode1我聘请你。好。平台搭建完毕!可用nodestatus指令查看。7MATLAB并行程序编写①资源查找,创建对象;②创建工作(job); ③指定工作任务(task); ④提交工作; ⑤等待; ⑥返回计算任务结果。findResource()createJob()createTask()submit()getAllOutputArguments()waitForState()程序结构和相关函数调用8MATLAB并行程序示例%%程序功能,并行计算求2+4,5+8,1+7的和。①资源查找,创建对象。jm=f

6、indResource('scheduler','type','jobmanager','name','myjobmanager',…‘LookupURL’,‘node5’);需要修改的是红色划线参数,第一个即前面jobmanager的名字,第二个即本地主机的名字②创建工作,并将该工作所需的数据、程序发到各个worker处。job1=createJob(jm);%工作名为job1%%set(job1,‘FileDependencies’,{‘bb1.m’,‘bb2.m’,‘bb3.m’,…'W_FDJ1.mat','W_FDJ2.mat

7、','W_FDJ3.mat'});注:set()函数就是将该工作所需的数据、程序发到各个worker处,本程序不需要用到。③创建任务createTask(job1,@sum,1,{2,4});createTask(job1,@sum,1,{5,8});createTask(job1,@sum,1,{1,7});为job1创建了3个任务,@sum代表函数头,1代表返回参数个数,此处为1个,{2,4}代表函数sum的输入参数。9④提交工作submit(job1);⑤等待waitForState(job1,'finished');⑥返回结果r

8、esults=getAllOutputArguments(job1);其中results{1}代表任务1的结果,本程序则为6。(2+4)results{2}代表任务2的结果,本程序则为13。(5+8)res

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。