job new

更新时间: 2014年11月

应用到: Microsoft HPC Pack 2008, Microsoft HPC Pack 2008 R2, Microsoft HPC Pack 2012, Microsoft HPC Pack 2012 R2, Windows HPC Server 2008, Windows HPC Server 2008 R2

使用指定的设置在 HPC 群集上创建新作业。

有关如何使用此命令的示例,请参见示例

job new [/askednodes:<node_list>] [/corespernode:<min>[-<max>]] 
[/exclusive[:{true|false}]] [/failontaskfailure[:{true|false}]] 
[/jobfile:<path>\<file_name>] [/jobname:<job_name>] 
[/jobtemplate:<job_template_name>] [/license:<license_list>] 
[/memorypernode:<min>[-<max>]] [/nodegroup:<node_group_list>] 
{[/numcores:<min>[-<max>]] | [/numnodes:<min>[-<max>]] | 
[/numprocessors:<min>[-<max>]] | [/numsockets:<min>[-<max>]] }
[/orderby:<primary>[,<secondary>]] [/priority:<priority>] 
[/projectname:<name>] [/requestednodes:<node1_name>[,<node2_name>…]] 
[/Runtime:{<time>|Infinite} [/rununtilcanceled[:{true|false}]] 
[/scheduler:<name>] [{/?| /help}]


 

参数 说明

/askednodes:<node_list>

指定运行作业的节点的名称列表,格式为 <node1_name>[,<node2_name>…]。这些节点是作业的候选者,但如果这些节点上的可用资源超过了作业需要的资源,则并非所有这些节点都一定会运行此作业。HPC 作业计划程序服务根据 /orderby 参数的值依次分配节点,直到分配的节点达到 /numcores、/numsockets、/numprocessors 或 /numnodes 参数指定的值。

此参数已弃用;请使用 /requestednodes 参数。

/corespernode:<min>[-<max>]

指定节点可以拥有的最小和最大(可选)内核数,以便 HPC 作业计划程序服务判断是否可以选择该节点作为运行作业的候选节点。作业不会运行在内核数少于此参数指定的最小值或内核数大于此参数指定的最大值的节点上。如果群集中所有节点拥有的内核数均不在此参数指定的范围内,则提交作业时将发生错误。

/exclusive[:{true|false}]

指定 HPC 作业计划程序服务是否应当确保当此作业运行时没有其他作业与此作业在同一节点上运行。

  • 值 true 表示 HPC 作业计划程序服务应当确保当此作业运行时没有其他作业与此作业在同一节点上运行。

  • 值 false 表示此作业可与其他作业共享计算节点。

如果不为 /exclusive 参数指定值,则 job new 命令将像您指定了 true 值一样运行。如果不指定 /exclusive 参数,则 job new 命令将像您指定了 false 值一样运行。

/failontaskfailure[:{true|false}]

指定当作业中的任务失败时,HPC 作业计划程序服务是否应当立即停止作业并舍弃整个作业。

  • 值 true 表示当作业中的任务失败时,HPC 作业计划程序服务应当立即停止作业并舍弃整个作业。

  • 值 false 表示当作业中的任意任务失败之后,HPC 作业计划程序服务应当继续运行作业中的其余任务。

如果不为 /failontaskfailure 参数指定值,则 job new 命令将像您指定了 true 值一样运行。如果不指定 /failontaskfailure 参数,则 job new 命令将像您指定了 false 值一样运行。

/jobfile:<path>\<file_name>

指定一个作业 XML 文件的文件名和路径,该文件包含的设置可用于您要创建的作业。如果除了 /jobfile 参数外还指定了其他参数,则这些参数的值将覆盖作业 XML 文件中的设置。

/jobname:<job_name>

指定此作业在命令输出和用户界面中所用的名称。

作业名称的最大长度为 80 个字符。

/jobtemplate:<job_template_name>

指定将用于作业的作业模板的名称。

作业模板名称的最大长度为 80 个字符。

默认情况下,job new 命令将对新作业使用默认的作业模板。

/license:<license_list>

指定作业需要其许可证的功能的列表,以及每个功能所需的许可证数。此列表使用的格式为 <license_name1>:<number1> [,<license_name2>:<number2>…]。例如 License1:10,License2:20,License3:12。

列表的最大长度为 160 个字符。

/memorypernode:<min>[-<max>]

指定节点可以拥有的最小和最大(可选)内存容量(以 MB 为单位),以便 HPC 作业计划程序服务判断是否可以选择该节点作为运行作业的候选节点。作业不会运行在内存容量小于此参数指定的最小值或大于此参数指定的最大值的节点上。如果群集中所有节点拥有的内存容量均不在此参数指定的范围内,则提交作业时将发生错误。

/nodegroup:<node_group_list>

指定可以运行作业的节点组的列表,格式为 <node_group1_name>[,<node_group2_name>…]。HPC 作业计划程序服务只会从列表中所有节点组的节点向作业分配资源。

如果为 /nodegroups 和 /requestednodes 参数都指定了值,则作业仅运行在以下节点上:该节点包含在 /requestednodes 参数的节点列表中,又从属于 /nodegroups 参数的节点组列表中的所有节点组。

/numcores:<min>[-<max>]

指定作业在整个 HPC 群集内所需的内核总数,格式为 <minimum>[-<maximum>]。作业运行所需的内核数必须处于最小内核数到最大内核数之间。

  • 如果仅指定一个值,则此命令会将最大和最小内核数都设置为该值。

  • 如果指定的最小值超过了整个群集内可用的内核总数,则提交作业时将发生错误。

  • 最小和最大值只能是正整数或星号 (*)。如果将最小或最大值指定为星号,则 HPC 作业计划程序服务将在运行时根据作业中各个任务的最小和最大内核数自动计算作业的最小或最大内核数。

如果指定了 /numcores、/numprocessors 或 /numsockets 参数,则不能指定 /numnodes 参数。

/numnodes:<min>[-<max>]

指定作业在整个 HPC 群集内所需的节点总数,格式为 <minimum>[-<maximum>]。作业运行所需的节点数必须处于最小节点数到最大节点数之间。

  • 如果仅指定一个值,则此命令会将最大和最小节点数都设置为该值。

  • 如果指定的最小值超过了整个群集内可用的节点总数,则提交作业时将发生错误。

  • 最小和最大值只能是正整数或星号 (*)。如果将最小或最大值指定为星号,则 HPC 作业计划程序服务将在运行时根据作业中各个任务的最小和最大节点数自动计算作业的最小或最大节点数。

如果指定了 /numcores、/numprocessors 或 /numsockets 参数,则不能指定 /numnodes 参数。

/numprocessors:<min>[-<max>]

指定作业在整个 HPC 群集内所需的微处理器总数,格式为 <minimum>[-<maximum>]。作业运行所需的微处理器数必须处于最小微处理器数到最大微处理器数之间。

  • 如果仅指定一个值,则此命令会将最大和最小微处理器数都设置为该值。

  • 如果指定的最小值超过了整个群集内可用的微处理器总数,则提交作业时将发生错误。

  • 最小和最大值只能是正整数或星号 (*)。如果将最小或最大值指定为星号,则 HPC 作业计划程序服务将在运行时根据作业中各个任务的最小和最大微处理器数自动计算作业的最小或最大微处理器数。

如果指定了 /numnodes、/numcores 或 /numsockets 参数,则不能指定 /numprocessors 参数。

此参数已弃用;请使用 /numcores 参数。

/numsockets:<min>[-<max>]

指定作业在整个 HPC 群集内所需的套接字总数,格式为 <minimum>[-<maximum>]。作业运行所需的套接字数必须处于最小套接字数到最大套接字数之间。

  • 如果仅指定一个值,则此命令会将最大和最小套接字数都设置为该值。

  • 如果指定的最小值超过了整个群集内可用的套接字总数,则提交作业时将发生错误。

  • 最小和最大值只能是正整数或星号 (*)。如果将最小或最大值指定为星号,则 HPC 作业计划程序服务将在运行时根据作业中各个任务的最小和最大套接字数自动计算作业的最小或最大套接字数。

如果指定了 /numcores、/numprocessors 或 /numnodes 参数,则不能指定 /numsockets 参数。

/orderby:<primary>[,<secondary>]

指定 HPC 作业计划程序服务在将节点分配给作业时应当使用的顺序,格式为 <primary_order>[,<secondary_order>]。该值的 primary_order 和 secondary_order 部分可以分别是以下某个值:

  • memory   

    HPC 作业计划程序服务按节点可用的内存容量对节点排序,然后将作业首先分配给具有更多内存的节点。

  • -memory   

    HPC 作业计划程序服务按节点可用的内存容量对节点排序,然后将作业首先分配给具有更少内存的节点。

  • cores

    HPC 作业计划程序服务按节点可用的内核数对节点排序,然后将作业首先分配给具有更多内核的节点。

  • –cores

    HPC 作业计划程序服务按节点可用的内核数对节点排序,然后将作业首先分配给具有更少内核的节点。

指定次要顺序时,HPC 作业计划程序服务首先按照主要顺序对节点排序。对于按主要顺序排序时资源数量相同的节点子集,HPC 作业计划程序服务会使用次要排序顺序对子集中的节点排序。例如,如果指定 memory,-cores,则 HPC 作业计划程序服务会根据内存容量从最高到最低对节点排序。然后,对于有相同内存容量的节点子集,HPC 作业计划程序服务将使用内核数来决定顺序,即根据内核数从最少到最多对具有相同内存容量的节点排序。

  • 主要顺序和次要顺序必须是指不同类型的资源。例如,memory,-cores 是有效的主要和次要排序顺序组合。诸如 memory,-memory 和 -cores,-cores 这样的组合无效。

  • HPC 作业计划程序服务为作业分配节点的默认顺序是 cores,memory。

/priority:<priority>

指定计划作业的优先级。优先级可以是以下值之一:Highest、AboveNormal、Normal、BelowNormal 或 Lowest。作业使用的作业模板所指定的权限将影响谁能指定更高的优先级。

除非用户对作业重新排队,否则 HPC 作业计划程序服务会将具有相同优先级的作业按用户提交作业的顺序放到作业队列中。如果用户对作业重新排队,则 HPC 作业计划程序服务会将该作业放到具有相同优先级的作业的最前面。

作业的默认优先级为 Normal。

/projectname:<name>

指定可用于跟踪其他作业的作业项目名称。

项目名称的最大长度为 80 个字符。

/requestednodes:<node_list>

指定运行作业的节点的名称列表,格式为 <node1_name>[,<node2_name>…]。这些节点是作业的候选者,但如果这些节点上的可用资源超过了作业需要的资源,则并非所有这些节点都一定会运行此作业。HPC 作业计划程序服务根据 /orderby 参数的值依次分配节点,直到分配的节点达到 /numcores、/numsockets、/numprocessors 或 /numnodes 参数指定的值。

  • 如果不指定 /requestednodes 参数,则 HPC 作业计划程序服务会将所有节点视为可由 HPC 作业计划程序服务分配给作业的候选者。

  • 如果为 /requestednodes 和 /nodegroups 参数都指定了值,则作业仅运行在以下节点上:该节点包含在 /requestednodes 参数的节点列表中,又从属于 /nodegroups 参数的节点组列表中的所有节点组。

/runtime:{<time> | Infinite}

指定作业应当运行的最长时间。在作业运行此时间段之后,HPC 作业计划程序服务将取消该作业。指定时间长度时应该采用 [[<days>:]<hours>:]<minutes> 格式。还可以指定 Infinite,表示作业可以无限期运行。

  • 如果仅指定 [[<days>:]<hours>:]<minutes> 格式的一部分,则命令会将指定的值解释为分钟数。例如,12 表示 12 分钟。

  • 如果指定了格式的两部分,该命令会将左侧部分解释为小时,右侧部分解释为分钟。例如,10:30 表示 10 小时 30 分钟。

该格式的每个部分都可以是一位数或多位数。每部分的最大值是 2,147,483,647。如果不指定 /runtime 参数,则默认值是 Infinite。

/rununtilcanceled[:{true|false}]

指定作业是否继续运行并持有资源,直到运行时限制过期或者某人取消作业为止。

  • 值 true 表示作业将继续运行并持有资源,直到运行时限制过期或者某人取消作业为止。如果指定 true 值,则必须为 /numcores、/numnodes 或 /numsockets 参数指定最小和最大值,否则提交作业时将发生错误。

  • 值 false 表示当作业中的所有任务完成时,作业应停止并释放其资源。

  • 如果不为 /rununtilcanceled 参数指定值,则 job new 命令将像您指定了 true 值一样运行。如果不指定 /rununtilcanceled 参数,则 job new 命令将像您指定了 false 值一样运行。

/scheduler:<name>

指定要在其上创建新作业的群集的头节点的主机名或 IP 地址。该值必须是有效的计算机名称或 IP 地址。如果不指定 /scheduler 参数,则此命令使用头节点上由 CCP_SCHEDULER 环境变量指定的计划程序。

/?

显示此帮助信息。

/help

显示此帮助信息。

在 HPC 作业计划程序服务可以运行新作业之前,需要使用 job add 命令将任务添加到作业,并使用 job submit 命令提交作业。

若要创建新作业,请使用以下命令:

job new

若要使用 C:\JobFiles\SampleJob1.xml 作业文件中的设置创建新作业,请使用以下命令:

job new –jobfile:"C:\JobFiles\SampleJob1.xml"

若要在 Cluster Testing 项目中使用名为 MyJobTemplate 的作业模板创建名为 Sample Job 的新作业,且该作业的运行时间限制为 30 分钟,优先级为 AboveNormal,请使用以下命令:

job new –jobname:"Sample Job" –jobtemplate:MyJobTemplate 
-projectname:"Cluster Testing" –runtime:0:0:30 –priority:AboveNormal

显示: