我在MATLAB 2014b中使用here中的一个示例作为“使用MapReduce计算平均值”。当我运行该示例时,出现以下错误:
使用“本地”配置文件启动并行池(parpool)...错误 使用mapreducer(第96行)无法启动并行池。 (对于 除了导致错误之外的信息,验证配置文件 Cluster Profile Manager中的“local”。)
gcmr出错(第34行) mr = mapreducer();
mapreduce错误(第94行) mrcer = gcmr();
MapReduceFunction(第10行)中的错误meanDelay = mapreduce(ds, @ Mapper1,@ Reducer1);
引起: 使用parallel.internal.pool.InteractiveClient / start时出错(第329行) 无法启动池。 使用parallel.Job / submit时出错(第304行) 所有维度参数必须大于零
我检查了“本地”个人资料,其中有一些问题如下图所示:
我们如何解决问题?
答案 0 :(得分:3)
在使用MATLAB并解决问题之后,我找到了一个解决方案。发生此验证错误的原因有很多。其中一个解决方案如下:
(1)按顺序运行以下MATLAB命令:
rehash toolboxcache;
<强> restoredefaultpath; 强>
<强> savepath 强>
(2)重新启动MATLAB并再次尝试验证。
答案 1 :(得分:2)
使用mapreducer(0)
只会对大问题的性能产生负面影响。此设置基本上告诉mapreduce
仅使用本地MATLAB会话来处理数据,因此对于小问题,这比并行运行所需的开销更快。这个简单的示例问题就是这样一种情况。
有关详细信息,请参阅PCT文档中的此页面: http://www.mathworks.com/help/distcomp/run-mapreduce-on-a-local-cluster.html