目录
查看tensorflow-gpu版本与CUDA版本的对应关系
Could not find 'cudart64_100.dll'问题解决
Install NVidia driver on Ubuntu 16.04
Conda相关
conda下载超时
conda 修改配置信息
从配置信息中可以看到,默认的连接超时时间和默认的读取超时时间分别是9.15s和60s
下面通过参数设置来修改默认的值:
conda config --set
把连接超时的时间设置成40s,读取超时的时间修改成100s
conda config --set remote_connect_timeout_secs 40
conda config --set remote_read_timeout_secs 100
conda更换源
TUNA 还提供了 Anaconda 仓库与第三方源(conda-forge、msys2、pytorch等,查看完整列表)的镜像,各系统都可以通过修改用户目录下的 .condarc
文件。Windows 用户无法直接创建名为 .condarc
的文件,可先执行 conda config --set show_channel_urls yes
生成该文件之后再修改(上一步的conda config --set remote_connect_timeout_secs 40也会生成.condarc文件)。
注:由于更新过快难以同步,我们不同步pytorch-nightly
, pytorch-nightly-cpu
, ignite-nightly
这三个包。
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
即可添加 Anaconda Python 免费仓库。
运行 conda clean -i
清除索引缓存,保证用的是镜像站提供的索引。
添加中科大源
在命令行里输入以下命令
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
查看Conda已经安装的包
先进入conda环境,再输入pip list即可。也可以用conda list,效果是一样的。
查看Conda可以安装的包版本
先进入conda环境,再输入 conda serach <package-name> 即可。也可以用pip search.
conda的python import的包版本不对
我在anaconda里安装的tensorflow版本是2.0,但import时发现版本是1.13。因为这个2.0的python是用pip安装的,开始还以为pip安装的包被conda找到的优先级比较低,所以找到了一个公共版本的tensorflow。后来发现问题不是tensorflow,而是python. 在activate conda环境后直接打python,启动的不是该环境下的python,而是公共python.
解决办法就是用where python列出当前目录下能找到的所有python,然后找到conda目录下的那个,比如 D:\ProgramData\Anaconda3\envs\yolov3-tf2-gpu\python.exe,然后就打完整路径的python,就可以保证找到正确的python,以及正确的tensorflow了。
Pip相关
更换pip源到国内镜像
pip国内的一些镜像
阿里云 https://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
修改源方法:
临时使用:
可以在使用pip的时候在后面加上-i参数,指定pip源
eg: pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple
永久修改:
linux:
修改 ~/.pip/pip.conf (没有就创建一个), 内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
windows:
直接在user目录中创建一个pip目录,如:C:\Users\xx\pip,新建文件pip.ini,内容如下
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
pip install超时解决
在上面的pip.conf (linux)或pip.ini (windows)中[global]下面添加一行:timeout = 6000
CUDA相关
查看CUDA版本与显卡驱动版本的对应关系
查看CUDA及驱动版本:nvidia-smi。其中第一行就有驱动及CUDA版本信息。
查看tensorflow-gpu版本与CUDA版本的对应关系
版本 Python 版本 编译器 编译工具 cuDNN CUDA
tensorflow_gpu-2.0.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.19.2 7.4.1以及更高版本 CUDA 10.0 (需要 410.x 或更高版本)
tensorflow_gpu-1.13.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.19.2 7.4 10.0
tensorflow_gpu-1.12.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.11.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.10.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.9.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.11.0 7 9
tensorflow_gpu-1.8.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.10.0 7 9
tensorflow_gpu-1.7.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.9.0 7 9
tensorflow_gpu-1.6.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.9.0 7 9
tensorflow_gpu-1.5.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.8.0 7 9
tensorflow_gpu-1.4.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.5.4 6 8
tensorflow_gpu-1.3.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.4.5 6 8
tensorflow_gpu-1.2.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.4.5 5.1 8
tensorflow_gpu-1.1.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.4.2 5.1 8
tensorflow_gpu-1.0.0 2.7、3.3-3.6 GCC 4.8 Bazel 0.4.2 5.1 8
Tensorflow与Keras的版本对应
ramework | Env name (--env parameter) | Description | Docker Image | Packages and Nvidia Settings |
---|---|---|---|---|
TensorFlow 1.14 | tensorflow-1.14 | TensorFlow 1.14.0 + Keras 2.2.5 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.14 |
TensorFlow 1.13 | tensorflow-1.13 | TensorFlow 1.13.0 + Keras 2.2.4 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.13 |
TensorFlow 1.12 | tensorflow-1.12 | TensorFlow 1.12.0 + Keras 2.2.4 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.12 |
tensorflow-1.12:py2 | TensorFlow 1.12.0 + Keras 2.2.4 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.11 | tensorflow-1.11 | TensorFlow 1.11.0 + Keras 2.2.4 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.11 |
tensorflow-1.11:py2 | TensorFlow 1.11.0 + Keras 2.2.4 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.10 | tensorflow-1.10 | TensorFlow 1.10.0 + Keras 2.2.0 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.10 |
tensorflow-1.10:py2 | TensorFlow 1.10.0 + Keras 2.2.0 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.9 | tensorflow-1.9 | TensorFlow 1.9.0 + Keras 2.2.0 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.9 |
tensorflow-1.9:py2 | TensorFlow 1.9.0 + Keras 2.2.0 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.8 | tensorflow-1.8 | TensorFlow 1.8.0 + Keras 2.1.6 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.8 |
tensorflow-1.8:py2 | TensorFlow 1.8.0 + Keras 2.1.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.7 | tensorflow-1.7 | TensorFlow 1.7.0 + Keras 2.1.6 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.7 |
tensorflow-1.7:py2 | TensorFlow 1.7.0 + Keras 2.1.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.5 | tensorflow-1.5 | TensorFlow 1.5.0 + Keras 2.1.6 on Python 3.6. | floydhub/tensorflow | TensorFlow-1.5 |
tensorflow-1.5:py2 | TensorFlow 1.5.0 + Keras 2.1.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.4 | tensorflow-1.4 | TensorFlow 1.4.0 + Keras 2.0.8 on Python 3.6. | floydhub/tensorflow | |
tensorflow-1.4:py2 | TensorFlow 1.4.0 + Keras 2.0.8 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.3 | tensorflow-1.3 | TensorFlow 1.3.0 + Keras 2.0.6 on Python 3.6. | floydhub/tensorflow | |
tensorflow-1.3:py2 | TensorFlow 1.3.0 + Keras 2.0.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.2 | tensorflow-1.2 | TensorFlow 1.2.0 + Keras 2.0.6 on Python 3.5. | floydhub/tensorflow | |
tensorflow-1.2:py2 | TensorFlow 1.2.0 + Keras 2.0.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.1 | tensorflow | TensorFlow 1.1.0 + Keras 2.0.6 on Python 3.5. | floydhub/tensorflow | |
tensorflow:py2 | TensorFlow 1.1.0 + Keras 2.0.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 1.0 | tensorflow-1.0 | TensorFlow 1.0.0 + Keras 2.0.6 on Python 3.5. | floydhub/tensorflow | |
tensorflow-1.0:py2 | TensorFlow 1.0.0 + Keras 2.0.6 on Python 2. | floydhub/tensorflow | ||
TensorFlow 0.12 | tensorflow-0.12 | TensorFlow 0.12.1 + Keras 1.2.2 on Python 3.5. | floydhub/tensorflow | |
tensorflow-0.12:py2 | TensorFlow 0.12.1 + Keras 1.2.2 on Python 2. | floydhub/tensorflow | ||
PyTorch 1.1 | pytorch-1.1 | PyTorch 1.1.0 + fastai 1.0.57 on Python 3.6. | floydhub/pytorch | PyTorch-1.1 |
PyTorch 1.0 | pytorch-1.0 | PyTorch 1.0.0 + fastai 1.0.51 on Python 3.6. | floydhub/pytorch | PyTorch-1.0 |
pytorch-1.0:py2 | PyTorch 1.0.0 on Python 2. | floydhub/pytorch | ||
PyTorch 0.4 | pytorch-0.4 | PyTorch 0.4.1 on Python 3.6. | floydhub/pytorch | PyTorch-0.4 |
pytorch-0.4:py2 | PyTorch 0.4.1 on Python 2. | floydhub/pytorch | ||
PyTorch 0.3 | pytorch-0.3 | PyTorch 0.3.1 on Python 3.6. | floydhub/pytorch | PyTorch-0.3 |
pytorch-0.3:py2 | PyTorch 0.3.1 on Python 2. | floydhub/pytorch | ||
PyTorch 0.2 | pytorch-0.2 | PyTorch 0.2.0 on Python 3.5 | floydhub/pytorch | |
pytorch-0.2:py2 | PyTorch 0.2.0 on Python 2. | floydhub/pytorch | ||
PyTorch 0.1 | pytorch-0.1 | PyTorch 0.1.12 on Python 3. | floydhub/pytorch | |
pytorch-0.1:py2 | PyTorch 0.1.12 on Python 2. | floydhub/pytorch | ||
Theano 0.9 | theano-0.9 | Theano rel-0.8.2 + Keras 2.0.3 on Python3.5. | floydhub/theano | |
theano-0.9:py2 | Theano rel-0.8.2 + Keras 2.0.3 on Python2. | floydhub/theano | ||
Caffe | caffe | Caffe rc4 on Python3.5. | floydhub/caffe | |
caffe:py2 | Caffe rc4 on Python2. | floydhub/caffe | ||
Torch | torch | Torch 7 with Python 3 env. | floydhub/torch | |
torch:py2 | Torch 7 with Python 2 env. | floydhub/torch | ||
Chainer 1.23 | chainer-1.23 | Chainer 1.23.0 on Python 3. | floydhub/chainer | |
chainer-1.23:py2 | Chainer 1.23.0 on Python 2. | floydhub/chainer | ||
Chainer 2.0 | chainer-2.0 | Chainer 1.23.0 on Python 3. | floydhub/chainer | |
chainer-2.0:py2 | Chainer 1.23.0 on Python 2. | floydhub/chainer | ||
MxNet 1.0 | mxnet | MxNet 1.0.0 on Python 3.6. | floydhub/mxnet |
查看cuDNN的版本
因为cuDNN本质上就是一个C语言的H头文件,
(1)在windows平台下:
直接进入安装目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\include 之下,然后找到
cudnn.h 的头文件,直接到开查看,在最开始的部分会有如下定义:
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 5
#define CUDNN_PATCHLEVEL 0
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
即7500,也就是cudnn的版本为7.5.0版本;
(2)在Linux下当然也可以直接查看,但是通过命令更简单,进入到安装目录,执行如下命令:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 即可查询
Could not find 'cudart64_100.dll'问题解决
win10 x64 系统中tensorflow遇到ImportError: Could not find 'cudart64_100.dll'。检查cuda及驱动的版本又是匹配的。参考这篇文章,发现其实是环境变量的问题。电脑上其实是有这个dll的,但是python没有找到它。解决的方法:
- 找到这个dll,复制到工程目录下。如果找不到,就从网上找一个,也是可以的。
- 将这个dll所在的目录添加到path环境变量
Install NVidia driver on Ubuntu 16.04
1..需要禁用 nouveau,只有在禁用掉 nouveau 后才能顺利安装 NVIDIA 显卡驱动,禁用方法就是在 /etc/modprobe.d/blacklist-nouveau.conf 文件中添加一条禁用命令,首先需要打开该文件,通过以下命令打开:
sudo gedit /etc/modprobe.d/blacklist.conf
输入密码后在最后一行加上: blacklist nouveau 是将Ubuntu自带的显卡驱动加入黑名单
Ctrl +C保存后注意此时还需执行以下命令使禁用 nouveau 真正生效终端输入 : sudo update-initramfs -u
2. 重启,这里要尤其注意,安装显卡驱动要先切换到文字界面,(按Ctrl+Alt+F1~F6).所以,启动电脑后,先进入文字界面。 然后,首先输入命令sudo service lightdm stop
关闭桌面服务现在可以安装驱动了,先进入家目录 cd ~ ,然后: sudo sh ./NVIDIA-Linux-x86_64-375.20.run,按照提示一步步来完成后,再次重启电脑。
安装完成之后输入以下指令进行验证: sudo nvidia-smi ,若列出了GPU的信息列表则表示驱动安装成功。