2017-09-06 2 views
0

HTCondor 풀에서 다른 작업 일괄 처리를 실행하고 싶습니다. Type1의 10 개 작업, Type2의 20 개 작업 등을 예로 들어 보겠습니다. 현재 작업이 완료되면 이러한 각 작업 유형은 새로운 작업을 가져와야합니다.HTCondor 작업 제출 태그

한 가지 유형으로 모든 작업이 완료되거나 전체 작업 일괄 처리의 시간 제한이 경과하면 간단한 쿼리를 사용합니다. 이러한 요구 사항 중 하나가 충족되면 x 작업의 다음 반복이 클러스터에 제출됩니다.

function WaitForSims(CheckupDelay) 
    while io.popen([[condor_q -format "%d\n" clusterid]]):read('*all'):len()~=0 do 
     os.execute("echo Checkup timestamp: "..os.date("%x %X")) 
     os.execute(string.format("timeout %d 1>nul",CheckupDelay)) 
    end 
end 

타입 1, 타입 2와 타입 3과 검사 작업을 분리 할 수있는 가능성이 있습니다 :

은 (질문 정말 중요하지 않습니다 루아로 작성) 작은 기능에 의해 이루어집니다 그들? 현재 모든 작업이 현재 사용자인지 확인합니다.

간단히 점검 전화를 변경할 수 있으므로 작업에 태그를 추가하는 것이 이상적입니다. 문서를 추가하기가 쉽지 않은 문서에서는 JobID를 기억할 수 있지만 더 복잡한 것을 저장해야합니다. 그것이 비록 문서에 설명된다

답변

0

Linked Answer

솔루션은 다른 답변에서 볼 수 있습니다, 나는 찾지 못했습니다.

condor_q -constraint 'YourCustomVarName == 1' -f "%s" JobStatus 

또는

condor_q -constraint "YourCustomStringName == \"String\"" -f "%s" JobStatus 

(인용의 처리는 다를 수 있음)

를 : 사용 그것에 대하여 확인을 위해

+YourCustomVarName = 1 
+YourCustomStringName = "String" 

다음 job.sub 파일 추가에서