前置条件
matlab parallel server的许可证。
通过邮箱而不是文件密钥的形式登录的正版matlab。
配置步骤
首先要购买一个matlab parallel server的许可证(和matlab本身的许可证是不一样的,因为这个是额外服务),这个只要你的学校没有被列入matlab的黑名单,学校基本都会买,去自己学校的网络人员那里问一下应该就会给你们一个安装步骤。
在官网上下载好对应版本的安装包(比如我的就是R2024b),用账号密码登录进去,用网络上的盗版是不行的。打开安装包,选择我要安装网络许可证管理器,许可证文件学校也会给你的,接着安装就好(勾选配置为服务)。
再选择我有文件安装密钥,把matlab parallel server工具箱安装上去,之后就可以进行配置了。
打开命令行管理模式,进入这个目录(matlabroot\toolbox\parallel\bin):
接下来进行mjs服务的安装,在命令行里输入:
.\mjs uninstall -clean
.\mjs install
.\mjs start
应该就会配置成功了。(mjs_def.bat是配置文件,可以修改用户名,密码,安全等级等,修改的时候把前面的REM去掉,相关介绍也都是以REM注释的方式保存在里面,如果只想让跑起来看看的话,什么都不用动。)
使用方法
要成功使用分布式处理的话,需要在每台电脑的这个位置,打开hosts文件,输入进每台电脑的ip地址和名称。我这里只用了两台电脑进行并行运算,需要几台都可以写上去。
之后回到刚才的matlabroot\toolbox\parallel\bin目录,依次管理模式运行addMatlabToWindowsFirewall.bat 和 admincenter.bat,之后弹出的窗口就是管理中心了,就很简单可以进行配置了。
如果Matlab中验证不通过,可能的问题有:
- 在找不到主机的情况下,检查hosts文件有没有输错,wifi是动态地址,记得每次使用的时候检查一下,如果修改了hosts或者mjs_def.bat文件,需要重新安装mjs服务以保证生效。
- 在matlab中测试错误,记得看报错信息,如果提到license的问题,可以试试重启MATLAB license Server服务,根据报错信息,有可能你的配置文件出现问题,目录在matlabroot\licenses~.lic。
- 如果提到MATLAB_Distrib_Comp_Engine的相关license的问题,记得添加MATLAB_Distrib_Comp_Engine的相关内容(在学校给你的license里有)到matlabroot\licenses~.lic,记得要在首行加上SERVER行和DAEMON行(内容在安装MATLAB license Server服务的目录中(etc\license.bat))