Nvidia GPU needs to have a PC with it
$ apt-cache search "^nvidia-[0-9]{3}$"
Find out which Nvidia driver can be installed on that PC with apt-cache.
Cuda 10.0 is installed for NVIDIA SDK Manager. More than 410 NVIDIA drivers will be installed. Use a Windows machine that supports Cuda 10.0 or use Jatson. If not supported, give up * NVIDIA SDK Manager *, lower the version of Cuda and install manually
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html Cuda 10.0 does not work because the Gpu driver on older PCs is 410 or less
~~ Parallels Desktop, VMWare, etc. Here we use parallels-desktop ~~ Postscript: Geforce driver does not recognize in virtual environment For Mac, whether to boot Linux with dial boot or use Windows Whether to transfer to an external Jetson Nano and install (#1)
Japanese version Ubuntu Distribution site
Release the cursor with Ctrl + alt ~~ The Parallels Tool CD will be mounted, so you should install it together. ~~
#Update
sudo apt-get update
sudo apt-get upgrade
The Cuda version of the NVIDIA SDK Manager is 10.0. It doesn't work with old PC Gpu and old Nivida drivers. Either give up the automatic installation of the NVIDIA SDK Manager and switch to a manual installation by lowering the version of Cuda, or renewing a new PC
sudo lshw -C display
In a virtual environment, it will be called Virtual Video Adapter
Since the Nivide driver cannot be installed in the virtual environment, the host PC(Linux or Windows)Need to install the Nivide driver on
Find out if Ubuntu recognizes the GPU
$ sudo ubuntu-drivers devices
Find out if Ubuntu recognizes the GPU
$ sudo ubuntu-drivers devices
When the GPU model number is displayed correctly, execute the following command to install the driver.
$ sudo ubuntu-drivers autoinstall
#List NVIDIA drivers installed on your machine
$ dpkg -l | grep nvidia
# apt-List of NVIDIA drivers that can be installed with get
$ apt-cache search "^nvidia-[0-9]{3}$"
Check if the driver version and GPU details are displayed with the nvidia-smi command
$ nvidia-smi
If it is displayed correctly, proceed to install Cuda.
$ nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
nvidia-smi could not confirm the driver of nvidia. Make sure you have the latest drivers.
In this case, disabling Nouveau will solve the problem. First, create /etc/modprobe.d/blacklist-nouveau.conf and edit it as follows.
$ sudo vim /etc/modprobe.d/blacklist-nouveau.conf
Fill in the following contents
blacklist nouveau
options nouveau modeset=0
Next, execute the following command to reload the kernel module.
$ sudo update-initramfs -u
$ sudo reboot
$ nvidia-smi
Restart your PC and if you can run nvidia-smi, proceed to install CUDA
Download Nvidia Driver
Select the driver of the installed GPU, download the Run format file and install it
$ chmod +x GPU driver name.run
$sudo sh GPU driver name.run
Check if the driver version and GPU details are displayed with the nvidia-smi command
$ nvidia-smi
Installing the NVIDIA SDK Manager first would install the latest NVIDIA graphics driver, and then when I tried to install the old graphics driver that was on my machine, I sometimes got an error and couldn't install it. I tried to reinstall using the dependency resolution command aptitude, but it got stuck on the desktop screen.
Note that the machine hung sudo aptitude install libnvidia-encode-418 Reference
It may be better to uninstall and reinstall obediently
sudo apt-get --purge remove nvidia-*
sudo apt-get --purge remove cuda-*
Install NVIDIA SDK Manager You can not install unless you are connected to the net
Download, unzip and install the JetPack archive. ** You need to create an Nvidia account **
Select HostMachien. Select JetPack 4.3.
** Be sure to check Install after download at the bottom ** ** Be sure to check it because an error may occur if you install it during download ** You need about 30G capacity
I was able to install OpenCv and Cuda automatically.
JetPack 4.3 in jetson components:
L4T R32.3.1 (K4.9)
Ubuntu 18.04 LTS aarch64
CUDA 10.0
cuDNN 7.6.3
TensorRT 6.0.1
VisionWorks 1.6
OpenCV 4.1 (4.1.1)
Nsight Systems 2019.6
Nsight Graphics 2019.5
Nsight Compute 2019.3
SDK Manager 1.0.0
/usr/local/cuda
/usr/local/cuda-10.0
$ sudo apt-get install python3-pip
$ sudo pip3 install numpy
$ python3
>>> import cv2
>>> print(cv2)
>>> cv2.__version__
4.1.1
Explanation of Official cuda
$ sudo apt install vim
#update vim
sudo apt install vim
#Put the version number in x and y
$ sudo vim ~/.bashrc
## CUDA and cuDNN paths
export PATH=/usr/local/cuda-x.y/bin:${PATH}
export LD_LIBRARY_PATH=/usr/local/cuda-x.y/lib64:${LD_LIBRARY_PATH}
#Environment variable$LD_LIBRARY_Add NVIDIA driver path to PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/nvidia-number
#save
$ source ~/.bashrc
#Confirm
$ nvcc -V
#Check the location of the CUDA Toolkit
$ which nvcc
#/usr/local/cuda-10.0/bin/nvcc
cuDNN Runtime Library for Ubuntuh cuDNN Developer Library for Ubuntuh cuDNN Code Samples and User Guide for Ubuntu Download and double click to install
Check if the path is in cuda-10.0 / bin If it passes, you can run cuda-install-samples-10.0.sh Run it in your home directory. Enter the folder name in the argument. Running cuda-install-samples-10.0.sh will create a sample folder in your home directory. I have a Make file, so I will make it A sample file will be generated in the bin folder, so try running it. Execute deviceQuery to check if cuda device is valid
$ cd /usr/local/cuda-10.0/bin
# /usr/local/cuda-10.0/bin/cuda-install-samples-10.0.sh
#Copy the directory with the sample code to your home directory
$ cuda-install-samples-10.0.sh folder name
$cd folder name/NVIDIA_CUDA-10.0_Samples
$ make
$ cd NVIDIA_CUDA-10.0_Samples/bin/x86_64/linux/release
$ ./deviceQuery
$ ./bandwidthTest
$ ./volumeRender
[Reference](https://medium.com/@vitali.usau/install-cuda-10-0-cudnn-7-3-and-build-tensorflow-gpu-from-source-on-ubuntu-18-04 -3daf720b83fe)
List the installed packages with the dpkg -l command.
#List cuDNN packages installed on your machine
$ dpkg -l | grep cudnn
#Check the directory where the deb package is stored(-L option)
$ dpkg -L libcudnn7
$ sudo apt install git
$ git clone https://github.com/AlexeyAB/darknet.git
$ cd darknet
darknet$ vim Makefile
GPU=1
CUDNN=1
OPENCV=1
darknet$ make
Find out where libcuda.so is
# libcuda.Find out where so is
$ locate libcuda.so
# libcuda.so place hits
/usr/local/cuda-10.0/targets/x86_64-linux/lib/stubs/libcuda.so
/usr/loca/cuda-10.0/targets/aarch64-linux/lib/stubs/libcuda.so
Once you find the libcuda.so file, create it in the x86_64-linux-gnu folder. Find good articles by creating a symbolic link for libcuda.so.1 in the x86_64-linux folder
sudo ln -s /usr/local/cuda-10.0/targets/x86_64-linux/lib/stubs/libcuda.so /usr/lib/x86_64-linux-gnu/libcuda.so.1
# libcuda.so.1 and libcuda.so Both symbolic links are required
sudo ln -s /usr/local/cuda-10.0/targets/x86_64-linux/lib/stubs/libcuda.so /usr/lib/x86_64-linux-gnu/libcuda.so
#Make again
$ make clean
$ make
[cudnn installation official](https://translate.google.co.jp/translate?hl=ja&sl=auto&tl=ja&u=https%3A%2F%2Fdocs.nvidia.com%2Fdeeplearning%2Fsdk%2Fcudnn-install%2Findex. html% 23installlinux-tar)
Download cuDNN Library for Linux
#Unzip the cuDNN package. Can be decompressed even from Finder
$ tar -xzvf cudnn-x.x-linux-x64-v8.x.x.x.tgz
$ sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
$ sudo cp cuda/lib/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
cudnn.h not found when making no error
libcudnn.so.7.0.Libcudnn other than 1.so delete the file
/usr/local/cuda/lib64 $ sudo rm -rf libcudnn.so libcudnn.so.7
Reproduce
sudo ln -s libcudnn.so.7.0.1 libcudnn.so.7
sudo ln -s libcudnn.so.7 libcudnn.so
make clean
make
change darknet / obj permissions
$sudo chmod 777 home path/darknet/obj home path/darknet/backup
Make again
$ make clean
$ make
Not included in Alexey AB version, so download from pjreddie
$ wget https://pjreddie.com/media/files/yolov3.weights
Try running Yolo
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
Yolo runtime error Not compiled with OpenCV, saving to predictions.png instead
DarkNet Makefile openCv is not 1
$ vim Makefile
OPENCV=1
CUDA driver version is insufficient for CUDA runtime version CUDA driver version is insufficient for CUDA runtime version : No Such File or Directory
on hold [Reference](https://support.dl.sony.com/faq-ja/faq%EF%BC%9A%E3%82%BB%E3%83%83%E3%83%88%E3%82% A2% E3% 83% 83% E3% 83% 97 /) Does it come out if the NVIDIA graphics driver is not installed? investigating
Also update cuda
sudo apt-get install cuda
No CUDA-capable device is detected
CUDA compatible device not detected Because it does not recognize Nvidia's GPU in the virtual environment. Stop the virtual environment and re-install the OS on the host PC
Does the output contain "/ usr / local / cuda-10.0 / lib64" and "/ usr / lib / nvidia-number"?
$ echo $LD_LIBRARY_PATH
Is the output "/ usr / local / cuda-10.0 / bin / nvcc"?
$ which nvcc
/usr/local/cuda-10.0/bin/nvcc
Is the output "/ usr / bin / nvidia-smi"?
$ which nvidia-smi
/usr/bin/nvidia-smi
#Put the version in x
sudo apt remove cuda-x-y
sudo apt autoremove
sudo apt remove libcudnnx libcudnnx-dev libcudnnx-doc
rm -rfv ~/NVIDIA_CUDA-x.y_Samples/ #Erase the sample code.
# ~/.Delete the PATH setting added to bashrc with a text editor.
#Log out to reflect changes in PATH settings
Prepare a machine with Nvidia GPU Nvidia graphics driver cannot be installed in virtual environment The Nividia Sdk Maneger Cuda is 10.0, so it won't work with older Nividia drivers. Use Nvidia Driver that can run Cuda 10.0 Unzip the cuDNN package and copy the specified file (cudnn * .h) etc. to the specified location Find the location of libcuda.so with locate libcuda.so. Put the symbolic link in / usr / lib / x86_64-linux-gnu After editing .bashrc with vim, it will not be applied unless you save it with source ~ / .bashrc
When using Jetson nano, it is better to use Nividia Sdk Maneger. Compatible with cuda10 and Nividia drivers When installing on a PC, check the GPU, and if the Nvidia Driver supports 410 or higher, try using the Nividia SDK. If it does not support less than 410, give up the SDK and do it manually.
** Inspiration-blog ** It's written in great detail
Coda linux official installation information
Nvidia SDK Manager on Docker for a comfortable Jetson life
JetPack setup procedure for Jetson TX2
https://pysource.com/2019/08/29/yolo-v3-install-and-run-yolo-on-nvidia-jetson-nano-with-gpu/
(#1) CUDA on WSL2 If you use WSL2, it seems that you can build Linux on Windows and use the GPU driver of Windows.
Recommended Posts