LSF 詞彙和概念

瞭解使用 LSF時將提供協助的 LSF 基本術語和概念。

工作狀態

IBM® Spectrum LSF 工作具有數個狀態。

PEND
在佇列中等待排程及分派。
RUN
已分派給主機並在執行中。
DONE
以零結束值正常完成。
EXIT
已完成非零結束值。
PSUSP
工作擱置時已暫停。
USUSP
由使用者暫停。
SSUSP
LSF 系統暫停。
POST_DONE
後處理已完成,且沒有錯誤。
POST_ERR
後處理已完成,但發生錯誤。
UNKWN
mbatchd 常駐程式與工作執行所在主機上的 sbatchd 常駐程式失去聯絡。
WAIT
對於提交至區塊工作佇列的工作,這是等待執行之區塊工作的成員。
ZOMBI
如果工作在其狀態為 UNKWN (因為無法呼叫到執行主機) 時已結束,或者如果由於執行主機無法使用而重新執行可重新執行的工作已重新排入佇列,則工作處於 ZOMBI 狀態。
在下列情況下,工作可以處於 ZOMBI 狀態:
  • 處於 UNKWN 狀態的工作取得結束信號, LSF 會將工作變更為 ZOMBI 狀態。 例如,執行 bkill 指令以結束 (kill) 處於 UNKWN 狀態的工作,在執行主機無法使用時重新執行可重新執行的工作,或在 lsb.params 檔案中設定 REMOVE_HUNG_JOBS_FOR 參數時 mbatchd 常駐程式結束 (kill) UNKWN 工作。 (如需 REMOVE_HUNG_JOBS_FOR的詳細資料,請參閱 從 LSF 移除當掉工作 。)
  • 您可以強制從 LSF 中移除工作 (亦即,在執行中工作上執行 bkill -r 指令 ) , mbatchd 常駐程式會先將工作狀態變更為 ZOMBI 狀態,並將信號傳送至工作執行主機的 sbatchd 常駐程式。 在 sbatchd 順利結束工作處理程序之後,它會將回覆傳送回 mbatchd; 然後 mbatchd 可以將工作狀態從 ZOMBI 變更為 EXIT。 在一般情況下,此程序不會花費很長時間。

主機

LSF 主機是叢集中的個別電腦。

每一部主機可能有多個處理器。 多重處理器主機用來執行平行工作。 具有單一處理程序佇列的多處理器主機被視為單一機器。 每一個處理器都有自己的處理程序佇列的整箱處理器會被視為一組個別機器。

提示:

主機的名稱應該是唯一的。 它們不能與叢集名稱或為叢集定義的任何佇列相同。

工作

LSF 工作是在 LSF 系統中執行的工作單元。

工作是使用 bsub 指令提交給 LSF 執行的指令。 LSF 會根據已配置的原則來排程、控制及追蹤工作。

工作可以是複雜的問題、模擬情境、廣泛的計算,以及任何需要計算能力的項目。

工作檔案

將工作提交至佇列時, LSF 會將它保留在工作檔案中,直到執行條件正確為止。 然後,會使用工作檔案來執行工作。

在 UNIX 上,工作檔案是在執行時執行的 Bourne Shell Script。

在 Windows 上,工作檔案是在執行時處理的批次檔。

互動式批次工作

互動式批次工作是批次工作,可讓您與應用程式互動,並仍然利用 LSF 排程原則及容錯。

所有輸入及輸出都是透過您用來鍵入工作提交指令的終端機。

當您提交互動式工作時,當工作正在等待排程時,會顯示一則訊息。 在互動式工作完成或終止之前,無法提交新的工作。

互動式作業

互動式作業是指未提交至批次佇列且由 LSF排程,但立即分派的指令。

LSF 會尋找作業所需的資源,並從具有所需資源且負載較輕的候選主機中選擇最佳主機。 每一個指令可以是單一處理程序,也可以是一組協同作業處理程序。

執行作業時不使用 LSF 的批次處理特性,但仍具有資源需求及選取最佳主機的優點,可根據負載來執行作業。

本端作業

