簡體   English   中英

在HTCondor中導入本地python模塊

[英]import local python module in HTCondor

這涉及在HTCondor作業中導入我自己的python模塊。

假設'mymodule.py'是我要導入的模塊,並保存在名為XDIR的目錄中。 在另一個名為YDIR的目錄中,我編寫了一個名為xImport.py的文件:

#!/usr/bin/env python
import os
import sys
print sys.path
import numpy
import mymodule

和神鷹提交文件:

executable = xImport.py
getenv = True
universe = Vanilla
output = xImport.out
error = xImport.error
log = xImport.log
queue 1

提交的結果是,在xImport.out中,打印出sys.path,顯示XDIR。 但是在xImport.error中,有一個ImporError說“沒有名為mymodule的模塊”。 所以似乎mymodule的路徑在sys.path中,但是python沒有找到它。 我還想提一下錯誤消息說ImportError來自文件

/mnt/novowhatsit/YDIR/xImport.py

而不是YDIR/xImport.py

如何編輯上述文件以導入mymodule.py?

當condor運行您的進程時,它會在該計算機上創建一個目錄(通常在本地硬盤驅動器上)。 它將其設置為工作目錄。 這可能是你看到的問題。 如果XDIR對於運行condor_submit的計算機是本地的,那么運行xImport.py的遠程計算機上的內容不存在。

嘗試使用.submit功能transfer_input_files機制(請參閱http://research.cs.wisc.edu/htcondor/manual/v7.6/2_5Submitting_Job.html )將mymodule.py復制到遠程計算機。

暫無
暫無

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

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