共用方式為


job new

在 HPC 叢集上建立具有指定設定的新作業。

如需如何使用此指令的範例,請參閱 範例

語法

job new [/askednodes:<node_list>] [/corespernode:<min>[-<max>]]   
[/customproperties:<property_list>]   
[/emailaddress:<address>] [/estimatedprocessmemory:<memory>)] [/exclusive[:{true|false}]]   
[/faildependenttasks[:{true|false}]] [/failontaskfailure[:{true|false}]]   
[/holduntil:[{<DateTime>|<minutes>}]] [/jobenv:<variable_and_value_list>]   
[/jobfile:<path>\<file_name>] [/jobname:<job_name>]   
[/jobtemplate:<job_template_name>] [/license:<license_list>]   
[/memorypernode:<min>[-<max>]] [/nodegroup:<node_group_list>]   
[/nodegroupop:{Intersect|Uniform|Union}] [/notifyoncompletion[:{true|false}]]   
[/notifyonstart[:{true|false}]]{[/numcores:<min>[-<max>]]   
| [/numnodes:<min>[-<max>]] | [/numprocessors:<min>[-<max>]]   
| [/numsockets:<min>[-<max>]]} [/orderby:<primary>[,<secondary>]]   
[/progress:<percent_progress>] [/parentjobids:<jobID_list>]   
[/priority:<priority_specification>][/progress:progress]   
[/progressmsg:<message>] [/priority:<priority>]   
[/projectname:<name>] [/requestednodes:<node1_name>[,<node2_name>…]]   
[/Runtime:{<time>|Infinite} [/rununtilcanceled[:{true|false}]]   
[/scheduler:<name>] [/singlenode:{true|false}]   
[/taskexecutionfailureretrylimit:<retry_limit>]   
[/validexitcodes:int|intStart..intEnd[,int|intStart..intEnd]*]   
  
job new {/? | /help}  

參數

參數 描述
/askednodes:<node_list> 已取代。 請改用 /requestednodes 參數。
/corespernode:<分鐘>[-<max>] 指定節點可讓 HPC 作業排程器服務將節點視為執行作業的候選節點,可選擇性地指定節點數目上限和數目上限。 作業不會在節點上執行,其核心數目會比此參數指定的最大值少,或核心數還多。 如果叢集中的所有節點都有數個核心超出您為此參數指定的範圍,當您提交作業時就會發生錯誤。 此參數的預設值如下:

1. 分鐘: 1
2. max:2147483647 (最大整數值)
/customproperties:<property_list> 以 <name1>=<value1>[;<name2>=<value2>...] 格式指定作業的自定義屬性名稱和值。自定義屬性名稱不區分大小寫,且會反映第一次定義時所使用的大小寫。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/emailaddress:<位址> 傳送此作業的通知至此電子郵件位址。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/estimatedprocessmemory:<記憶體 >) 此作業中每個進程估計耗用的記憶體數量上限,以 MB 為單位。
/exclusive[:{true|false}] 指定 HPC 作業排程器服務是否應該確保此作業執行時,不會在與這個作業相同的節點上執行其他作業。

True 值表示 HPC 作業排程器服務應該確保此作業執行時,不會在與此作業相同的節點上執行其他作業。

False 值表示此作業可以與其他作業共用計算節點。

當您指定不含值的 /exclusive 參數時,作業 new 命令的行為就如同您指定了 True 的值一樣。 如果您未指定 /exclusive 參數,作業 new 命令的行為就如同您指定了 False 值一樣。
/faildependenttasks[:{true|false}] 如果工作失敗或取消,則所有相依工作都會失敗。 如果未設定此參數,則預設行為為 false。

如果定義 /faildependenttasks 但未宣告任何值,則會假設為 true。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/failontahpailure[:{true|false}] 指定 HPC 作業排程器服務是否應該在作業失敗時立即停止作業,並立即失敗整個作業。

