parfor loop error on Azure VM
2 次查看(过去 30 天)
显示 更早的评论
I got the following error message whenever I tried to use parallel computing using parfor. I have tried very simple parfor routine, thus the error is not related to the parfor loop.
parfor i=1:100
a = i;
end
Starting parallel pool (parpool) using the 'local' profile ...
Warning: Cannot cancel or destroy a job that was not created by this Local cluster.
> In parallel.cluster.Local/cancelOrDestroyJob (line 34)
In parallel.cluster/Local/hCancelJob (line 294)
In parallel.internal.cluster/CJSJobMethods/cancelOneJob (line 51)
In parallel.job.CJSConcurrentJob>@(job,ce)CJSJobMethods.cancelOneJob(job.Parent,job,job.Support,ce) (line 57)
In parallel.job/CJSConcurrentJob/cancelJob (line 57)
In parallel.Job>iCancelJobs (line 1558)
In parallel.Job>@(jobs)iCancelJobs(jobs,exceptionBuilder) (line 1367)
In parallel.internal.cluster.hetfun (line 57)
In parallel/Job/cancel (line 1367)
In parallel/Cluster/hDeleteOneJob (line 1014)
In parallel.internal.pool.InteractiveClient>iDeleteJobs (line 877)
In parallel.internal.pool/InteractiveClient/pStopLabsAndDisconnect (line 585)
In parallel.internal.pool.InteractiveClient>iCleanupIfStartupFailed (line 951)
In parallel.internal.pool.InteractiveClient>@()iCleanupIfStartupFailed(obj) (line 283)
In onCleanup/delete (line 80)
In parallel.internal.pool/InteractiveClient/start (line 226)
In parallel.internal.pool.AbstractClusterPool>iStartClient (line 826)
In parallel.internal.pool/AbstractClusterPool/hBuildPool (line 596)
In parallel.internal.pool.doParpool (line 20)
In parpool (line 122)
In parallel.internal.pool/PoolArrayManager/getOrAutoCreateWithCleanup (line 58)
In pctTryCreatePoolIfNecessary (line 28)
In parallel_function (line 418)
In untitled2 (line 5)
Warning: Cannot cancel or destroy a job that was not created by this Local cluster.
> In parallel.cluster.Local/cancelOrDestroyJob (line 34)
In parallel.cluster/Local/hDestroyJob (line 298)
In parallel.internal.cluster/CJSJobMethods/destroyOneJob (line 71)
In parallel.job.CJSConcurrentJob>@(job)CJSJobMethods.destroyOneJob(job.Parent,job,job.Support,job.SupportID) (line 52)
In parallel.job/CJSConcurrentJob/destroyJob (line 52)
In parallel.Job>iDeleteJobs (line 1533)
In parallel.internal.cluster.hetfun (line 57)
In parallel/Job/delete (line 1313)
In parallel/Cluster/hDeleteOneJob (line 1030)
In parallel.internal.pool.InteractiveClient>iDeleteJobs (line 877)
In parallel.internal.pool/InteractiveClient/pStopLabsAndDisconnect (line 585)
In parallel.internal.pool.InteractiveClient>iCleanupIfStartupFailed (line 951)
In parallel.internal.pool.InteractiveClient>@()iCleanupIfStartupFailed(obj) (line 283)
In onCleanup/delete (line 80)
In parallel.internal.pool/InteractiveClient/start (line 226)
In parallel.internal.pool.AbstractClusterPool>iStartClient (line 826)
In parallel.internal.pool/AbstractClusterPool/hBuildPool (line 596)
In parallel.internal.pool.doParpool (line 20)
In parpool (line 122)
In parallel.internal.pool/PoolArrayManager/getOrAutoCreateWithCleanup (line 58)
In pctTryCreatePoolIfNecessary (line 28)
In parallel_function (line 418)
In untitled2 (line 5)
Mismatch between number of environment names and values
2 个评论
Edric Ellis
2022-1-31
I think this is some sort of configuration problem. I suggest contacting MathWorks support directly for help with this.
Jose Cortes-Briones
2022-7-8
I have the same issue. I'm running Matlab 2022a using the docker for NVIDIA systems. Did you ever get an answer?
回答(1 个)
Raghav Bansal
2023-12-28
Hi Chamna,
The log suggests that there is some issue in credential handling. Here are few points which can help you to resolve the same:
- Please ensure there is only one version of MATLAB installed on your machine.
- Try logging out and logging in again in the MATLAB.
If the above does not work, you may try to perform a clean installation of the MATLAB. You can refer to the below MATLAB answer to know more about the same:
The error "Mismatch between number of environment names and values" should also get resolved by this. You can use the following commands in MATLAB command window to confirm this:
dbstop('in', fullfile(matlabroot, 'toolbox/parallel/cluster/+parallel/+cluster/@Local/hSubmitCommunicatingJob.m'), 'at', '96')
c = parcluster('local'); %Name of the cluster profile
cd(c.JobStorageLocation)
setenv MDCE_DEBUG true
j = c.createCommunicatingJob();
j.createTask(@pwd, 1, {});
j.submit
cd(j.Name)
j.wait
% MATLAB will enter in the debugging mode
K>>envNames
K>>envValues
The number of values should be same for both 'envNames' and the 'envValues'.
Hope it helps!
Regards,
Raghav
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Parallel Computing Fundamentals 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!