[英]How to execute Matlab program on a HPC cluster with passing data through argument?
我有一个需要在HPC群集上运行的MATLAB程序。 我想做的是通过在参数中传递数据来运行程序。
addpath('path')
savepath
% a and b need to be passed through an argument
c = addition(a,b);
fileID=fopen('test.txt','w');
fprintf(fileID,'Num\n');
fprintf(fileID,'%f\n',c);
fclose(fileID);
我有两个问题:1.如何编写参数以传递数据? 2.如何在MATLAB中编写代码以获取从参数传递的数据?
先感谢您。
您可以使用自己的参数编写一个Matlab m文件脚本(例如,此处名为mymfile.m ),然后在群集上运行该脚本(具体取决于您的群集,可能需要使用Shell脚本来启动它)
matlab -r mymfile.m
(请注意,只能像这样运行脚本,不能运行Matlab 函数 (尽管可以从脚本中调用函数))。 或者,您也可以显式地运行纯命令
matlab -r 'addpath('path'),savepath,c=addition(a,b); ... , exit'
您可能会在shell脚本中传递a和b 。 如果您使用Linux集群/服务器,并且要执行同一Matlab脚本的多个参数运行,则可以使用xargs 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.