True 值表示 HPC 作業排程器服務應該停止作業,並在作業中的工作失敗時立即失敗整個作業。

False 值表示 HPC 作業排程器服務應該在作業中的任何工作失敗之後繼續執行作業中的其餘工作。

當您在沒有值的情況下指定 /failontaailure 參數時,作業 new 命令的行為就像您指定了 True 的值一樣。 如果您未指定 /failonta 參數,作業 new 命令的行為就如同您指定了 False 值一樣。
/holduntil:[{<DateTime>|<分鐘>}] 指定本機時間的日期和時間,或 HPC 作業排程器服務在嘗試啟動作業之前應該等候的分鐘數。 如果未設定此參數,作業可以在資源可用時啟動。

HPC 作業排程器服務只會在此參數指定的日期和時間執行作業,以指定作業所需的資源是否可用。 如果該日期和時間無法使用作業所需的資源,作業會維持佇列,直到必要的資源可供使用為止。

您可以使用 .NET Framework 可剖析目前作業系統文化特性的任何格式來指定日期和時間。 如需 .NET Framework 如何剖析日期和時間字串串的資訊,請參閱 剖析日期和時間字串

只要作業未執行或完成,您就可以為作業指定 /holduntil 參數。 注意: 使用 /holduntil 指定的時間會在內部轉換為 UTC,而且不會反映本機日光節約時間。 如果使用分鐘值,它必須是整數。 套用作業新 時,保留的分鐘數會轉換成UTC。 如果 /holduntil 的值是空的,則作業不會因為該參數而擱置中。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/jobenv:<variable_and_value_list> 指定要在作業運行時間環境中設定的環境變數,以及您要設定這些環境變數的值。 清單的格式應該是 <variable_name1>=<value1> [;<variable_name2>=<value2>...]。

或者,您可以藉由包含多個 /jobenv 參數來設定多個環境變數,每個參數都有不同的自變數,其格式為 <variable_name>=<值>。

若要取消設定環境變數,請勿指定值。 例如,“<variable_to_unset_name>=”。

如果您為作業設定或取消設定環境變數,除非您使用 作業的 /env 參數來指定新的設定,以覆寫工作的該環境變數設定,否則該環境變數也會針對作業中的每個工作設定設定或取消設定。 注意: 此參數是在 HPC Pack 2008 R2 中引進,舊版不支援。
/jobfile:<路徑>\<file_name> 指定作業 XML 檔案的檔名和路徑,其中包含要用於您要建立之作業的設定。 如果您除了 /jobfile 參數之外指定其他參數,這些參數的值會覆寫作業 XML 檔案中的設定。

只有在從 XML 檔案匯入作業時,才會使用此參數。 在此情況下,這是必要專案。
/jobname:<job_name> 指定要在命令輸出和使用者介面中用於此作業的名稱。

作業名稱的最大長度為80個字元。
/jobtemplate:<job_template_name> 指定要用於作業的作業範本名稱。

作業範本名稱的最大長度為80個字元。

根據預設,作業 new 命令會使用新作業的預設作業範本。
/license:<license_list> 指定作業需要授權的功能清單,以及每個作業所需的授權數目。 使用 <license_name1>格式:<number1> [,<license_name2>:<number2>...] 此清單的 。 例如,License1:10,License2:20,License3:12。

清單的長度上限為 160 個字元。
/memorypernode:<min>[-<max>] 指定 HPC 作業排程器服務可以擁有的最小記憶體數量,以及選擇性地將節點視為執行作業的候選節點。 作業不會在記憶體小於最小值或記憶體大於此參數所指定最大值的節點上執行。 如果叢集中的所有節點都有超出您為此參數指定範圍的記憶體數量,當您提交作業時就會發生錯誤。

此參數的預設值如下:

