What is the best way to determine if a usable GPU is available?

11 views (last 30 days)
I have an app that is used by many people in our collaboration some with GPU's and parallel toolbox and some without.
I can't seem to the find the canUseGPU() function that returns true if the parallel toolbox is loaded and a compatible GPU is available to the program.
I know it is probably simple and the problem is I'm probably too simple to find it.
Thanks, Joe

Accepted Answer

Matt J
Matt J on 11 Nov 2012
Maybe this
try
gpuArray(1);
canUseGPU=true;
catch
canUseGPU=false;
end

More Answers (1)

James Lebak
James Lebak on 16 Nov 2012
Hi Joe,
There is not presently a function called 'canUseGPU' in Parallel Computing Toolbox. Matt's answer will work. You could also use the function parallel.gpu.GPUDevice.isAvailable instead of gpuArray, e.g.
try
canUseGPU = parallel.gpu.GPUDevice.isAvailable;
catch ME
canUseGPU = false;
end
James
  1 Comment
Joseph Areeda
Joseph Areeda on 16 Nov 2012
Thanks James,
What I ended up doing was putting try catch around the gpuDevice function and also checking if enough memory is available for my job.
As with most programming problems once you get it it's obvious.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!