GPU computing with OS X 10.8 and retina macbook

2 views (last 30 days)
Scott
Scott on 14 Aug 2012
Edited: Tom Clark on 4 Sep 2016
Does anyone have this combination working? I've installed the CUDA driver 5.0.17 and gpuDevice locks up Matlab. I'm running OS X 10.8 on a new retina macbook pro and I've disabled automatic GPU switching in my preferences.
I could not locate the Geforce for mac driver that is referenced in the Nvida CUDA install notes.
The Nvidia forums are shut down.
Matlab 2012a is installed.
  5 Comments
Naveen
Naveen on 22 Feb 2013
Edited: Naveen on 22 Feb 2013
Yes I do have the problem. When I type gpuDevice command in Matlab, I get this in return
Error using gpuDevice (line 26)
There is a problem with the CUDA driver associated with this GPU device. See www.mathworks.com/gpudriver
to find and install the latest supported driver.
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, 1): image not found
Please suggest something. I'm running the most up-to-date version of 10.8.2 on a 15" rMBP. Just to add that even when I disable automatic graphic switching on my machine and I see GT 650M card is in use, Matlab returns the same answer for gpuDevice command.
James Lebak
James Lebak on 27 Feb 2013
When you see a message like this, it usually means that the CUDA driver is missing and you need to install it.

Sign in to comment.

Answers (3)

Jos Martin
Jos Martin on 20 Aug 2012
We believe that the hang you are seeing relates to the CUDA driver recompiling all of the GPU libraries to run on the particular GPU in the device. If you wait about 10-20 mins (one time only) you should find that MATLAB comes back, having finished this recompilation.
More Details:
R2012a shipped with libraries that were optimized for pre-Kepler NVIDIA hardware. This means that they did not contain the correct compiled code for the new Kepler architecture (which is the architecture of the GPU in the new mac book pro retina machine). Thus the first time those libraries are loaded the CUDA driver needs to take the embedded PTX code and compile it for the new architecture. This is a time consuming process. Fortunately, once the driver has compiled it once it caches the result so that the next time you use those libraries on the machine you will not need to recompile.
For even more details see http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/Kepler_Compatibility_Guide.pdf, particularly the sections 'Applications Using CUDA Toolkit 4.1 or Earlier'
  1 Comment
Martin
Martin on 25 Sep 2012
Same problem here. Computer crash on the Retina using Mountain Lion. The solution seems to be to downloaded latest drivers. Turn of automatic graphic switching since this seems to cause the crash. Then I run
gpuDevice
and it compiles for a while. After that I can run it all the time. So graphics switching seems to be at fault here.

Sign in to comment.


Walter Roberson
Walter Roberson on 14 Aug 2012
  3 Comments
Scott
Scott on 15 Aug 2012
The drivers you linked to don't support my hardware. Besides, there is no clear way to uninstall CUDA 5.

Sign in to comment.


Tom Clark
Tom Clark on 4 Sep 2016
Edited: Tom Clark on 4 Sep 2016
By far the vast majority of retina macbook pros actually have Intel graphics adapters, rather than NVIDIA.
In that case, attempting to invoke CUDA code would issue the error shown in the OP (or segfault, depending on how robust the code is!).
(Although in the OP's case he's clearly checked so this isn't the case - but mentioned for general fullness of answers).
To check: Go to the apple sign (top left), click 'About This Mac' and 'More Info' to look at what graphics adapter is installed.

Community Treasure Hunt

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

Start Hunting!