3ya*_*bos 10 parallel-processing matlab distributed-computing matlabpool
我大约一年半以来一直在运行MATLAB.而且我一直在努力让matlabpool准备好在将近三个月内完成一次.在我完全放弃之前,我决定寻求帮助.:)
我的问题始于matlabpool命令.每当我输入matlabpool命令时,我都会得到:
One or more output arguments not assigned during call to "system_dependent".
Error in matlabpool>iIsOnClient (line 73)
onclient = ~system_dependent('isdmlworker');
Error in matlabpool>iVerifyJava (line 64)
if iIsOnClient()
Error in matlabpool (line 10)
iVerifyJava();
Run Code Online (Sandbox Code Playgroud)
经过一些研究和不眠之夜,我发现必须使用"Cluster Profile Manager"解决问题.但我从来没有机会看到它的运作.以下是从Parallel面板中单击Cluster Profile Manager后得到的内容:
com.mathworks.jmi.MatlabException: Feature isdmlworker not found
at com.mathworks.jmi.NativeMatlab.SendMatlabMessage(Native Method)
at com.mathworks.jmi.NativeMatlab.sendMatlabMessage(NativeMatlab.java:266)
at com.mathworks.jmi.MatlabLooper.sendMatlabMessage(MatlabLooper.java:120)
at com.mathworks.jmi.Matlab.mtFeval(Matlab.java:1710)
at com.mathworks.jmi.MatlabWorker.feval(MatlabWorker.java:197)
at com.mathworks.toolbox.distcomp.ui.profile.model.MatlabProfileManager$1.runOnMatlabThread(MatlabProfileManager.java:80)
at com.mathworks.jmi.MatlabWorker$2.run(MatlabWorker.java:79)
at com.mathworks.jmi.NativeMatlab.dispatchMTRequests(NativeMatlab.java:475)
Attempt to reference field of non-structure array.
Error in parallel.internal.ui.AbstractValidationManager (line 20)
obj.Validator.addlistener('ValidationStarted', ...
Error in parallel.internal.ui.ValidationManager (line 21)
obj@parallel.internal.ui.AbstractValidationManager();
com.mathworks.jmi.MatlabException: Attempt to reference field of non-structure array.
at com.mathworks.jmi.NativeMatlab.SendMatlabMessage(Native Method)
at com.mathworks.jmi.NativeMatlab.sendMatlabMessage(NativeMatlab.java:266)
at com.mathworks.jmi.MatlabLooper.sendMatlabMessage(MatlabLooper.java:120)
at com.mathworks.jmi.Matlab.mtFevalConsoleOutput(Matlab.java:1778)
at com.mathworks.jmi.MatlabWorker.feval(MatlabWorker.java:195)
at com.mathworks.jmi.MatlabWorker.feval(MatlabWorker.java:172)
at com.mathworks.toolbox.distcomp.ui.profile.model.ValidationManager$1.runOnMatlabThread(ValidationManager.java:45)
at com.mathworks.jmi.MatlabWorker$2.run(MatlabWorker.java:79)
at com.mathworks.jmi.NativeMatlab.dispatchMTRequests(NativeMatlab.java:475)
Run Code Online (Sandbox Code Playgroud)
收到此消息后,群集配置文件管理器会弹出,但除了"等待"符号之外不会显示任何内容.我已经检查了我的分布式计算许可证,这看起来也很好.
license checkout Distrib_Computing_Toolbox
Run Code Online (Sandbox Code Playgroud)
命令返回1.
顺便说一下,还有另一条错误消息,我怀疑它与我的某种问题有关.我在每个MATLAB启动时得到这个:
Error using feature
Feature isdmlworker not found
Error in matlabrc (line 187)
if ~(ismcc || isdeployed || feature('isdmlworker')) && usejava('jvm')
Run Code Online (Sandbox Code Playgroud)
除了所有这些之外; 每当我尝试从" 环境"选项卡打开"并行首选项"时,我都收到此消息:
com.mathworks.jmi.MatlabException: Feature isdmlworker not found
at com.mathworks.jmi.NativeMatlab.SendMatlabMessage(Native Method)
at com.mathworks.jmi.NativeMatlab.sendMatlabMessage(NativeMatlab.java:265)
at com.mathworks.jmi.MatlabLooper.sendMatlabMessage(MatlabLooper.java:120)
at com.mathworks.jmi.Matlab.mtFeval(Matlab.java:1619)
at com.mathworks.jmi.MatlabWorker.feval(MatlabWorker.java:197)
at com.mathworks.toolbox.distcomp.ui.profile.model.MatlabProfileManager$1.runOnMatlabThread(MatlabProfileManager.java:72)
at com.mathworks.jmi.MatlabWorker$2.run(MatlabWorker.java:79)
at com.mathworks.jmi.NativeMatlab.dispatchMTRequests(NativeMatlab.java:440)
Run Code Online (Sandbox Code Playgroud)
我试图找到函数system_dependent.m但它似乎不存在.我得到的其他常见错误,功能"feature.m",选项"isdmlworker"是我找不到任何类型信息的其他谜团.
如果有人能帮我解决我在启动MATLAB的分布式计算系统时遇到的问题,我真的很感激.
编辑:我正在使用Ubuntu 14.04,而我的MATLAB版本是R2014a.
这似乎是您的 Ubuntu 14.04 特定安装的问题。不过,考虑到matlabpool
错误发生在com.mathworks.jmi.NativeMatlab.dispatchMTRequests()
.
matlabpool
经测试可以在 Ubuntu 15.04 和 15.10 上正常运行。这可能不是一个理想的解决方案,但将 Ubuntu 升级到 15.04 或 15.10 并重新安装 MATLAB R2014a 应该可以解决该问题。
归档时间: |
|
查看次数: |
475 次 |
最近记录: |