文档帮助中心
跑MATLAB脚本或对工人功能
J =批次(脚本)
j=批处理(myCluster,script)
J =批次(FCN,N,{X1,...,XN})
j=批处理(myCluster,fcn,N,{x1,…,xn})
J =批次(___,名称,值)
例子
j型=批次(脚本)运行脚本文件脚本在默认群集配置文件指定的群集中的工作进程上。(注:不包括.M脚本名为的文件扩展名。)函数返回j型,一个手柄到运行该脚本的作业对象。脚本文件脚本被复制到工人。
j型=批次(脚本)
j型
脚本
.M
j型=批次(myCluster中,脚本)与批处理(脚本)除了在集群中的工人脚本运行指定由群集对象myCluster中.
j型=批次(myCluster中,脚本)
myCluster中
批处理(脚本)
j型=批次(FCN,N个,{x1,…,xn})运行功能FCN由默认的群集配置文件中指定的集群中的工人。该函数返回j型,一个手柄来运行该功能的作业对象。该功能与给定的参数进行评估,X1,...,XN,并返回N个输出参数。的函数文件FCN被复制到工人。(注:不包括.M文件扩展名与函数名参数)。
j型=批次(FCN,N个,{x1,…,xn})
FCN
N个
{x1,…,xn}
X1,...,XN
j型=批次(myCluster中,FCN,N个,{x1,…,xn})与批处理(fcn,N,{x1,…,xn})不同之处在于在群集中的一个工人的功能运行指定由集群对象myCluster中.
j型=批次(myCluster中,FCN,N个,{x1,…,xn})
批处理(fcn,N,{x1,…,xn})
j型=批次(___,名称、值)指定选项,修改作业的使用一个或多个名称 - 值对参数的行为。这些选项支持批量函数和脚本,万博1manbetx除非另有说明。使用此语法除了任何以前的语法输入参数的组合。
j型=批次(___,名称、值)
名称、值
全部收缩
采用批量卸载工作,在后台运行的MATLAB工人会话。您可以继续使用MATLAB计算时发生。
批量
使用批量功能。默认情况下,批量使用默认群集配置文件。在MATLAB上检查默认的集群配置文件家选项卡,在环境部分中,平行>选择默认群集.或者,您可以指定具有一个群集配置文件'轮廓'名称-值对参数。
'轮廓'
工作=批次('myScript的');
批量不会阻止MATLAB和计算时发生,您可以继续工作。
如果你想阻止MATLAB直到作业完成时,使用等待在工作对象上的功能。
等待
等待(作业);
默认情况下,MATLAB将批处理作业的命令窗口输出保存到作业的日记中。要检索它,请使用日记功能。
日记
日记(作业)
---开始日记---n=100---结束日记---
作业完成后,使用负载功能。
负载
加载(作业,“x”);绘图(x)
如果要加载的批处理作业的所有变量,使用负载函数没有参数。
当你获取所有所需的变量,删除作业对象清理其数据,避免消耗不必要的资源。
删除(作业);清除工作
请注意,如果使用批量,MATLAB所有的工作区变量转移到集群,即使你的脚本不使用它们。对于大的工作区中的数据传输时间可以是大量的。作为最佳实践,将您的脚本函数文件,以避免该通信开销。对于使用的功能的示例,请参见运行批处理作业并从工人访问文件.
对于更高级的选项批量,请参见运行批处理作业并从工人访问文件.
您可以使用您的卸载计算来运行在后台批量.如果你的代码需要访问的文件,您可以使用其他选项,如'附加文件'要么'AdditionalPaths',使数据访问。您可以关闭或MATLAB的同时继续工作的计算发生以后恢复的结果。
'附加文件'
'AdditionalPaths'
准备示例
使用以下命令准备并复制此示例的支持文件。万博1manbetx
prepare万博1manbetxSupportingFiles;
运行批处理作业
使用创建群集对象parcluster. 默认情况下,parcluster使用默认群集配置文件。在MATLAB上检查默认的集群配置文件家选项卡,在环境部分中,平行>选择默认群集.
parcluster
C = parcluster();
将代码放在函数中,并使用批量.对于自定义功能的一个例子,请参见支撑功能万博1manbetx我的功能.指定的输出参数的预期数量,并与输入的功能的单元阵列。
我的功能
如果您的代码使用并行池,请使用'游泳池'名称 - 值对参数创建您指定工人的数量并行池。批量使用一个额外的工人来运行函数本身。
'游泳池'
默认,批量改变了工人对MATLAB客户端的当前文件夹的初始工作目录。它可以控制的初始工作目录中的工人有用。例如,您可能要控制它,如果您的群集使用不同的文件系统,因此该路径是不同的,当你从Windows客户端计算机提交给Linux集群等。
要保留工人的初始工作目录并使用其默认值,请设置'当前文件夹'至'.'.
'当前文件夹'
'.'
要更改初始工作目录,请设置'当前文件夹'到你选择的文件夹。
此示例使用有三个工人平行池,并选择一个临时位置的初始工作目录。
作业=批次(C,@ myFunction的,1,{},...'游泳池',3,...'当前文件夹',TEMPDIR);
批量卸载在你的函数的计算的并行工作,这样你就可以继续在MATLAB工作时的计算发生。
如果要在作业完成之前阻止MATLAB,请使用等待在工作对象上的功能。
要检索的结果,使用获取输出在作业对象上。
获取输出
如果你的代码中有一个错误,那么获取输出抛出一个错误。您可以通过检查访问错误信息错误财产任务对象在工作。在这个例子中,该代码取决于工人无法找到的文件。
错误
任务
getReport(job.Tasks(1).Error)
mydata2.dat 'ANS =“使用无法读取文件myFunction的(第4行)错误'。没有相应的文件和目录。'
从工存取档案
默认,批量自动分析代码并将所需的文件传输给工人。在某些情况下,必须显式地传输这些文件——例如,在运行时确定文件名时。
在这个例子中,我的功能访问配套文件万博1manbetxMYDATA.DAT, 哪一个批量自动检测和传输。该功能还访问我的数据1.dat,但它解决了在运行时的文件名,所以自动依赖性分析没有检测到它。
MYDATA.DAT
我的数据1.dat
类型myFunction.m
函数X = myFunction的()A =负载( “MYDATA.DAT”);X =零(倒装(尺寸(A)));PARFOR I = 1:3 B =负载( “MYDATA” + I + “DAT”);X = X + A \ B;年底结束
如果数据是在一个位置,工人可以访问,则可以使用名称 - 值对参数'AdditionalPaths'到指定的位置。'附加路径“会将此路径工人的MATLAB搜索路径,使它们可见的数据。
'附加路径
pathToData = PWD;作业(2)=批次(C,@ myFunction的,1,{},...'游泳池',3,...'当前文件夹',TEMPDIR,...'AdditionalPaths',pathToData);等待(作业(2));
如果数据是在工人们不能访问的位置,您可以通过使用文件传输给工人'附加文件'名称-值对参数。
作业(3)=批次(C,@ myFunction的,1,{},...'游泳池',3,...'当前文件夹',TEMPDIR,...'附加文件',“MYDATA”+串(1:3)+“.dat”);
查找现有的工作
您可以作业提交后关闭MATLAB和检索结果以后。在您关闭MATLAB,请记下作业ID。
job3ID =作业(3).ID
job3ID = 19
当你再次打开MATLAB,你可以找到使用工作找工作功能。
找工作
作业(3)= findJob(C,'身份证',job3ID);等待(作业(3));
或者,您可以使用作业监视器来跟踪你的工作。您可以从MATLAB打开家选项卡,在环境部分中,平行>监视作业.
检索结果和清理数据
要检索批处理作业的结果,请使用获取输出功能。获取输出返回与功能运行的与所述输出单元阵列批量.
X = fetchOutputs(作业(3))
X =1×1单元阵列{40×207双}
当您检索到所有需要的输出,并且不需要作业对象了,删除它以清理其数据,避免消耗不必要的资源。
删除(作业)明确工作
MATLAB脚本由工人,指定为字符向量或字符串进行评价。
例:批次( 'aScript');
批次( 'aScript');
数据类型:烧焦|串
烧焦
串
parallel.Cluster
集群,指定为parallel.Cluster对象,表示群集计算资源。要创建对象,请使用parcluster功能。
例:cluster=parcluster;批处理(cluster,'aScript');
cluster=parcluster;批处理(cluster,'aScript');
数据类型:parallel.Cluster
功能到由工人,指定为功能句柄或功能名称进行评价。
例:批处理(@myFunction,1,{x,y});
批处理(@myFunction,1,{x,y});
数据类型:烧焦|串|功能手柄
功能手柄
从评价函数预期的输出数FCN,指定为一个非负整数。
数据类型:单|双|INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64
单
双
INT8
INT16
INT32
Int64的
UINT8
UINT16
UINT32
UINT64
输入函数的自变量FCN,指定为单元格数组。
数据类型:细胞
细胞
指定可选的逗号分隔对名称、值参数。名称是参数名和值是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N.
名称
值
名1,值1,...,NameN,值N
J =批次(@ myFunction的,1,{X,Y}, '池',3);
“工作区”
在工人只是脚本或函数之前的工作区被调用,指定为逗号分隔的一对组成的“工作区”和一个1×1的结构体。该结构的字段名定义变量的名称,以及字段值被分配到工作区的变量。默认情况下,这个参数有一个字段在当前工作区,每一个变量批量被处决。此参数仅支持运行脚本。万博1manbetx
例:workspace.myVar = 5;J =批次( 'aScript', '工作区',工作区);
workspace.myVar = 5;J =批次( 'aScript', '工作区',工作区);
数据类型:结构
结构
群集配置文件用于识别集群,指定为逗号分隔的一对组成的'轮廓'和字符向量或字符串。如果省略此选项,默认的配置文件来识别该集群,并应用到作业和任务属性。
例:J =批次( 'aScript', '个人资料', '本地');
J =批次( 'aScript', '个人资料', '本地');
要在脚本或函数执行之前添加到工作程序的MATLAB搜索路径的路径,指定为逗号分隔对,由'AdditionalPaths'和字符向量,字符串数组,或字符向量的单元阵列。
默认的搜索路径可能不会对工人一样,因为它是在客户端上;路径差异可能是不同的当前工作文件夹的结果(CWD)、平台或网络文件系统访问。指定'AdditionalPaths'名称-值对参数有助于确保工作人员在正确的位置查找文件,如代码文件、数据文件或模型文件。
CWD
您可以使用'AdditionalPaths'访问共享文件系统中的文件。请注意,路径表示可能因目标计算机而异。'AdditionalPaths'必须是群集中计算机看到的路径。例如,如果Z:\数据在您的本地Windows®机/网络/数据到你的Linux®簇,再加入后者以'AdditionalPaths'.如果你使用的数据存储,使用'备用系统根'而不是对付其他表示。欲了解更多信息,请参阅设置数据存储以在不同的计算机或群集上进行处理(MATLAB)。
Z:\数据
/网络/数据
'备用系统根'
注意附加路径只有在使用相对路径或文件名而不是绝对路径引用文件时,才有助于查找文件。
附加路径
例:j=批处理(@myFunction,1,{x,y},'AdditionalPaths','/network/data/');
j=批处理(@myFunction,1,{x,y},'AdditionalPaths','/network/data/');
数据类型:烧焦|串|细胞
文件或文件夹转移到工人,指定为逗号分隔的一对组成的'附加文件'和字符向量,字符串数组,或字符向量的单元阵列。
例:J =批次(@ myFunction的,1,{X,Y}, 'AttachedFiles', 'MYDATA.DAT');
J =批次(@ myFunction的,1,{X,Y}, 'AttachedFiles', 'MYDATA.DAT');
'AutoAddClientPath'
真正
假
标志添加的客户端的路径工人路径上用户添加的条目,指定为逗号分隔的一对组成的'AutoAddClientPath'以及一个逻辑值。
例:J =批次(@ myFunction的,1,{X,Y}, 'AutoAddClientPath',假);
J =批次(@ myFunction的,1,{X,Y}, 'AutoAddClientPath',假);
数据类型:符合逻辑的
符合逻辑的
'AutoAttachFiles'
标志来启用依赖性分析和自动附加代码文件到作业,指定为逗号分隔的一对组成的'AutoAttachFiles'以及一个逻辑值。如果将值设置为真正,批处理脚本或功能进行了分析和代码文件,这取决于被自动传送给工人。
例:J =批次(@ myFunction的,1,{X,Y}, 'AutoAttachFiles',TRUE);
J =批次(@ myFunction的,1,{X,Y}, 'AutoAttachFiles',TRUE);
执行脚本或函数的文件夹,指定为逗号分隔对,由'当前文件夹'和字符向量或字符串。有没有保证的工人存在此文件夹中。此属性的默认值是MATLAB时的当前目录批量命令被执行。如果参数是'.',有一批执行之前在文件夹中没有变化。
例:J =批次(@ myFunction的,1,{X,Y}, 'CurrentFolder', '');
J =批次(@ myFunction的,1,{X,Y}, 'CurrentFolder', '');
'CaptureDiary'
标志以收集来自函数调用的日记,指定为逗号分隔的一对组成的'CaptureDiary'以及一个逻辑值。有关收集的数据信息,请参见日记.
例:J =批次( 'aScript', 'CaptureDiary',假);
J =批次( 'aScript', 'CaptureDiary',假);
'环境变量'
要从客户端会话复制到工作进程的环境变量,指定为逗号分隔对,由'环境变量'和字符向量,字符串数组,或字符向量的单元阵列。此处指定的名称被附加到环境变量在适用的并行配置文件指定的属性,形成环境变量的完整列表。未设置列出的变量不会复制到工人。这些环境变量批处理作业期间的工人设置。
环境变量
例:J =批次( 'aScript', 'EnvironmentVariables', “MY_ENV_VAR”);
J =批次( 'aScript', 'EnvironmentVariables', “MY_ENV_VAR”);
0个
要生成并行池的工作线程数,指定为逗号分隔对,由'游泳池'并且:
的非负整数。
非负整数的A 2-元件载体,其被解释为范围。所得平行池的大小是尽可能大的范围内所需的。
此外,请注意批量使用另一工作人员来运行批处理作业本身。
该脚本或函数使用该池来执行语句,如帕弗和spmd公司这是一批代码中。由于池要求N个工人除了工人运行批处理,群集必须至少有N + 1可用的工人。你不需要并行池已运行到执行批量和那批创建是没有关系的,你可能已经打开池新池。欲了解更多信息,请参阅运行带有并行池批处理作业.
帕弗
spmd公司
N + 1
如果使用默认值,0个上只有一个工人,而不是并行池脚本或函数运行。
例:j=批处理(@myFunction,1,{x,y},'Pool',4);
j=批处理(@myFunction,1,{x,y},'Pool',4);
例:J =批次(@ myFunction的,1,{X,Y}, '池',[2,6]);
J =批次(@ myFunction的,1,{X,Y}, '池',[2,6]);
parallel.Job
工作运行该脚本或函数,返回为parallel.Job宾语。
例:J =批次( 'aScript');
J =批次( 'aScript');
数据类型:parallel.Job
要查看状态或跟踪批处理作业的进度,请使用作业监视器,如在作业监视器. 您还可以使用作业监视器检索在不同会话中创建的批处理作业的作业对象,或检索在不从中返回作业对象的情况下创建的批处理作业的作业对象批量打电话来。
删除不再需要的任何批处理作业,以避免不必要地消耗群集存储资源。
删除|日记|获取输出(作业)|找工作|负载|等待
删除
获取输出(作业)
已修改的版本。阿布里尔·埃斯塔·维森之前?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它运行的命令。Web浏览器不支持MATLAB的命令。万博1manbetx
选择一个网站,以获得翻译的内容,其中可看到当地的活动和优惠。根据您的位置,我们建议您选择:.
您还可以选择从下面的列表中的网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家/地区网站未针对您所在位置的访问进行优化。
请联系您当地的办事处