文档

批量

MATLAB脚本或对工人功能

句法

j =批(“aScript”)
J =批次(myCluster中, 'aScript')
j =批(fcn,N,{x1,…, xn})
J =批次(myCluster中,FCN,N,{X1,...,XN})
J =批次(...”p1'V1'p2”,v2,…)

参数

Ĵ

批处理作业对象。

'aScript'

的MATLAB代码的脚本由工人进行评估。

myCluster

代表群集计算资源集群对象。

fcn

要由worker计算的函数句柄或函数名。

ñ

从评价函数输出参数的个数。

{X1,...,XN}

函数的输入参数的单元格数组。

p1p2

对象属性或其他参数来控制职务行为。

V1V2

对应对象属性或参数的初始值。

描述

j =批(“aScript”)运行该文件的脚本代码aScript.m由默认的群集配置文件中指定的集群中的工人。(注:不包括。m文件扩展名与脚本名称参数)。该函数返回Ĵ,一个手柄到运行该脚本的作业对象。脚本文件aScript.m被复制到工人。

J =批次(myCluster中, 'aScript')是相同的批处理(“aScript”)根据该一个工人在脚本运行除了由集群对象标识的簇myCluster

j =批(fcn,N,{x1,…, xn})运行由函数句柄或函数名指定的函数,fcn,在由缺省集群配置文件标识的集群中的一个worker上。函数返回Ĵ,运行该函数的作业对象的句柄。函数是用给定的参数求值的,x1,…,xn,返回ñ输出参数。对于功能文件fcn被复制到工人。(不包括。m文件扩展名与函数名参数)。

J =批次(myCluster中,FCN,N,{X1,...,XN})是相同的批次(FCN,N,{X1,...,XN})除了该函数运行在由集群对象标识的集群中的一个worker上myCluster

J =批次(...”p1'V1'p2”,v2,…)允许修改作业的行为的其他参数值对。这些参数支持批量函数和脚本,除非另万博1manbetx有说明。支持的参万博1manbetx数有:

  • “工作区”-一个1乘1的结构体,用来在脚本被调用之前定义worker的工作空间。结构的字段名定义变量的名称,字段值被分配给工作空间变量。默认情况下,对于执行批处理的当前工作区中的每个变量,此参数都有一个字段。此参数仅支持脚本的运行。万博1manbetx

  • “个人资料”- 用于标识集群集群配置文件的名称。如果省略此选项,默认的配置文件来识别该集群,并应用到作业和任务属性。

  • “AdditionalPaths”-字符向量或字符向量的单元数组,定义路径要添加到MATLAB®该脚本或函数执行之前搜索工人的路径。默认的搜索路径可能不会对工人一样,因为它是在客户端上;路径差异可能是不同的当前工作文件夹的结果(松材线虫病)、平台或网络文件系统访问。的“AdditionalPaths”属性可以保证工人正在寻找在必要的代码文件,数据文件,模型文件等正确的位置

  • '附加的文件'- 一个字符向量或特征向量的单元阵列。在列表中识别一个文件或文件夹,其被转移到工人每个字符向量。

  • “AutoAddClientPath”-一个逻辑值(真正的),它控制客户端路径上的用户附加条目是否被添加到每个工人的路径中。默认值是真正的

  • 'AutoAttachFiles'-指定代码文件是否应自动附加到作业的逻辑值。如果真正的,批处理脚本或功能进行了分析和代码文件,这取决于被自动传送给工人。默认值是真正的

  • 'CurrentFolder'- 表明在哪些文件夹中的脚本执行特征向量。有没有保证的工人存在此文件夹中。此属性的默认值是CWDMATLAB的当批量命令执行。如果参数是'',有一批执行之前在文件夹中没有变化。

  • “CaptureDiary”- 一个合乎逻辑的标志,以表明工具箱应该从函数调用收集日记。查看日记函数获取有关所收集数据的信息。默认值是真正的

  • “EnvironmentVariables”-一个字符向量,或字符向量的单元格数组,指定环境变量的名称,从客户端会话复制到工人。属性附加此处指定的名称“EnvironmentVariables”在适用的并行配置文件指定的属性,形成环境变量的完整列表。这不是一组列出的任何变量不会复制到工人。这些环境变量将在工人批处理作业的时间进行设置。

  • “池”-一个整数,指定要使作业成为并行池的worker的数量除了给工人运行批处理作业本身。该脚本或函数使用此池中的语句,如执行PARFORSPMD批处理代码中的。因为池需要ñ工人除了工人运行批处理,必须有至少N + 1集群上可用的工作程序。您不需要已经运行的并行池来执行批处理;而且批处理创建的新池与您可能已经打开的池无关。(见运行批处理并行循环)。默认值为0,这将导致脚本或函数只在一个worker上运行,而没有并行池。

例子

在worker上运行批处理脚本,而不使用并行池:

j =批(“script1”);

运行需要执行两个附加文件批处理脚本:

j =批('myScript的''附加的文件', {“mscr1.m”“mscr2.m”});等待(j);负载(j);

在远程集群上运行批处理池作业,除了运行批处理脚本的worker外,还为并行池使用8个worker。捕获日志,并将作业的结果加载到工作区中。这项工作总共需要九名工人:

j =批(“script1”“池”8,“CaptureDiary”,真正);等待(j);%等待作业完成日记(J)%显示日记负载(j)的%将作业工作区数据加载到客户端工作区

运行在本地工人,它采用其他两个本地工人池批池的工作。请注意,这需要除客户一共有三个工人,所有的本地机器上:

j =批(“script1”“个人资料”'本地'“池”2);

清理一个批处理作业的数据后,您已完成:

删除(j)

在集群上运行批处理函数,生成一个10乘10的随机矩阵:

C = parcluster();J =批次(C,@兰特,1,{10,10});等待(J)%等待作业完成日记(J)%显示日记R = fetchOutputs(J);%将结果存入单元格数组环R {1}%显示结果

提示

若要查看批处理作业的状态或跟踪其进度,请使用作业监视器(见作业监视器。还可以使用作业监视器为在不同会话中创建的批处理作业检索作业对象,或为未从批量呼叫。

由于良好的编程习惯的问题,当你不再需要它,你应该删除批处理功能,使得它不会继续消耗集群存储资源创建的作业。

也可以看看

||||

介绍了在R2008a

这个话题有用吗?