GNU/Linux >> Belajar Linux >  >> Linux

Gunakan variabel Bash dalam skrip sbatch SLURM

Slurm berhenti memproses #SBATCH arahan pada baris pertama kode yang dapat dieksekusi dalam skrip. Untuk pengguna yang memiliki #SBATCH arahan tidak tergantung pada kode yang mereka coba jalankan di atas arahan tersebut, cukup letakkan #SBATCH baris di bagian atas.

Lihat jawaban lain untuk solusi/solusi jika, seperti OP, opsi sbatch Anda bergantung pada perintah yang Anda tempatkan di atasnya.

Skrip batch mungkin berisi opsi yang diawali dengan "#SBATCH" sebelum perintah yang dapat dieksekusi dalam skrip . sbatch akan berhenti memproses arahan #SBATCH lebih lanjut setelah non-comment non-whitespaceline pertama tercapai dalam skrip.

Dari dokumen sbatch, penekanan saya.


Ini tidak akan berhasil. Apa yang terjadi saat Anda menjalankan

sbatch myscript.sh

apakah itu slurm mem-parsing skrip untuk baris #SBATCH khusus itu, menghasilkan catatan pekerjaan, menyimpan skrip batch di suatu tempat. Skrip batch dijalankan hanya nanti saat pekerjaan berjalan.

Jadi, Anda perlu menyusun alur kerja Anda dengan cara yang sedikit berbeda, dan terlebih dahulu menghitung jumlah proses yang Anda perlukan sebelum mengirimkan pekerjaan. Perhatikan bahwa Anda dapat menggunakan sesuatu seperti

sbatch -n $numProcs myscript.sh

, Anda tidak perlu membuat skrip secara otomatis (juga, mpirun seharusnya bisa mendapatkan jumlah procs dalam alokasi Anda secara otomatis, tidak perlu menggunakan "-np").


Linux
  1. Cara Menggunakan Kata Sandi Terenkripsi di Linux Bash Shell Script

  2. Cara Menggunakan if else Conditionals Statement di Bash Script

  3. Mengapa Saya Tidak Dapat Menggunakan Cd Dalam Skrip Bash??

  1. Perintah Rm Dalam Skrip Bash Tidak Bekerja Dengan Variabel?

  2. Gunakan Harapkan dalam skrip Bash untuk memberikan kata sandi ke perintah SSH

  3. login buruh pelabuhan otomatis dalam skrip bash

  1. Skrip bash(I)

  2. Cara menggunakan perintah sumber dalam skrip pipa Jenkins

  3. Jalankan perintah bash pada pipa jenkins