2
說我有一個10 slotsn 我已經申請一個用戶限制到該主機如下主機: SLOT = 5 JOB = 3主機可用性用於與限制考慮用戶
是否有一個命令,以找到該主機是否可以從該用戶運行更多作業? 或者,是否有命令來查找所述主機是否對於所述用戶關閉。
在此先感謝!
說我有一個10 slotsn 我已經申請一個用戶限制到該主機如下主機: SLOT = 5 JOB = 3主機可用性用於與限制考慮用戶
是否有一個命令,以找到該主機是否可以從該用戶運行更多作業? 或者,是否有命令來查找所述主機是否對於所述用戶關閉。
在此先感謝!
以你的你的極限的描述,我想它的定義看起來是這樣的:
Begin Limit
NAME = L1
USERS = user1
SLOTS = 5
JOBS = 3
HOSTS = hostA
End Limit
如果我再提交3個項目爲USER1,我可以運行blimits -u user1
,看是否有強加任何限制user1或blimits -m hostA
查看是否有與hostA相關的任何限制。我還可以結合這些過濾器,看看是否有強加給用戶1 hostA上的所有相關限制:
$ blimits -u user1 -m hostA
INTERNAL RESOURCE LIMITS:
NAME USERS QUEUES HOSTS PROJECTS SLOTS MEM TMP SWP JOBS
L1 user1 - hostA - 3/5 - - - 3/3
此輸出(JOBS)的最後一列是我,這個用戶已經達到了他的極限在該主機上的工作(允許3個工作中的任何一個允許)。
謝謝你的解釋。你說得對。但是,如果2個作業消耗5個插槽,那麼user1也不能在hostA上運行更多作業。因此,必須兼顧時間限制和工作限制成熟。 另外我不想在腳本中使用這些信息。我可以通過一些操作來實現它。但我不想參與這個過程。 能有一種更簡潔的方式,簡單地說主機是打開或關閉的用戶? – user5005786
在消耗5個插槽的2個作業中,上述輸出中的SLOTS列將顯示5/5,表示該主機上該用戶的插槽限制已達到。至於你的命令,我不認爲LSF本身具有顯示它的實用程序。原因是主機可能由於許多原因而無法提供給用戶(不僅限於作業/插槽限制):它可能會被管理員關閉,可能會關閉,可能會被其他用戶的作業佔用等等。只是根據限制說開放/關閉並非如此簡單:您可能已達到MEM限制,但仍可向不要求MEM等的主機提交作業。 – Squirrel
想到的一件事是,如果您只關心作業和SLOT限制,那麼你可以編寫一個小工具來返回yes或no,如果達到這些限制中的任何一個。我知道你可能不想進入腳本,但如果你有''C編程能力,你可以使用LSF API。 – Squirrel