2015-10-28 29 views
5

W SGE/PBS mogę wysyłać pliki binarne do klastra, tak jak robiłem to lokalnie. Na przykład:Uruchamianie pliku binarnego bez skryptu najwyższego poziomu w SLURM

qsub -b y -cwd echo hello 

prześle zadanie o nazwie echo, które wypisze słowo "hello" do pliku wyjściowego.

Jak mogę wysłać podobną pracę do SLURM. Oczekuje, że plik będzie miał interpreter haszujący w pierwszym wierszu. Na slurm uzyskać

$ sbatch echo hello 
sbatch: error: This does not look like a batch script. The first 
sbatch: error: line must start with #! followed by the path to an interpreter. 
sbatch: error: For instance: #!/bin/sh 

lub używając qsub pseuodo:

$ qsub echo hello 
There was an error running the SLURM sbatch command. 
The command was: 
'/cm/shared/apps/slurm/14.11.3/bin/sbatch echo hello 2>&1' 
and the output was: 
'sbatch: error: This does not look like a batch script. The first 
sbatch: error: line must start with #! followed by the path to an interpreter. 
sbatch: error: For instance: #!/bin/sh 
' 

nie chcę napisać skrypt, umieścić #!/bin/bash na górze i mój polecenia w następnym wierszu, a następnie przesłać je do sbatch. Czy istnieje sposób na uniknięcie tej dodatkowej pracy? Musi być bardziej produktywny sposób.

Odpowiedz

7

możesz użyć parametru --wrap, aby automatycznie zawinąć polecenie w skrypcie.

coś takiego:

sbatch --wrap="echo hello"

+0

Great! To działa. – highBandWidth

+0

Czy jest coś takiego jak '--wrap' dla' srun'? Dla mojego przypadku użycia potrzebuję polecenia blokującego. – landau