繁体   English   中英

如何通过参数传递数据在HPC集群上执行Matlab程序?

[英]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脚本中传递ab 如果您使用Linux集群/服务器,并且要执行同一Matlab脚本的多个参数运行,则可以使用xargs

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM