将参数传递给 slurm 脚本(matlab)
Passing a parameter into a slurm script (matlab)
我正在使用 slurm 向大学超级计算机提交作业。我的 matlab 函数有一个参数:
功能测试(variable_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
谁能帮我解决这个问题?谢谢!
Bash 脚本的第一个参数存储在名为 </code> 的环境变量中。所以脚本的最后一行应该是</p>
<pre><code>matlab -nodisplay -nodesktop -nosplash -r "test "
请注意,如果参数是数字,您可能需要先在 Matlab 脚本中使用 str2num
将其从字符串转换为整数。
我正在使用 slurm 向大学超级计算机提交作业。我的 matlab 函数有一个参数:
功能测试(variable_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
谁能帮我解决这个问题?谢谢!
Bash 脚本的第一个参数存储在名为 </code> 的环境变量中。所以脚本的最后一行应该是</p>
<pre><code>matlab -nodisplay -nodesktop -nosplash -r "test "
请注意,如果参数是数字,您可能需要先在 Matlab 脚本中使用 str2num
将其从字符串转换为整数。