|
|
| (48 intermediate revisions by the same user not shown) |
| Line 1: |
Line 1: |
|
| |
|
| ==Installation== | | ==Installation== |
| ===Linux===
| | I suggest using conda to install cuda for version control your project. |
| [https://www.pugetsystems.com/labs/hpc/How-To-Install-CUDA-10-1-on-Ubuntu-19-04-1405/#Step3)InstallCUDA\ Reference]
| |
|
| |
|
| * Install the latest nvidia drivers from the standard repo, e.g. <code>nvidia-drivers-440</code><br>
| | Note that <code>nvidia-smi</code> lists the maximum CUDA version supported by the GPU driver, not the installed version of CUDA.<br> |
| * Install [https://developer.nvidia.com/cuda-toolkit Cuda Toolkit] separately without the drivers.<br>
| | You can have a different version of CUDA installed in each conda environment, independently of the version supported by the GPU driver. |
| ** Use one of the deb install options.
| |
| * You may also want to install the following:
| |
| ** [https://developer.nvidia.com/rdp/cudnn-download cuDnn]<br>
| |
| ** TensorRT
| |
|
| |
|
| ;Copied from tensorflow
| | ===Conda=== |
| <pre>
| | See [https://anaconda.org/nvidia/cuda-toolkit nvidia/cuda-toolkit] and [https://anaconda.org/nvidia/cuda-libraries-dev nvidia/cuda-libraries-dev] |
| # Add NVIDIA package repositories
| |
| wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
| |
| sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
| |
| sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
| |
| sudo apt-get update
| |
| wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
| |
| sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
| |
| sudo apt-get update
| |
|
| |
|
| # Install NVIDIA driver | | For example: |
| sudo apt-get install --no-install-recommends nvidia-driver-430
| | <syntaxhighlight lang="bash"> |
| # Reboot. Check that GPUs are visible using the command: nvidia-smi
| | # Install the runtime only |
| | conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit |
| | # Install the runtime and the development tools |
| | conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit cuda-libraries-dev cuda-nvcc |
| | </syntaxhighlight> |
|
| |
|
| # Install development and runtime libraries (~4GB)
| | ===Ubuntu=== |
| sudo apt-get install --no-install-recommends \
| | [https://developer.nvidia.com/cuda-toolkit CUDA Toolkit] |
| cuda-10-1 \
| |
| libcudnn7=7.6.4.38-1+cuda10.1 \
| |
| libcudnn7-dev=7.6.4.38-1+cuda10.1
| |
|
| |
|
| | <syntaxhighlight lang="bash"> |
| | # Install drivers |
| | sudo apt install nvidia-driver-565-open |
| | </syntaxhighlight> |
|
| |
|
| # Install TensorRT. Requires that libcudnn7 is installed above.
| | ===GCC Versions=== |
| sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \
| | <code>nvcc</code> sometimes only supports older gcc/g++ versions. |
| libnvinfer-dev=6.0.1-1+cuda10.1 \
| | To make it use those by default, create the following symlinks: |
| libnvinfer-plugin6=6.0.1-1+cuda10.1
| |
| </pre> | |
|
| |
|
| | * <code>sudo ln -s /usr/bin/gcc-6 /usr/local/cuda/bin/gcc</code> |
| | * <code>sudo ln -s /usr/bin/g++-6 /usr/local/cuda/bin/g++</code> |
|
| |
|
| For tensorflow and pytorch, you may need to add <code>LD_LIBRARY_PATH=/usr/local/cuda/lib64</code> to your environment variables.<br>
| | Alternatively, you can use <code>-ccbin</code> and point to your gcc: |
| You can also do this in PyCharm.<br>
| | <pre> |
| [[File:Pycharm LD LIBRARY PATH config.png| 200x200px]]
| | -ccbin /usr/local/cuda/bin/gcc |
| [[File:Pycharm LD LIBRARY PATH console config.png| 200x200px]]
| | </pre> |
|
| |
|
| ==References== | | ==References== |
| * [https://devblogs.nvidia.com/even-easier-introduction-cuda/ An Even Easier Introduction To Cuda] | | * [https://devblogs.nvidia.com/even-easier-introduction-cuda/ An Even Easier Introduction To Cuda] |
| | |
| | [[Category:Programming languages]] |
| | [[Category:GPU Programming languages]] |