Why is there no 'ExecutionEnvironment' parameter for trainingOptions function?

I am using a macbook pro with no nvida gpu, by default trainNetwork should use cpu instead of gpu. But I got this error.
There is a problem with the CUDA driver or with this GPU device. Be sure that you have a supported GPU and that
the latest driver is installed.
Error in parallel.internal.gpu.isAnyDeviceSelected
Error in parallel.gpu.GPUDevice.current (line 33)
if parallel.internal.gpu.isAnyDeviceSelected
Error in gpuDevice (line 23)
dev = parallel.gpu.GPUDevice.current();
Caused by:
The CUDA driver could not be loaded. The library name used was '/usr/local/cuda/lib/libcuda.dylib'. The error
was:
dlopen(/usr/local/cuda/lib/libcuda.dylib, 10): image not found"
Then I tried to follow the documentation to use cpu https://www.mathworks.com/help/nnet/ref/trainingoptions.html , my matlab 2016a says trainingOptions doesn't have 'ExecutionEnvironment' parameter.
This is my code
opts = trainingOptions('sgdm',...
'ExecutionEnvironment','cpu',...
'LearnRateSchedule','piecewise',...
'LearnRateDropFactor',0.2,...
'LearnRateDropPeriod',5,...
'MaxEpochs',20,...
'MiniBatchSize',300);
Error using nnet.cnn.TrainingOptionsSGDM.parseInputArguments (line 115)
'ExecutionEnvironment' is not a recognized parameter. For a list of valid name-value pair arguments, see the
documentation for this function.
Error in trainingOptions (line 97)
args = nnet.cnn.TrainingOptionsSGDM.parseInputArguments(varargin{:});

 Respuesta aceptada

MSRIC
MSRIC el 24 de Mzo. de 2017
I got the same error. I think depend on the Matlab version, I am using matlab2016a. Can someone help us?

Más respuestas (1)

R2016a doesn't have an 'ExecutionEnvironment' parameter and does not have CPU support, which was introduced in R2016b.

9 comentarios

I got the same error on R2016b. That version still can't recognize 'ExecutionEnvironment'.
Error using nnet.cnn.TrainingOptionsSGDM.parseInputArguments (line 115)
'ExecutionEnvironment' is not a recognized parameter. For a list of valid name-value pair
arguments, see the documentation for this function.
Me too, I have Matlab R2016b and I got the same error. Is there any solution for this issue please?
Error using nnet.cnn.TrainingOptionsSGDM.parseInputArguments (line 115)
'ExecutionEnvironment' is not a recognized parameter. For a list of valid name-value pair arguments, see the
documentation for this function.
Joss Knight
Joss Knight el 28 de Mzo. de 2017
Editada: Joss Knight el 28 de Mzo. de 2017
I apologise for missing your original point. Training on anything other than a GPU is not supported in R2016b. trainingOptions has no ExecutionEnvironment parameter, only the inference functions - classify, predict and activations - have it and can run on the CPU.
Being able to select the ExecutionEnvironment for training was introduced in R2017a, which you can download now.
I got the same error on R2016b. That version still can't recognize 'ExecutionEnvironment'.
"Being able to select the ExecutionEnvironment for training was introduced in R2017a,"
i cant sellect on 2019 version, it show invalid solver name
Soong Yuan See, could you confirm that you have Deep Learning Toolbox installed?
I am using the 2019b version and it show me invalid solver name, yes I have the Deep Learning Toolbox installed and able to train using single CPU but not GPU please help me.
Soong Yuan See, can you paste a Minimal Working Example? Also does MATLAB recognize a GPU for you?

Iniciar sesión para comentar.

Preguntada:

el 24 de Mzo. de 2017

Comentada:

el 27 de Oct. de 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by