1. <分鐘> 1
2. <最大> 2147483647 (最大整數值)
/nodegroup:<node_group_list> 指定此作業可以執行格式 <node_group1_name>為 [,<node_group2_name>...] 格式的節點群組清單。 HPC 作業排程器服務會根據預設,將資源從屬於清單中所有節點群組的節點配置給作業,或從群組清單中 /nodegroupop 參數作業所產生的節點配置資源。

如果您指定 /nodegroups/requestednodes 參數的值,則作業只會在 /requestednodes 節點清單中的節點上執行,這些節點也屬於以 /nodegroupgroup/nodegroupop 參數定義的節點列表。

/nodegroup 參數可確保有效節點清單中有節點。 不過,如果無法從節點清單中符合上述參數的作業資源需求,作業在作業提交期間將會失敗。

如果您為工作指定參數 /requestednodes,且作業 /nodegroups,如果要求的節點未與 /nodegroup/nodegroupop 參數一起列出的節點,則作業會在提交期間失敗。
/nodegroupop:{Intersect|Uniform|Union} 指定 /nodegroup 參數所指定清單的運算符。 有效值為:

交集 - 建立所有列出的節點群組中的節點清單。

統一 - 讓 HPC 作業排程器服務依序嘗試節點群組。 如果第一個節點群組內有足夠的資源,則會使用它們。 如果沒有,排程器會嘗試下列每個節點群組,直到找到具有足夠資源的節點群組為止。 如果找不到足夠的資源,作業會維持佇列。

聯集 - 建立任何節點群組中的節點清單。

此參數的預設值為 Intersect。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/notifyoncompletion[:{true|false}] 指定 HPC 作業排程器服務何時應該在作業結束時傳送電子郵件通知。

True 值表示 HPC 作業排程器服務應該在作業結束時傳送電子郵件通知。

False 值表示 HPC 作業排程器服務不應該在作業結束時傳送電子郵件通知。

當作業的狀態變更為 [已完成]、[失敗] 或 [已取消] 時,就會傳送作業結束和通知。

叢集管理員必須先設定 HPC 叢集的通知,才能收到有關作業的通知。

當您指定不含值的 /notifyoncompletion 參數時,作業 new 命令的行為就如同您指定了 True 值一樣。 如果您未指定 /notifyoncompletion 參數,作業 new 命令的行為就如同您指定了 False 值一樣。

此參數是在 HPC Pack 2008 R2 中引進,舊版不支援。
/notifyonstart[:{true|false}] 指定 HPC 作業排程器服務何時應該在作業啟動時傳送電子郵件通知。

True 值表示 HPC 作業排程器服務應該在作業啟動時傳送電子郵件通知。

False 值表示 HPC 作業排程器服務不應該在作業啟動時傳送電子郵件通知。

叢集管理員必須先設定 HPC 叢集的通知,才能收到有關作業的通知。

當您指定不含值的 /notifyonstart 參數時,作業 new 命令的行為就如同您指定了 True 值一樣。 如果您未指定 /notifyonstart 參數,作業 new 命令的行為就如同您指定了 False 值一樣。 注意: 這個參數是在 HPC Pack 2008 R2 中引進,舊版不支援。
/numcores:<min>[-<max>] 指定作業在 HPC 叢集上所需的核心總數,<最低>[-<最大>]。 作業至少會在核心數目下限上執行,且不超過最大值。

如果您只指定一個值,此命令會將核心數目上限和最小值設定為該值。

如果您指定的最小值超過整個叢集可用的核心總數,當您提交作業時就會發生錯誤。

最小值和最大值只能是正整數或星號 。。 如果您將最小值或最大值指定為星號,HPC 作業排程器服務會根據作業中工作的最小和最大核心數目,自動計算運行時間的核心數目下限或上限。

