关于并行计算网使用的若干问题.pptVIP

  • 1
  • 0
  • 约2.44千字
  • 约 25页
  • 2017-09-06 发布于重庆
  • 举报
Natioanl Lab for Radar Signal Processing Xidian University National Lab for Radar Signal Processing Xidian University 关于并行计算网使用的若干问题 刘昕 普通MATLAB程序如何在并行计算网中运行 MALAB并行计算程序如何在计算网中运行 需要注意的问题 普通MATLAB程序如何在并行计算网中运行 MATLAB交互模式 可进行普通程序的运算及并行计算 MATLAB批模式 批处理并行计算 MATLAB交互模式 MATLAB批模式 普通MATLAB程序如何在并行计算网中运行 这里‘MATLAB批模式’是并行计算网针对并行计算专门作的一种计算模式,如何使用我们将在稍后说明,普通MATLAB程序我们使用‘MATLAB交互模式’即可。 ‘MATLAB交互模式’与我们在本地机上的使用MATLAB软件并无太大区别,但服务器内存大,速度快,用这种模式可处理本地机无法处理的含有大数据的程序。 普通MATLAB程序如何在并行计算网中运行 在交互模式中有以下几个选项 作业名:便于我们从在并行计算网中查找我们提交的作业 MATLAB版本:目前只提供2006b 输入文件:选择完成这个作业所需的所有文件 CPU数:目前1个作业只提供1个CPU 优先级:根据需要 提交作业后,我们通过图形终端可以得到以下界面,并完成所需操作。 普通MATLAB程序如何在并行计算网中运行 普通MATLAB程序如何在并行计算网中运行 运行上传的程序,保存所需的数据后(这里注意,如果用命令行保存,数据路径为‘/homee/spoolers/用户名’),单击左上角的‘数据管理’,Web页将列出所有保存的数据及程序,选择所需,下载即可。 MALAB并行计算程序如何在计算网中运行 采用MATLAB批模式进行并行计算 采用MATLAB交互模式进行并行计算 MATLAB批模式进行并行计算 MATLAB批模式进行并行计算 在MATLAB批模式下,必须要确定主程序是哪个。 在MATLAB批模式下,必须要编写一个文件为task_param的参数文件 我们举一个例子来说明MATLAB批模式是如何进行并行计算的 例子如下,我们希望得到1加到10000的结果,我们可以把这个任务分解为1加到2500、2501加到5000、5001加到7500、7501加到10000,这四个任务,这样并行子程序如下: function [xx]=add_test(start_num,end_num) xx=0; for ii=start_num:end_num for jj=1:100000 xx=xx+1; xx=xx-1; end xx=xx+ii; end MATLAB批模式进行并行计算 我们在主程序中定义加和的起始位置和终止位置,并写出参数文件即可 MATLAB批模式进行并行计算 利用‘MATLAB批模式’时,我们无须进入图形用户界面,提交作业后,可点击作业管理,查看作业进度,作业完成后,点击数据管理,下载所需数据即可,这里注意,并行数据结果储存在Job1文件夹中相应Task的common.mat文件中,其以cell形式存储,变量名为argsout。 采用MATLAB交互模式进行并行计算 利用交互模式进行并行计算与之前我们利用MATLAB所自带的jobmanager进行并行计算几乎完全一样。利用jobmanager进行并行计算时,所需的并行代码如下: jm = findResource(scheduler,type,jobmanager); job = createJob(jm); set(job,‘FileDependencies’,{‘add_test.m’,‘…’}); createTask(job,@add_test, 1, {start_num,end_num}); submit(job); waitForState(job, finished); totalpi = getAllOutputArguments(job) 采用MATLAB交互模式进行并行计算 在利用MATLAB交互模式时,我们只需稍做改动如下: jm = findResource(scheduler,type,‘lsf); job = createJob(jm); createTask(job,@add_test, 1, {start_num,end_num}); submit(job); waitForState(job, f

文档评论(0)

1亿VIP精品文档

相关文档