Matlab分布式计算工具箱使用指南

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Matlab分布式计算工具箱使用指南

使用Matlab进行分布式计算需要两个产品:

1、分布式计算工具箱(Distributed Computing Toolbox)

2、Matlab分布计算引擎MDCE(Matlab Distributed Computer Engine) MDCE主要用于执行Clinet Session中定义的job和task

一、安装MDCE

MDCE安装在D:\Program Files\MATLAB\R2008a\toolbox\distcomp\bin目录下:

在Matlab的command windows中执行

mdce install %安装引擎

mdce start %启动引擎

执行上面两条命令后,分布式计算引擎服务程序就安装完毕了。MDCE就是一个服务进程,在使用MDCE 之前需要首先启动它。

二、启动一个Job Manager

startjobmanager -name matlabsky -v %启动一个名为matlabsky的作业管理进程

jm = findResource('scheduler','type','jobmanager', 'Name',

'matlabsky'); %找出PC上有效的分布计算资源

三、启动Worker

startworker -name worker1

out = findResource('worker')

waitForState(job, 'finished',1000)

jm=findResource('scheduler','type','jobmanager','name','default_jobma nager');

四、分布式计算工具箱示例

在运行示例之前,必须先安装 MDCE,然后启动一个Job Manager 和若干个Worker,并且在Job Manager中注册Worker。要查看MDCE进程的状态,可以用nodestatus.bat批处理文件来查看。如果在Job Manager中没有注册Worker,那么Job Manager就没有办法把任务分配给Worker计算,当调用waitForState(job, 'finished')命令时,就会发生死锁。

1、Programming a Basic Job with a Job Manager

jm=findResource('scheduler','type','jobmanager','name','ccy');

j = createJob(jm);

createTask(j, @sum, 1, {[1 1]});

createTask(j, @sum, 1, {[2 2]});

createTask(j, @sum, 1, {[3 3]});

submit(j);

waitForState(j)

results = getAllOutputArguments(j)

destroy(j)

2、使用分布式计算工具箱来计算Pi的值

jm=findResource('scheduler','type','jobmanager','name','ccy');

j = createJob(jm);

fun=inline('4./(1+x.^2)','x');

worker_number=20;

for i=1:worker_number

createTask(j,@quad,1,{fun,(i-1)/worker_number,i/worker_number });

end

submit(j);

waitForState(j);

results = getAllOutputArguments(j);

val_pi=0;

for i=1:worker_number

val_pi=val_pi+results{i};

end

destroy(j);

str=sprintf('PI=%e,Error=%e',val_pi,val_pi-pi);

disp(str);

val_pi

相关文档
最新文档