如果您也指定 /numnodes/numprocessors/numsockets 參數,則您無法指定 /numcores 參數 。 如果您未指定這四個參數中的任何一個,則作業的資源類型預設為核心,而且運行時間會自動計算最小和最大資源,以作業中工作的最小和最大資源為基礎。
/numnodes:<min>[-<max>] 指定作業在 HPC 叢集上所需的節點總數,<最低>[-<最大>]。 作業至少會在節點數目下限上執行,且不超過最大值。

如果您只指定一個值,此命令會將節點數目上限和最小值設定為該值。

如果您指定超過叢集可用節點總數的最小值,當您提交作業時就會發生錯誤。

最小值和最大值只能是正整數或星號 。。 如果您將最小值或最大值指定為星號,HPC 作業排程器服務會根據作業中工作的節點數目下限和上限,自動計算運行時間的最小或最大節點數目。

如果您也指定 /numcores/numprocessors/numsockets 參數,則您無法指定 /numnodes 參數。 如果您未指定這四個參數中的任何一個,則作業的資源類型預設為核心,而且運行時間會自動計算最小和最大資源,以作業中工作的最小和最大資源為基礎。
/numprocessors:<min>[-<max>] 已取代。 請改用 /numcores 參數。
/numsockets:<min>[-<max>] 指定作業在 HPC 叢集上所需的套接字總數,<最低>[-<最大>]。 作業至少會在套接字數目下限上執行,且不超過最大值。

如果您只指定一個值,此命令會將套接字的最大值和最小值設定為該值。

如果您指定的最小值超過整個叢集可用的套接字總數,當您提交作業時就會發生錯誤。

最小值和最大值只能是正整數或星號 。。 如果您將最小值或最大值指定為星號,HPC 作業排程器服務會根據作業中工作的套接字數目下限和上限,自動計算運行時間的套接字數目下限或上限。

如果您同時 指定 /numcores/numprocessors/numnodes 參數,則您無法指定 /numsockets 參數。 如果您未指定這四個參數中的任何一個,則作業的資源類型預設為核心,且最小和最大資源會在運行時間自動計算,以作業中工作的最小和最大資源為基礎。
/orderby:<主要>[,<次要>] 指定 HPC 作業排程器服務應該使用的順序,將節點配置給作業,格式為 <primary_order>[,<secondary_order>]。 值的primary_order和secondary_order部分可以是下列其中一個值:

- 記憶體
HPC 作業排程器服務會依可用的記憶體數量來排序節點,並先將作業配置給具有更多記憶體的節點。
- -memory
HPC 作業排程器服務會依可用的記憶體數量來排序節點,並將作業配置給記憶體較少的節點。
- 核心
HPC 作業排程器服務會依可用的核心數目來排序節點,並先將作業配置給具有更多核心的節點。
- –cores
HPC 作業排程器服務會依可用的核心數目來排序節點,並先將作業配置給具有較少核心的節點。

當您指定次要順序時,HPC 作業排程器服務會先根據主要順序排序節點。 對於具有相同主要順序所指定資源數量的節點子集,HPC 作業排程器服務接著會使用次要排序順序來排序子集內的節點。 例如,如果您指定 記憶體核心,HPC 作業排程器服務會將節點從最高內存量排序為最低。 然後,針對具有相同記憶體數量的節點子集,HPC 作業排程器服務會使用核心數目來中斷系結,並將具有相同記憶體數量的節點從最少的核心數目排序為最多。

主要順序和次要順序必須參考不同類型的資源。 例如,記憶體核心 是主要和次要排序順序的有效組合。 記憶體-memory核心等組合無效。

HPC 作業排程器服務用來將節點設定給作業的預設順序是 核心記憶體
/parentjobids:<jobID_list> 指定作業將以 <jobID1>[,<jobID2>...] 的格式指定作業識別子清單。

作業標識碼必須已經存在。

HPC 作業排程器服務只有在其父工作已完成且全都處於已完成狀態時,才會排程作業。 如果任何父作業尚未完成或已完成,但處於已取消或失敗狀態,作業會維持佇列。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/priority:<優先順序> 指定排程作業的優先順序。 從 HPC Pack 2008 開始,優先順序值只能是下列其中一個具名值:Highest、AboveNormal、Normal、BelowNormal 或 Lowest。

