How do you assign the number of cores via an ssh script?

3 次查看(过去 30 天)
Hello,
i have a batch script file that is run on an ssh with the following format:
nohup matlab -nodesktop -nosplash -nodisplay <script_file.m>& output_script_file.txt &
I want to set the number of cores for the job to 6, seeing as the script_file.m uses a parfor loop. I know feature('numcores') will display the number of cores available, but I want to specifically assign the number of cores. Is this done through the batch script file, and if so how? If not, how can I assign the number of cores to a job on an ssh?
Thanks.

采纳的回答

Alessandro Maria Laspina
编辑:Alessandro Maria Laspina 2020-12-28
I've tried running Walter Roberson's answer, but for some reason i've had to include maxNumCompThreads(6) in the script file at the start.
Also the > gave me an error as well.
This seemed to work:
nohup matlab -nodesktop -nosplash -nodisplay -batch <script_file> & output_script_file.txt &
EDIT:
As Walter Roberson wrote, > and & should not have a space, so it is:
nohup matlab -nodesktop -nosplash -nodisplay <script_file.m>& output_file.txt &

更多回答(1 个)

Walter Roberson
Walter Roberson 2020-12-26
However you could also consider modifying the cluster profile to limit the cores in it.
  7 个评论
Raymond Norris
Raymond Norris 2021-1-2
Also consider using the -logfile switch
nohup matlab -batch 'maxNumCompThreads(6);script_file' -logfile output_script_file.txt &

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by