This document provides instructions to install/remove Cuda 4.2 on Fedora. The final goal will be to be able to run GPUGRID applications.
Installation
Prerequisites
First, be sure your GPU is compatible with CUDA. Refer to this page. Then, install required packages:
su -c 'yum install wget make gcc-c++ freeglut-devel libXi-devel libXmu-devel mesa-libGLU-devel'
Downloads
You will have to download two programs: "CUDA Toolkit" and "GPU Computing SDK". Refer to the NVidia CUDA downloads page for latest versions.
Let's download and save them on the Desktop.
32 bit :
cd ~/Desktop wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/cudatoolkit_4.2.9_linux_32_fedora14.run wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/sdk/gpucomputingsdk_4.2.9_linux.run
64 bit :
cd ~/Desktop wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/cudatoolkit_4.2.9_linux_64_fedora14.run wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/sdk/gpucomputingsdk_4.2.9_linux.run
Installation of CUDA Toolkit
Go to "Desktop", add execution permissions of the cudatoolkit downloaded file, and execute it with root permissions:
cd ~/Desktop chmod +x cudatoolkit_4.2.9_linux_* su -c './cudatoolkit_4.2.9_linux_*'
When it asks you:
Enter install path (default /usr/local/cuda, '/cuda' will be appended):
type:
/opt
Installation of GPU Computing SDK
As before, go to "Desktop", add execution permissions of the gpucomputingsdk downloaded file, and execute it without root permissions:
cd ~/Desktop chmod +x gpucomputingsdk_4.2.9_linux.run ./gpucomputingsdk_4.2.9_linux.run
When it asks you:
Enter install path (default ~/NVIDIA_GPU_Computing_SDK):
press [enter] (to use default path)
When it asks you:
Enter CUDA install path (default /usr/local/cuda):
type
/opt/cuda
Preparation
Update variables, and this on every boot:
export PATH=$PATH:/opt/cuda/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64 echo 'export PATH=$PATH:/opt/cuda/bin' >> ~/.bash_profile echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64' >> ~/.bash_profile
Compilation
Fedora 16
We finally compile:
32bits:
cd ~/NVIDIA_GPU_Computing_SDK/C LINKFLAGS=-L/usr/lib/nvidia/ make
64bits:
cd ~/NVIDIA_GPU_Computing_SDK/C LINKFLAGS=-L/usr/lib64/nvidia/ make
Fedora 17
Some compatibility problems appeared with gcc-4.7. You will have to install a compatibility version:
su -c 'yum install compat-gcc-34 compat-gcc-34-c++'
Create a symbolic link to make CUDA use gcc-3.4:
su -c 'ln -s /usr/bin/gcc34 /opt/cuda/bin/gcc'
Now, you can compile.
32bits:
cd ~/NVIDIA_GPU_Computing_SDK/C LINKFLAGS=-L/usr/lib/nvidia/ make cuda-install=/opt/cuda
64bits:
cd ~/NVIDIA_GPU_Computing_SDK/C LINKFLAGS=-L/usr/lib64/nvidia/ make cuda-install=/opt/cuda
Test
Now, let's test if CUDA is working correctly. Type:
~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/fluidsGL
You should see something like this on the command line:
[fluidsGL] starting... [fluidsGL] - [OpenGL/CUDA simulation] starting... OpenGL device is Available CUDA device [GeForce GT 610] has 1 Multi-Processors
A window with a fluid dynamics simulation should appear. Use the mouse pointer to generate some activity:
Now we can use GPUGRID applications with BOINC.
There are additional test programs underneath ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/
.
If the following error message appears:
[fluidsGL] starting... [fluidsGL] - [OpenGL/CUDA simulation] starting... OpenGL device is NOT Available, [fluidsGL] exiting... [fluidsGL] test results... WAIVED
You are probably running the application as a user that does not currently have access to the display.
Cleanup
Now that CUDA has been installed, the installers files are useless. You can remove them:
cd ~/Desktop rm cudatoolkit_4.2.9_linux_* rm gpucomputingsdk_4.2.9_linux.run
Uninstallation
If you want to totally remove Cuda, juste delete the /opt/cuda and ~/NVIDIA_GPU_Computing_SDK folders:
rm -r ~/NVIDIA_GPU_Computing_SDK su -c 'rm -r /opt/cuda'
and remove the export PATH=$PATH:/opt/cuda/bin
and export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64
lines of the ~/.bash_profile file.