Deep learning is a hot topic these days and it is greatly increased by the fact that AMD/nVidia video cards can be used for accelerating the training of very complex neural networks. In the meantime, some powerful frameworks have been developed by the community. One of the most known is Caffe which is specialized in image recognition, just one of the areas where I am more interested in.
However, it is not an easy task to get a working Caffe environment for a standard user. Of course, there are plenty of online documentation and some very nice guides but I didn’t find any for a Mac OS X 10.11.4 version working out of the box, so after struggling several hours trying to have everything ready, I decided to post here all the steps just in case it could help someone else.
General CUDA driver update to support macOS 10.12 and NVIDIA display driver 378.05.05.25f01; Recommended CUDA version(s): CUDA 8.0; Supported MAC OS X. 10.12.x 10.11.x An alternative method to download the latest CUDA driver is within Mac OS environment. https://athomeenergy355.weebly.com/blog/pdf-writer-for-mac-os-sierra. Access the latest driver through System Preferences Other CUDA. Click 'Install CUDA Update'.
In my case, I wanted to run the cool new automatic colorization methods using deep learning algorithms and the results are absolutely fantastic.
I started trying Theano today and wanted to use the GPU (NVIDIA GeForce GT 750M 2048 MB) on my Mac. Here’s a brief instruction on how to use the GPU on Mac, largely following the instructions. Ok so with the palaver with 10.13.4 on my macbook pro I decied to try it in unupgraded imac. Automate-eGPU output indicates that it worked:. (2015/10/01) Mac OS X El Capitan (10.11)に関するAdobe 製品の対応状況についてです。情報の 報告があり次第、本ディスカッションにて公開してまいります。.
In addition, I also wanted to use CPU and GPU code paths in order to compare the processing speed, unfortunately, the video card I have on my workstation is an old AMD card and I need to have a nVidia one for using CUDA libraries so my only machine with that specs is a MacBook Pro with Mac OS X 10.11.4, 16GB RAM, Intel Core i7 4960HQ and a nVidia GeForce GT 750M (2GB).
Let’s start with the optional but highly recommended prerequisites:
- Check your Mac OS X and update everything is pending, you also need to install Xcode, 7.3 is the latest one but not supported by CUDA yet so later on, I will show you a work around for this issue
- Install Homebrew package manager and if possible, start up with a clean /usr/local directory
- Install Anaconda Python 2.7 on /usr/local directory. Once it is done, add to your ~/.bash_profile file:
Now, we are installing the needed libraries:
- Install nVidia CUDA 7.5, in my case the exact version is 7.5.27. I also installed it on /usr/local/cuda. Once it is done, add to your ~/.bash_profile file:
- Install nVidia cuDNN, you have to register and get approved by nVidia. I got 7.5 v5 but unfortunately, I was not able to use it, apparently some kind of incompatibility with my CUDA version or the Xcode used. In any case, once you have the tgz file, just uncompress it (tar -xfvz) and copy the contents of the /lib directory in to /usr/local/cuda/lib and cudnn.h to /usr/local/cuda/include directory.
Cuda For 10.11 Os X Windows 10
- Install Intel MKL libraries, which is a part of Intel Parallel Studio XE Composer, you can download a trial version or a student/academic research one if you fulfill the requirements. MKL libraries are installed on /opt/intel/mkl. Once it is done, add to your ~/.bash_profile file:
- Using Homebrew, we are installing some needed libraries. At this point, it is very important to have the right environment variables, if you followed the guide step-by-step, you have them on your ~/.bash_profile but if you were working on the same terminal session, they are not loaded so, you can close this terminal and open a new one or just execute this command:Before starting to download, compile and install the pending libraries, execute this command:and you should see something like “Python 2.7.xx :: Anaconda 4.x.x (x86_64)”, if that is the case, the go on, otherwise, revise your environment vars as something is not well configured.At this point, we are using the python provided by Anaconda so let’s execute these commands (note that in some cases, the GNU C/C++ 5.3.0 will be compiled and it takes a while, ~30min on my rig):
- Finally, we can download Caffe, I am donwloading it to /usr/local/caffe:Next step is to configure it, open Makefile.config file with your preferred text editor (vim?) and let’s configure the following vars:Update 23/August/2016: Instead of providing a partial Makefile.config file, a full copy of this file is attached above.Give it a try…:If it compiles fine, you can skip this paragraph, you probably have Xcode 7.0.2 or a lower version which is OK…
but if all you get is this error:
“nvcc fatal : The version (‘70300’) of the host compiler (‘Apple clang’) is not supported”
it means you have the Xcode 7.3 and CUDA still does not support it.
Of course, it has a solution, to install a supported Xcode version and use it for compiling Caffe:
– go to https://developer.apple.com/downloads/ and log in
– download Command Line Tools OS X 10.11 Xcode 7.2 and install it
– now, switch to use this version:Remember that using:will configure the default compiler, which, in my case is 7.3.
Let’s try to compile it again:This time, it should be OK. Now, let’s compile the tests:Everything went fine? Perfect! At this point, you probably want to run the tests but… they will fail(!). This time the guilty one is Apple and the latest OS X 10.11 “El Capitan” version, apparently it is undocumented but spending some time ‘googling’, I found that other application are failing too as it seems that Apple unset all DYLD_ prefix environment variables when running scripts. I only know one solution:
– to disable System Integrity Protection, which I totally do not recommend to do, or if you do that, revert to SIP on as soon as you check that all the tests were OK.
So, we can discard to run the tests and trust that everything is fine and continue with only a few more steps. - Compiling PyCaffe, which is the python interface to Caffe:Yahoo messenger for mac os x el capitan. If everything went fine, you are almost there! Add this environment variable to your ~/.bash_profile:And now the final test:You should get the python prompt and no errors at all which means that your python interface to Caffe is fully working and ready for some cool applications:Update: if you receive some errors regarding to locale, you just need to add these new environment vars to your famous ~/.bash_profile file:
You are now ready for playing with some examples:
As you can see, it is not an easy task to configure Caffe environment but finally I got it and can test the Automatic Colorization algorithms for automatically converting grey-pictures into fully colored ones, in a few days I will write down a small post with my result.
Cuda For 10.11 Os X Torrent
Have fun with this great but a bit difficult to configure deep learning framework!!