本端作業是應用程式或指令,沒有從遠端執行的意義。

例如, UNIX 上的 ls 指令。

遠端作業

遠端作業是可在叢集中另一部機器上執行的應用程式或指令。

主機類型和主機模型

LSF 中的主機以主機類型和主機型號為特徵。

下列範例是類型為 X86_64的主機,主機型號為 Opteron240、 Opteron840、 Intel_EM64T等。

主機類型

LSF 主機類型是作業系統與主機 CPU 架構的組合。

在相同電腦架構上執行相同作業系統的所有電腦都屬於相同類型。 這些主機彼此二進位相容。

每一個主機類型通常需要一組不同的 LSF 二進位檔。

主機模型

LSF 主機模型是電腦的主機類型,可判定在負載及放置計算中套用的 CPU 速度調整比例係數。

分派工作時,會考量 CPU 因素。

資源

LSF 資源是 LSF 系統資源中的物件, LSF 會使用追蹤工作需求,並根據工作在個別主機上的可用性來排定工作。

資源用量

LSF 系統使用內建及已配置的資源來追蹤資源可用性及使用情形。 根據個別主機上可用的資源來排定工作。

透過 LSF 系統提交的工作在執行時將具有它們所使用的受監視資源。 此資訊用於施行資源限制和負載臨界值以及公平共用排程。

LSF 會收集下列類型的資訊:

  • 工作中所有處理程序耗用的 CPU 時間總計
  • 工作中所有目前執行中處理程序的常駐記憶體用量總計 (KB)
  • 工作中所有目前執行中處理程序的虛擬記憶體用量總計 (KB)
  • 工作中目前作用中的處理程序群組 ID
  • 工作中目前作用中的處理程序

在 UNIX 及 Linux上,會透過 PIM 收集工作層次資源使用情形。

載入索引

負載指標會測量叢集中主機上動態、非共用資源的可用性。 內建在 LIM 中的負載指標會以固定時間間隔更新。

外部負載指標

LSF 管理者定義及配置,並由「外部載入資訊管理程式 (ELIM)」程式收集。 當收到新值時, ELIM 也會更新 LIM。

靜態資源

內建資源,代表在一段時間內不會變更的主機資訊,例如使用者處理程序可用的 RAM 上限或機器中的處理器數目。 大部分靜態資源由 LIM 在啟動時決定。

靜態資源可用來為基於二進位架構、相對 CPU 速度及系統配置的特定工作選取適當的主機。

負載臨界值

LSF 管理者可以配置兩種類型的負載臨界值,以排定佇列中的工作。 每一個負載臨界值指定負載指標值:

  • loadSched 負載臨界值決定分派擱置中工作的負載條件。 如果主機的負載超出任何已定義的 loadSched,則無法在主機上啟動工作。 此臨界值也用作回復已暫停工作的條件。
  • loadStop 負載臨界值決定何時可以暫停執行中工作。

若要在主機上排定工作,該主機上的負載層次必須同時滿足針對該主機所配置的臨界值,以及從中分派工作之佇列的臨界值。

負載指標的值可能會隨著負載而增加或減少,視特定負載指標的意義而定。 Therefore, when you compare the host load conditions with the threshold values, you need to use either greater than (>) or less than (<), depending on the load index.

執行時期資源使用限制

當工作正在執行時,限制資源的使用。 會發出耗用超過指定資源數量的工作信號。

硬性及軟性限制

在佇列層次指定的資源限制是硬性限制,而在工作提交中指定的限制是軟性限制。

資源配置限制

針對要啟動的不同工作類別,限制在工作排程期間必須可用的資源數量,以及限制適用的資源消費者。 如果已耗用所有資源,則在釋放部分資源之前,無法再啟動其他工作。

資源需求 (bsub -R 指令選項)

bsub -R 選項指定工作的資源需求。 資源需求限制可以執行工作的主機。 符合資源需求的主機是候選主機。 當 LSF 排定工作時,它會收集所有候選主機的負載指標值,並將它們與排程條件進行比較。 只有在所有負載值都在排程臨界值內時,才會將工作分派給主機。