I want to calculate an SVD of a very large matrix and therefore I'm experimenting with SPMD and and svd's. I'm running this code:
D = rand(10000);D = distributed(D);tic()spmd svd(D);endtoc()
and I get this error message:
Starting parallel pool (parpool) using the 'local' profile ... connected to 12 workers.Analyzing and transferring files to the workers ...done.Error using ParSVD (line 6)Error detected on workers 2 6 9. Error in run (line 96)evalin('caller', [script ';']); Caused by: Error using ParSVD (line 6) An UndefinedFunction error was thrown on the workers for 'svd'. This may be because the file containing 'svd' is not accessible on the workers. Specify the required files for this parallel pool using the command: addAttachedFiles(pool, ...). See the documentation for parpool for more details. Undefined function 'svd' for input arguments of type 'char'. Error using ParSVD (line 6) An UndefinedFunction error was thrown on the workers for 'svd'. This may be because the file containing 'svd' is not accessible on the workers. Specify the required files for this parallel pool using the command: addAttachedFiles(pool, ...). See the documentation for parpool for more details. Undefined function 'svd' for input arguments of type 'char'. Error using ParSVD (line 6) An UndefinedFunction error was thrown on the workers for 'svd'. This may be because the file containing 'svd' is not accessible on the workers. Specify the required files for this parallel pool using the command: addAttachedFiles(pool, ...). See the documentation for parpool for more details. Undefined function 'svd' for input arguments of type 'char'.
I'm using R2015a 64-bit on a cluster.
Best Answer