從 HPC Pack 2008 R2 開始,您可以使用您在 HPC Pack 2008 中使用的五個具名優先順序值中的任何一個。 您也可以使用介於 0 到 4000 之間的任何數位,0 作為最低優先順序,4000 為最高。 您也可以將優先權值指定為 named_value+位移named_value-位移。 為了達到這些最終格式的目的,具名優先順序具有下表中的值,而具名值和位移的組合不能小於 0 或大於 4000 4000

最高-
4000

AboveNormal
- 3000

一般
- 2000

BelowNormal -
1000

最低
- 0

作業所使用的作業範本會指定影響誰可以指定提高優先順序的許可權。

HPC 作業排程器服務會依照使用者提交作業的順序,將具有相同優先權的工作放入作業佇列中,除非使用者重新排入作業佇列。 如果使用者重新排入工作佇列,HPC 作業排程器服務會將該作業放在具有相同優先權的作業中。

作業的預設優先順序為 Normal 或 2000。
/progress:<percent_progress> 指定完成之作業的百分比。 此值必須介於 0100之間。

如果您未設定這個屬性的值,HPC 作業排程器服務會根據作業完成的工作百分比計算進度。 當您為作業設定這個屬性時,HPC 作業排程器服務不會繼續更新此屬性,因此您必須使用 作業修改 命令繼續更新屬性。 注意: 此參數是在 HPC Pack 2008 R2 中引進,舊版不支援。
/progressmsg:<訊息> 指定您要針對作業顯示的自訂狀態訊息。 此字串的最大長度為80個字元。

若要指定包含空格的狀態消息,請以引弧括住狀態消息()。 注意: 此參數是在 HPC Pack 2008 R2 中引進,舊版不支援。
/projectname:<名稱> 指定可用於追蹤作業之作業的項目名稱。

項目名稱的最大長度為80個字元。
/requestednodes:<node_list> 指定作業可以執行格式 <node1_name>為 [,<node2_name>...] 格式的節點名稱清單。 這些節點是作業的候選專案,但如果這些節點上的可用資源超過作業所需的資源,則並非所有節點都會執行作業。 HPC 作業排程器服務會根據 /orderby 參數的值來配置頂端節點,直到配置節點符合您使用 /numcores/numsockets/numprocessors/numnodes 參數所指定的值為止。

如果您未指定 /requestednodes 參數,HPC 作業排程器服務會將所有節點視為 HPC 作業排程器服務可配置給作業的候選專案。

如果您為 /requestednodes/nodegroups 參數指定值,則作業只會在 /requestednodes 參數的節點清單中執行,而該節點也屬於以 /nodegroupgroup/nodegroupop 参數定義的節點列表。
/runtime:{<time> |Infinite} 指定作業應該執行的時間上限。 在作業執行此時間之後,HPC 作業排程器服務會取消作業。 您可以使用 [[<天>:]<小時>:]<分鐘>格式指定時間量。 您也可以指定 Infinite,指出作業可以無限時間執行。

如果您只指定 [[<天>:]<小時>:]<分鐘> 格式,命令會將指定的值解譯為分鐘數。 例如,12 表示 12 分鐘。

如果您指定格式的兩個部分,命令會將左邊部分解譯為小時,並將右邊部分解譯為分鐘數。 例如,10:30 表示 10 小時 30 分鐘。

您可以針對格式的每個部分使用一或多個數位。 每個元件的最大值為 2,147,483,647。 如果您未指定 /runtime 參數,預設值為 Infinite。
/rununtilcanceled[:{true|false}] 指定作業是否繼續執行並保留資源,直到運行時間限制到期或有人取消作業為止。

