主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

createJob

在集群上创建独立作业

    说明

    job = createJob(myCluster) 在所标识的集群上创建一个独立作业,并在客户端上创建一个独立作业对象。

    作业的数据存储在集群的 JobStorageLocation 属性指定的位置。

    示例

    job = createJob(myCluster,Name,Value) 还指定 Profile 或在创建作业时使用一个或多个可选的名称-值参量设置独立作业属性。有关有效属性的列表,请参阅 parallel.Job 对象参考页。

    当您指定 Profile 和其他属性时,您在这些属性名称-值对中指定的值可以覆盖配置文件中的值。

    示例

    示例

    全部折叠

    在集群上创建并运行作业。

    使用默认配置文件创建一个独立的作业对象。

    c = parcluster;
    j = createJob(c);

    向作业添加任务。

    for i = 1:10
        createTask(j,@rand,1,{10});
    end

    运行作业。

    submit(j);

    等待作业完成,并检索作业结果。

    wait(j);
    out = fetchOutputs(j);

    显示从第三个任务返回的随机矩阵。

    disp(out{3})
        0.9730    0.1454    0.7662    0.9601    0.0836    0.9843    0.2656    0.8780    0.1748    0.2112
        0.7104    0.6426    0.9654    0.9145    0.6432    0.4296    0.4141    0.6507    0.7349    0.9729
        0.3614    0.3250    0.9843    0.8676    0.5964    0.1125    0.1687    0.2207    0.8327    0.7751
        0.2934    0.8229    0.9601    0.1388    0.8854    0.5494    0.1708    0.6235    0.0617    0.1119
        0.1558    0.8728    0.1856    0.2842    0.8472    0.5912    0.8205    0.3761    0.1292    0.8711
        0.3421    0.2005    0.9495    0.4687    0.8467    0.1968    0.7528    0.0899    0.8172    0.3892
        0.6071    0.9987    0.2639    0.0828    0.7554    0.7506    0.6331    0.0035    0.8602    0.4818
        0.5349    0.8446    0.1578    0.1702    0.6472    0.0087    0.8810    0.3619    0.6499    0.8299
        0.4118    0.9079    0.4784    0.5140    0.5163    0.5712    0.1639    0.7487    0.6486    0.7195
        0.1020    0.0982    0.2994    0.2809    0.4726    0.4986    0.3940    0.0096    0.3214    0.6705
    

    删除作业。

    delete(j);

    创建一个独立的作业并附加除默认配置文件中指定的文件之外的文件。

    c = parcluster;
    j = createJob(c,'AttachedFiles',...
            {'myapp/folderA','myapp/folderB','myapp/file1.m'});

    输入参数

    全部折叠

    集群,指定为代表集群计算资源的 parallel.Cluster 对象。要创建 parallel.Cluster 对象,请使用 parcluster 函数。

    示例: myCluster = parcluster; job = createJob(myCluster);

    数据类型: parallel.Cluster

    名称-值参数

    全部展开

    将可选参量对指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是相应的值。名称-值参量必须出现在其他参量之后,但对的顺序并不重要。

    在 R2021a 之前,使用逗号分隔每个名称和值,并将 Name 括在引号中。

    示例: job = createJob(myCluster, 'AdditionalPaths',["/additional/path1","/additional/path2"])myCluster 代表的集群上创建一个独立作业,并将 path1path2 文件夹添加到所有工作单元 MATLAB® 搜索路径中。

    标准名称-值参量

    全部展开

    具有要应用于作业对象的属性值的集群配置文件,指定为以逗号分隔的对,由 'Profile' 和配置文件名称(字符向量或字符串)组成。如果您未指定配置文件,并且集群在其 'Profile' 属性中指定了值,则 MATLAB 会自动应用该集群的配置文件。有关定义和应用配置文件的更多详细信息,请参阅 发现集群并使用集群配置文件

    示例: createJob(myCluster,'Profile',"myProfileName")

    数据类型: char | string

    属性名称-值参量

    全部展开

    要添加到执行作业的工作单元的 MATLAB 搜索路径的路径,指定为字符向量、字符串、字符串数组或字符向量元胞数组。

    如果客户端和工作单元到同一个文件夹的路径不同,则必须使用工作单元上的路径指定该文件夹。例如,如果文件夹的路径在客户端上为 /shared/data,而在工作单元上为 /organization/shared/data,则指定 "/organization/shared/data"

    如果指定相对路径(如 "../myFolder"、MATLAB),则将解析相对于工作单元当前工作目录的路径。

    示例: "AdditionalPaths",["/path/to/folder1","path/to/folder2"]

    数据类型: char | string | cell

    要附加到作业对象的文件和文件夹,指定为字符向量、字符串、字符串数组或字符向量元胞数组。此参量使已识别的文件和文件夹可供执行作业任务的工作单元使用。

    如果您指定 Profile 属性,并且配置文件或 myCluster 配置文件已经具有 AttachedFiles 属性的值,则 MATLAB 会将您在此处指定的文件和文件夹附加到现有的 AttachedFiles 值。

    示例: "AttachedFiles", {'data_set.m','folder_for_workers'}

    数据类型: char | string | cell

    注意

    此处列出的属性仅仅是一个子集。有关有效属性的完整列表,请参阅 parallel.Job 对象参考页。

    提示

    • 为了开发和测试您的代码,您可以在客户端计算机上的本地集群上运行批处理作业。如果您关闭 MATLAB 会话,任何使用本地集群的批处理作业也会立即停止。

    • 当您将工作卸载到远程集群时,您可以在作业处理时关闭 MATLAB 客户端会话,然后稍后从批处理作业中或在新的客户端会话中检索信息。

    • 当您将计算任务卸载到工作单元时,客户端进行计算所需的任何文件也必须在工作单元上可用。默认情况下,客户端会尝试检测并附加这些文件。要关闭自动检测,请将 AutoAttachFiles 属性设置为 false。如果软件无法找到所有文件,或者从客户端向工作单元发送文件的速度很慢,请使用以下选项之一。

      • 如果文件位于工作单元无法访问的文件夹中,请设置 AttachedFiles 属性。集群将您指定的每个文件从客户端复制到工作单元。

      • 如果文件位于工作单元可访问的文件夹中,则可以设置 AdditionalPaths 属性。使用 AdditionalPaths 属性将路径添加到每个工作单元的 MATLAB 搜索路径,并避免不必要地从客户端复制到工作单元。

    版本历史记录

    在 R2006a 之前推出