2012-02-06 1 views
5

qsub를 사용하여 여러 작업을 제출하고 싶습니다. 작업은 모두 매우 유사합니다. 루프가있는 스크립트가 있고 각 인스턴스에서 파일 tmpjob.sh를 다시 쓴 다음 qsub tmpjob.sh를 수행합니다. 작업이 실행되기 전에 tmpjob.sh가 루프의 다음 인스턴스에 의해 겹쳐 쓰여졌을 수 있습니다. 작업이 실행되기를 기다리는 동안 tmpjob.sh의 다른 사본이 저장되어 있습니까? 또는 작업이 시작되기 전에 tmpjob.sh를 변경하지 않도록주의해야합니까?작업에 영향을주지 않고 qsub를 사용하여 쉘 스크립트를 제출 한 후 쉘 스크립트를 삭제할 수 있습니까?

답변

4

당신이 토크에 대해 말하고 있다고 가정하면 그렇습니다. 제출 시간에 스크립트에서 토크를 읽습니다. 실제로 제출 스크립트는 전혀 파일로 존재할 필요가 없습니다. 그래서,

을하지만 몇 가지 다른 배치 시스템 (SGE/OGE, PBS의 PRO) 큐 제출 명령으로 qsub를 사용합니다 (cat pbs.cmd | qsub합니다. 워드 프로세서에서)를 documentation for torque에 예로서 주어진, 당신은 명령에 파이프 qsub에 할 수 있습니다 당신은 우리가 어떤 대기열 시스템을 사용하고 있는지 확실히 말해야 할 것입니다.

+0

감사합니다. 클러스터는 SGE 스케줄러를 사용합니다. – miz

0

예. HERE Documents를 사용하여 작업 및 하위 작업을 작성할 수도 있습니다. 다음은 cron 작업에서 시작한 스크립트로 수행했던 테스트의 예입니다.

#!/bin/env bash 
printenv 
qsub -N testCron -l nodes=1:vortex:compute -l walltime=1:00:00 <<QSUB 
cd \$PBS_O_WORKDIR 

printenv 

qsub -N testsubCron -l nodes=1:vortex:compute -l walltime=1:00:00 <<QSUBNEST 
cd \$PBS_O_WORKDIR 
pwd 
date -Isec 

QSUBNEST 


QSUB