一. 安装nvidia 驱动: B9 V7 c5 z( i' V1 D! m6 Z' |
2 p! f+ a8 a1 l( }. n: l! k( Y
下载离线安装包 NVIDIA-Linux-x86_64-440.82.run1 r) _8 J; ?, ^% Q; o/ }7 ^9 ]1 N
1.禁用nouveau:命令如下:
% Q0 @) O s/ [" H6 i ~1 f5 @6 r& R1 M; \* e3 {2 K4 a
sudo chmod 666 /etc/modprobe.d/blacklist.conf
! \5 U9 Z( Z* T! y' H! r7 Ysudo vim /etc/modprobe.d/blacklist.conf
" L9 a1 i) ^& C; p6 C# o5 d2.在最后面添加如下代码:7 @5 y* L, h3 [' Q6 {; D2 w
d6 z" ^4 h- S$ w8 R- N0 V
blacklist nouveau
6 X, E; T; |1 [% vblacklist lbm-nouveau
! v0 p2 z3 E6 _& O! ^options nouveau modeset=0
$ |. y/ @) t5 z" |9 ealias nouveau off
( `7 g* T6 L2 i- H# s2 e# N1 L0 Nalias lbm-nouveau off( I S0 ?: Q. Z+ C4 q
3.然后保存(esc键,然后shift键+:键,然后输入wq,回车)& V% ]: c1 x/ I& c& L* i& E
- g6 T7 X! Y4 g3 K1 M9 b
为了保证完全禁用掉,还要在内核中直接禁用Nouveau:
4 Y8 { c. y4 h* S( M) ~8 z命令如下:
' e3 G/ I" k1 ~1 w! z3 k& l$ ^echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
" m% ?0 R* Y: u完成后再把权限改回出来,命令如下:9 E/ ]0 U- [: u+ ` C5 T- z, K) e% S
sudo chmod 644 /etc/modprobe.d/blacklist.conf: H: z8 S5 z7 S
这之后,更新配置试生效,命令如下:6 X& N9 T. H! y3 x
sudo update-initramfs -u
, S9 L3 F) R, c4.重启:sudo reboot
% Z2 b; _' V) p+ V( o: z3 N! a2 {; c; T5 u0 m) b
重启完成后,我们需要关闭图形界面,如果没有关闭图形界面,开始安装,测试时会报错。
% K' g2 v% Y: d0 t- Bctrl+alt+f1 切换到终端界面' {5 F. r- X5 @# p2 J% \0 G
关闭图形界面命令如下:
" G, F* w& n2 @; `+ o1 s- p! t/ Z$ G) d
service lightdm stop
% V& t/ W4 u# r9 ]& \4 Q7 K5. 开始安装
; I3 t0 s3 H( `
! Q3 N: U: r, Q; Msudo ./NVIDIA-Linux-x86_64-440.82.run -no-x-check -no-nouveau-check -no-opengl-files' W# C7 W- f' o9 L1 Z* i, r
安装完成$ @& D1 y: \' b1 F! h1 t
二. 安装cuda
; H0 E0 Z. i! P1 u/ q* ~
p/ | {8 d; V |0 j3 ?% r下载离线安装包 cuda_10.2.89_440.33.01_linux.run
4 Q' i2 A! t' ~" \4 t: c. `3 ^4 Psudo ./cuda_10.2.89_440.33.01_linux.run
4 d+ Z; [; O( [1 U开始安装
: `( m( X( _8 C; P3 Faccept
7 O' W0 X0 f" y2 J取消选中驱动安装
$ e# U: E% W! E' N5 ]; Ginstall 完成# x) ^& ? `: m
查看是否安装成功' p$ I+ Q" r% n2 g
nvidia-smi4 P: y$ F) d( H, m T
下一步,配置变变量环境:
; y1 I9 V: R; v% j0 w3 O/ t) O执行命令:
$ l i* S. w( u% A. L; T. Evim ~/.bashrc
$ h: w/ H# g+ K4 d" v4 B. {添加如下代码:
& U* ^4 a9 X) i( t- g* {export PATH=/usr/local/cuda-10.2/bin${PATH:+:${PATH}}export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}然后保存" E7 M+ Z4 g" h3 c7 O( b2 y2 f
输入命令:
1 V( f4 y& H' I# Lsource ~/.bashrc8 a, {' _2 D3 e, i
重启:! m" E) T0 N: S# l. B1 i
sudo reboot
: h; _9 m# t: T3 c3 F3 b: E! V开始测试cuda是否安装成功:7 ~ C {' ~2 @
命令如下:1 t" W9 M0 F& Y/ H
cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery4 O" `$ K) q0 n1 m) u
sudo make
/ Q0 a) L/ O& `- }/ o! D./deviceQuery
- P/ O: B% T9 a三. 安装cudnn5 @5 R6 i; S) b$ ^1 X# @$ g' h
, ^6 w+ {7 H( A4 [下载离线安装包
& T3 n1 f6 K9 D( I' k8 r6 Hhttps://developer.nvidia.com/cudnn0 {1 \$ k1 y& a# L
libcudnn7_7.6.5.32-1+cuda10.2_amd64.deb
% r. k, W7 x( P& P; A/ f: ~libcudnn7-dev_7.6.5.32-1+cuda10.2_amd64.deb* {) y' T- d- Y: t1 K
libcudnn7-doc_7.6.5.32-1+cuda10.2_amd64.deb
( g' o) M0 f: X1 T3 W$ O8 H# Ysudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.2_amd64.deb7 y* R" C- E9 |% w2 d+ e) z
sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.2_amd64.deb& C4 Q- n; h; e% \3 }, v
sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.2_amd64.deb
: p/ f0 }( C$ ^& ]四. 安装conda
& v4 o$ Q$ n& y. l) e2 y6 J! d' C1 ~" [8 r
下载 Anaconda3-4.2.0-Linux-x86_64.sh
3 ^, k; U0 g+ e7 Ohttps://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh
" w! z) @. I8 }$ o, b" O安装bash Anaconda3-4.2.0-Linux-x86_64.sh- W/ z& J5 R" F: O8 L
一路安装... 并加入环境变量
3 a1 ?9 ~! H; h五. 离线安装pytorch+torchvision
: f1 U( B- A( j9 _% T
' e. _) h1 z" z; L0 X2 ]下载离线安装包 pytorch-1.5.0-py3.5_cuda10.2.89_cudnn7.6.5_0.tar.bz21 L0 O: y' w7 q# i, `
https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/0 m2 S2 |7 ]9 J4 E& }, Q. P/ G' B
下载离线安装包 torchvision-0.6.0-cp35-cp35m-linux_x86_64.whl; e9 U ^& ^( w( i; _; \" z0 e4 S
https://download.pytorch.org/whl/torch_stable.html
; ^) `- \" }2 G3 c1. 安装torch, ~+ s3 ~: A3 e" f
6 F/ x( }4 H" `3 U5 x. N* c在同一文件夹下运行:
_) z+ O: m) Z9 |conda install pytorch-1.5.0-py3.5_cuda10.2.89_cudnn7.6.5_0.tar.bz2! u1 a3 d/ N4 H/ u
2. 再安装torchvision :
4 Y! A2 Y8 B1 E4 h& e7 C5 s/ F7 h3 {9 _) l
conda install torchvision 最终失败
5 ?6 q6 o- i; \! k' U/ ^9 y' Z3 i通过 pip install torchvision 安装也失败( R) |0 p4 \- M4 X( h) ]& L! ~
最后还是通过离线安装; o q/ \, `5 J$ ]* p
conda install torchvision-0.4.2-py35_cu101.tar.bz2E- e! h& `5 d* _4 t, t
安装Pytorch之后,输入import torch,出现ImportError: libmkl_gnu_thread.so: cannot open shared object file: No such file or directory. h" \: ], `$ ]" D" W5 C; E
9 x1 ?) Z- ]/ A% H首先,尝试把相关的so文件添加到路径里,ldconfig 更新一下,不能解决问题.
' j2 q5 M0 L3 n) [3 X# J1.使用如下命令debug一下
# b. p. v1 ^2 H6 q6 l9 d8 j0 gconda install --debug mkl
& G1 n/ R% z; D2.使用如下命令重新装一下mkl包
6 I7 J& c7 Y+ G, N. ^- O4 mconda install mkl
. d0 U( a7 x3 a0 c# m) }* P原文链接:https://blog.csdn.net/qq_22704577/java/article/details/539280590 ?9 h0 q& V$ [7 W+ z& j
测试
; Q( a3 M5 G* S+ b% l9 e1 h+ f5 i/ p
, ]7 V# d2 _' t5 }' f- n进入python交互式环境
B( Z: j& t8 J* Y Wpython+ Q$ x! o. [* i# v6 ^2 W/ x$ G) D1 X; B
import torchprint(torch.__version__) 六 opencv安装+ c; Y) S# ?% {0 p' Q
7 Y3 r4 Y- d8 O. e& ^. _
安装依赖/ d F; ]) H9 O' s3 L% J% P
9 a+ M" q' l) Q$ c
必须要安装的依赖,通过命令安装:' z; t1 [% k# N2 D2 y" C' e, A
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev如果需要其他的功能,还需安装一些,命令:
0 Z8 z B$ \4 rsudo apt-get install python-dev python-numpy python3-dev python3-numpysudo apt-get install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev安装OpenCV
8 K: M' T, T) ?
4 z! m0 N& s! q" S! X! ^下载OpenCV的安装包,下载Sources包,opencv-4.2.0.tar.gz 解压:
% ~6 G& O4 l* Q. K( Ptar -zxvf opencv-4.2.0.tar.gz2 D" g$ R; h) m; X( S0 ~% ~
在解压的文件夹里新建一个文件夹用来编译OpenCV:
2 L6 w' a6 ~2 @; Q( G5 u# icd opencv-4.0.1mkdir releasecd release然后在新建的这个文件里运行cmake:( O3 X& Q/ y' I) Q: q! E2 M
cmake -DCMAKE_BUILD_TYPE=Release \-DOPENCV_GENERATE_PKGCONFIG=ON \-DCMAKE_INSTALL_PREFIX=/usr/local ..OpenCV4默认不生成.pc文件,OPENCV_GENERATE_PKGCONFIG=ON才会生成。
- c. z8 J, z2 x& k9 D! c之后就是编译和安装了,我的电脑是四核八线程,可以运行make -j8,但我不想编译时影响我工作,所以用-j7,如果是四核可用make -j4。
! t" N/ O! Y! [6 Z. x& P e. X7 P& xmake -j7sudo make install如果你安装了python-dev,这时Python应该可以使用OpenCV了,在终端输入python,可以查看OpenCV版本:
8 x4 R& }" Y" C3 L$ python >>> import cv2>>> cv2.__version__'4.0.1'>>> 通过,安装Python-OpenCV解决/ {" A7 T, c N
pip install opencv-python$ J3 u$ B- @! w$ Z7 M
之后就是配置c++了,先在/etc/ld.so.conf.d/文件夹下新建一个opencv4.conf,里面写入/usr/local/lib。
% I% S) X2 O5 ]) W3 ^4 y+ O/ icd /etc/ld.so.conf.d/sudo touch opencv4.confsudo sh -c 'echo "/usr/local/lib" > opencv4.conf'更新pkg-config:" j y3 u6 a8 ?. y
sudo ldconfig9 {" _/ H9 T' `, L
解决报错1:darknet-yolo:fatal error: opencv2/opencv.hpp: No such file or directory4 K7 i) D x! Z* s4 Q
6 O. z# G8 g# L3 S* \, msudo apt install libopencv-dev4 y6 j7 t9 p6 H1 n4 E$ t
解决报错2:/bin/sh: 1: nvcc: not found make: *** [obj/convolutional_kernels.o] Error 127! O7 l1 a; W" `
/ H9 \; |7 j8 c1 q; l
修改makefile+ t7 \. P, q7 I% f4 G5 C
NVCC = /usr/local/cuda-10.2/bin/nvcc解决报错3:cuda error: out of memory darknet: ./src/cuda.c:36: check_error: Assertion `0' failed# H1 d3 c7 c+ a( U* ]
* K( `/ H2 V% X那么,修改cfg文件夹下的yolov3.cfg文件,原始的yolov3.cfg文件开头为:
7 O5 v* |, A! p1 g[net]# Testing#batch=1#subdivisions=1# Trainingbatch=64subdivisions=16修改为:( F) h1 P. }- h/ s1 g7 f
[net]# Testingbatch=1subdivisions=1# Training#batch=64#subdivisions=168 c8 S; {. }/ U# q) ]1 C. ~0 D
Java吧 收集整理 java论坛 www.java8.com