我正在使用 slurm 向大學超級計算機提交作業。我的 matlab 函式有一個引數:
功能測驗(變數_1)
我的slurm檔案是(我不確定它是否正確。我知道如何在slurm檔案中定義引數的值,但我想將值傳遞給slurm檔案,因為我需要運行matlab函式多次使用不同的引數值):
#!/bin/bash -l
#SBATCH --time=2-00:00:00
#SBATCH --job-name="test"
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --mem=4gb
#SBATCH -p small
module load matlab/R2021a
matlab -nodisplay -nodesktop -nosplash -r "test variable_1"
我嘗試使用以下代碼(例如,我想設定 variable_1=12)來提交作業,但它不起作用。
sbatch test.slurm 12
誰能幫我解決這個問題?謝謝!
uj5u.com熱心網友回復:
Bash 腳本的第一個引數存盤在名為$1. 所以腳本的最后一行應該是
matlab -nodisplay -nodesktop -nosplash -r "test $1"
請注意,如果引數是一個數字,您可能需要首先str2num在您的 Matlab 腳本中將其從字串轉換為整數。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/435041.html
