12

I wanna share my experience on installing CUDA 7.5 (in order to use with Theano) on Ubuntu 15.10.

  1. I installed Ubuntu 15.10 and the video driver (352.41) from the "Additional Drivers" tab;

  2. Installed few dependencies like nvidia-modprobe (fix permissions problems), and for the samples compiling freeglut3-dev libx11-dev libxmu-dev libxi-dev libglu1-mesa-dev

  3. And because it needs GCC 4.9: sudo apt-get install gcc-4.9 g++-4.9, then made symlinks in /opt/compiler_cuda(created the folder with an arbitrary name of my choice) as follows:

    $ ls -la /opt/compiler_cuda/
    lrwxrwxrwx 1 root root   22 Nov  2 16:14 cc -> /opt/compiler_cuda/gcc
    lrwxrwxrwx 1 root root   16 Nov  2 16:13 g++ -> /usr/bin/g++-4.9
    lrwxrwxrwx 1 root root   16 Nov  2 16:12 gcc -> /usr/bin/gcc-4.9
    

    Registered update-alternatives with:

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
    
  4. Downloaded "runfile (local)" 15.04 version, from CUDA 7.5 Downloads; and installed with:

    sudo sh cuda_7.5.18_linux.run --silent --toolkit --override
    sudo sh cuda_7.5.18_linux.run --silent --samples --override
    

    and appended in .bash_aliases (.bashrc reads it):

    export PATH=/usr/local/cuda-7.5/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH
    
  5. Appended compiler-bindir = /opt/compiler_cuda in nvcc.profile, so nvcc can use it.

And possibly someone can tell me if I'm going to fry my card for using wrong toolkit version?!

muru
  • 207,228

2 Answers2

2

It isn't dangerous to use the CUDA toolkit from 15.04. The toolkit interfaces from the nvidia driver which is all the Nvidia stack and code base. That is why people use CUDA because it gets them closer to the hardware to get performance increases.

Goddard
  • 4,860
0

This is a shady idea overall. You will be able to make your own .cu cuda files, compile them, and run them. But if you try to link against libcudart to do basic CUDA api calls, it will fail. (In other words, cpp files that include cuda libraries won't work). You have two difference driver sets in play, different versions. One is libcudart and other cuda libs from apt-get. Another version is from the run file.

Overall it should either be apt-get for all CUDA files, or build all cuda by hand. Not mix the two.

But the instructions on running the .run file were very helpful. Thanks.