问题描述
我要matlabpool open 24
.由于我的计算机中NumWorkers的默认值为12,因此我运行:
I want to matlabpool open 24
. As the default value of NumWorkers in my machine is 12, I run:
myCluster = parcluster('local');
myCluster.NumWorkers = 12; % 'Modified' property now TRUE
saveProfile(myCluster); % 'local' profile now updated,
% 'Modified' property now FALSE
我得到了错误:
Error using parallel.cluster.Local/hSetProperty (line 258)
NumWorkers must be an integer from 1 to 12.
我注释了parallel.cluster.Local/hSetProperty(第258行)上的绑定检查:
I comment out the bound check at parallel.cluster.Local/hSetProperty (line 258):
case 'NumWorkers'
% if value > obj.MaxAllowedNumWorkers
% error(message('parallel:cluster:LocalInvalidNumWorkers', obj.MaxAllowedNumWorkers));
% else
obj.LocalSched.setMaximumNumberOfWorkers( double( value ) );
% end
我得到了错误:
Error using parallel.cluster.Local/hSetProperty (line 260)
Java exception occurred:
java.lang.IllegalStateException: Too many licenses requested
at com.mathworks.toolbox.distcomp.local.LocalScheduler.setMaximumNumberOfWorkers(LocalScheduler.java:89)
我对错误请求的许可证太多"感到惊讶.在我的一台计算机上,MaxAllowedNumWorkers是512(R2014a,Windows 7 SP1 x64 Ultimate),而在另外两台计算机上,MaxAllowedNumWorkers是12(R2012a,Ubuntu 12.04).
I am surprised by the error "Too many licenses requested". On one of my machine MaxAllowedNumWorkers is 512 (R2014a, Windows 7 SP1 x64 Ultimate), while on the two other one MaxAllowedNumWorkers is 12 only (R2012a, Ubuntu 12.04).
MaxAllowedNumWorkers是否从R2012a更改为R2014a?是否存在具有不同的MaxAllowedNumWorkers的不同类型的许可证?另外,在MaxAllowedNumWorkers仅12个的计算机上,我可以同时在许多其他计算机(超过100台)(计算机集群)上使用许可证,因此我不了解MaxAllowedNumWorkers的哈希限制.
Did MaxAllowedNumWorkers change from R2012a to R2014a? Does there exist different kind of licenses with a different MaxAllowedNumWorkers? Also, on the machine where MaxAllowedNumWorkers is 12 only, I can use the license on many other machines (over 100)at the same time (computer cluster), so I don't understand the hash restriction on MaxAllowedNumWorkers.
推荐答案
确实如此. 2014版中已取消了每个许可证允许的本地工人数量的限制.请参阅发行说明.这只是2014年之前许可所施加的限制;这就是为什么您在具有2012年的计算机上看到它的原因,而不是在具有2014年的计算机上看到它的原因.
Indeed, it did. The limit on the number of allowed local workers per license was removed in the 2014 release. See the release notes. It's just a limitation imposed by pre-2014 licenses; that's why you see it on the machines that have 2012, but not on those that have 2014.
这篇关于是什么决定MaxAllowedNumWorkers?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!