簡體   English   中英

使用HTCondor調度程序進行操作

[英]Dask with HTCondor scheduler

背景

我有一個帶有並行步驟的圖像分析管道。 管道在python ,並行化由dask.distributed控制。 最低處理設置為1個調度程序+ 3個工作程序,每個工作程序有15個進程。 在分析的第一個簡短步驟中,我使用1個進程/工作人員,但是該節點的所有RAM,然后在所有其他分析步驟中,都使用了所有節點和進程。

問題

管理員將安裝HTCondor作為群集的調度程序。

思想

為了使我的代碼在新設置上運行,我計划使用dask手冊中顯示的SGE方法,因為該群集具有共享的網絡文件系統。

# job1 
# Start a dask-scheduler somewhere and write connection information to file
qsub -b y /path/to/dask-scheduler --scheduler-file /path/to/scheduler.json

# Job2
# Start 100 dask-worker processes in an array job pointing to the same file
qsub -b y -t 1-100 /path/to/dask-worker --scheduler-file /path/to/scheduler.json

# Job3 
# Start a process with the python code where the client is started this way
client = Client(scheduler_file='/path/to/scheduler.json')

問題與建議

如果我對這種方法的理解正確,我將以獨立的工作(不同的HTCondor提交文件)啟動調度程序,工作程序和分析。 如何確保執行順序正確? 有沒有辦法可以使用以前使用的相同處理方法,或者將更有效地翻譯代碼以使其與HTCondor更好地配合使用? 謝謝您的幫助!

HTCondor JobQueue支持已合並( https://github.com/dask/dask-jobqueue/pull/245 ),現在應該在Dask JobQueue中可用( HTCondorCluster(cores=1, memory='100MB', disk='100MB')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM