How can we train using gpu instead of cpu ?

14 views (last 30 days)
Hamza Afzal
Hamza Afzal on 26 Feb 2021
Commented: Joss Knight on 8 Mar 2021
Data:
I am using this example, i want to train the network using gpu.
Problem:
Where in the code, i can specify that training should be done using gpu?
Is there a code line or any functions that does this ?

Accepted Answer

Joss Knight
Joss Knight on 8 Mar 2021
By default your GPU will be used if you have one. To force it, set the ExecutionEnvironment training option to 'gpu'.
  2 Comments
Joss Knight
Joss Knight on 8 Mar 2021
Ah, my mistake. This is a custom training loop. In this case, the simplest way to force GPU behaviour is to set the OutputEnvironment option on the minibatchqueue object mbqTrain when it is created. For best performance, you should also move the dlnetwork object to the GPU:
net = dlupdate(@gpuArray, net);
You can do this inside the training code, just before if doTraining.
But what I said before holds true - this training code will run on the GPU as it is because that is the way the default settings work.
For inference, you can see that the section Detect objects Using YOLO v3 takes pains to show you how to run on the GPU.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by