Matlab 中的并行计算:找不到网络单元/文件夹



我想在几个pc的集群上运行一个代码,使用一个公共逻辑单元作为当前目录,我称之为Q:。这个文件夹的正确路径是,例如

 \myservermyfolder

所以我用

开始并行脚本
spmd
    cd('\myservermyfolder')
  end

,为了确保,我甚至把文件夹放在"AdditionalPaths"在集群配置文件的属性。

检查函数和文件是否可访问,我使用

spmd
    check('function1')
  end

,其中"function1"是"myfolder"中的一个函数文件。不幸的是,spmd不能在每台PC上找到该功能,而只能在其中的一些PC上找到,没有明显的选择理由。我已经在发行的计算机中检查了"SYSTEM"用户帐户(由matlabpool使用)是否具有"myservermyfolder"的权限,但它总是具有。

有人遇到过类似的情况吗?

p。S:我在Windows 7 64bit的R2012a集群中的每台计算机上使用。

集群配置文件中的'additionalPaths'设置应用于创建并与该配置文件关联的集群作业。在本例中,需要使用'parcluster(cluster_profile)'创建一个作业,其中cluster_profile是您分配给additionalPaths变量的集群配置文件的名称。

同样为了健壮性,你可以尝试添加AdditionalFiles选项和所需的.m文件,path命令可以添加到worker的启动文件中(例如jobStartup.m, taskStartup.m),以确保每个worker都可以看到路径。

最新更新