True 值表示作業會繼續執行並保留資源,直到運行時間限制到期或有人取消作業為止。 如果您指定 True 的值,則必須指定 /numcores/numnodes/numsockets 參數,或提交作業時發生錯誤。

False 值表示當作業中的所有工作都完成時,作業應該停止並釋放其資源。

當您指定不含值的 /rununtilcanceled 參數時,作業 new 命令的行為就如同您指定 True 的值一樣。 如果您未指定 /rununtilcanceled 參數,作業 new 命令的行為就如同您指定了 False 值一樣。
/scheduler:<名稱> 針對您要建立新作業的叢集,指定前端節點的主機名或IP位址。 此值必須是有效的計算機名稱或IP位址。 如果您未指定 /scheduler 參數,此命令會使用CCP_SCHEDULER環境變數所指定前端節點上的排程器。
/singlenode[:{true|false}] 所有資源都會配置在一個節點上。 如果宣告 /singlenode 但未設定任何值,則會假設為 True。 如果未宣告 /singlenode,則會假設 false。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/taskexecutionfailureretrylimit:<retry_limit> 指定此作業中工作在發生應用程式執行失敗之後,將會自動重新排入佇列的節點準備或節點發行工作以外的工作次數上限。 注意: HPC Pack 2012 R2 Update 1 中引進此參數。 在舊版中無法使用。
/validexitcodes:{int|intStart..intEnd{ [,{int|intStart..intEnd}]* 指定要用來檢查作業中工作是否順利結束的結束代碼。 /validexitcodes 必須由以逗號分隔的離散整數和整數範圍指定。 此參數的預設值為 0。

最小值最大 可用於範圍,代表開始或結束。 例如,0..max 代表非負整數。

宣告工作特定的 /validexitcodes /validexitcodes,即可覆寫此參數。 未明確宣告此參數的所有工作都會從作業繼承 參數。

如果未定義 /validexitcodes,則 0 是預設有效的結束代碼。 注意: 這個參數是在 HPC Pack 2012 中引進,舊版不支援。
/? 在命令提示字元中顯示說明。
/help 在命令提示字元中顯示說明。

備註

在 HPC 作業排程器服務可以執行新作業之前,您必須使用 job add 命令將工作新增至作業,並使用 job submit 命令提交作業。

範例

若要建立新的作業,請使用下列命令:

job new  

若要使用位於 C:\JobFiles\SampleJob1.xml之作業檔案中的設定來建立新作業,請使用下列命令:

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

若要在叢集測試專案中建立名為 Sample Job 的新作業,其使用名為 MyJobTemplate 的作業範本,且運行時間限制為 30 分鐘且優先順序為 AboveNormal,請使用下列命令:

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

若要建立優先順序為 2350 的新作業,將 VAR1 環境變數設定為 True,並將作業運行時間環境中的 VAR2 環境變數設定為 12,請使用下列命令:

job new /priority:2350 /jobenv:VAR1=true;VAR2=12  

若要建立優先順序為 Highest-50 (3950) 的新作業,該作業會取消設定 VAR3 環境變數,並將作業運行時間環境中的 VAR4 環境變數設定為 [是],請使用下列命令:

job new /priority:Highest-50 /jobenv:VAR3=;VAR4=yes  

若要建立工作進度百分比設定為 15 且狀態消息為「此作業的狀態」的新作業,而且也會在作業的運行時間環境中將 VAR5 和 VAR6 環境變數設定為 [否],請使用下列命令:

job new /jobenv:VAR5=no /jobenv:VAR6=no /progress:15 /progressmsg:"This job has a status"  

若要建立新的作業,請將工作新增至作業,然後提交作業,請執行包含下列命令的批處理檔,它會使用 for 命令來取得新作業的標識碼:

for /f "usebackq tokens=4 delims=. " %%i in (`job new`) do (  
job add %%i echo Hello World  
job submit /id:%%i  
)  

其他參考