Linux服务器配置GPU版本的pytorch Torchvision TensorFlow
最近在Linux服务器上配置项目,项目需要使用GPU版本的pytorch和TensorFlow,而且该项目内会同时使用TensorFlow的GPU和CPU。
在服务器上装环境,如果重新开始,就需要下载很多依赖包,而且如果直接在系统上安装包,可能会和服务器上的其他包发生冲突,因此使用Anaconda创建虚拟环境来管理项目的依赖包。Anaconda的安装可以去清华大学的镜像下载,速度比较快,选择对应的版本就可以了 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 。我需要下载python3.6对应的Anaconda可以对照下面这张图片来查看,选择Anaconda3-5.2.0版本就可以了。(但是其实我下载成了anaconda2,不过并不影响后续使用)
Anaconda下载之后会在~/.bashrc中添加一条环境变量。如果首次运行conda命令找不到,就source ~/.bashrc。
配置好Anaconda后,如果要创建虚拟环境,重新下载包也需要很麻烦的操作,而且需要对照以前的项目进行一一下载。这太捞了,我们考虑直接将本地项目的anaconda环境打包好上传到服务器上,就可以使用本地的虚拟环境了。具体做法是,首先到本地的Anaconda环境目录下,我的是/home/timber/anaconda2/envs ,这个目录下就是用户创建的anaconda环境。直接打包
tar -cvf name.tar your_env_name/
然后将这个文件用scp上传到服务器下的(anaconda2_dir)/envs下,
scp name.tar remote_username@remote_ip:anaconda_dir/envs
接着在服务器的anaconda的envs目录下解压name.tar
tar -xvf name.tar
环境就移植到服务器上了,可以在服务器上通过conda env list检验是否有我们刚移植的环境。
本地安装的环境是cpu版本的pytorch和TensorFlow,首先将pytorch卸载
conda activate project #激活环境
conda uninstall pytorch
然后去清华大学的镜像下下载pytorch(因为官方下载超级慢)。需要首先配置清华大学镜像。
依次运行以下命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
上面三条是配置清华镜像源,下面一条是配置pytorch源。然后去到官网,选择你对应的pytorch版本,找到下载命令,比如,最新版本的Pytorch在cuda10下面的官方下载命令是
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
但是,不要用这条命令,由于添加了镜像源,我们去掉上面命令的-c pytorch,运行
conda install pytorch torchvision cudatoolkit=10.1
就可以用清华镜像下载了。如果要下载历史版本的pytorch,以1.0为例,就用
conda install pytorch==1.0 torchvision cudatoolkit=10.1 -c pytorch
安装好之后,torchvision不一定能配套使用,因为Torch已经更换了,所以可能会存在版本不一致的问题,卸载torchvision,然后下载对应版本的torchvision。
出现的第一个问题是torchvision下没有totensor,重装0.2.0的torchvision。
第二个问题是This application failed to start because it could not faind or load the Qt platform plugin "xcb" in "".
Reinstalling the application may fix the problem.这个提示告诉我们在Qt平台插件中找不到XCB,提示我们重装,那我们就重装呗,重装pyqt
conda uninstall pyqt
conda uninstall qt
conda install pyqt
我的项目使用了GPU版本的Tensorflow,需要装GPU版本的TensorFlow。
这里还有个问题是,人脸识别和车辆检测都使用了TensorFlow,一个是CPU版本,一个是GPU版本,会有冲突吗。TensorFlow的GPU版本是可以跑cpu的,所以先把之前的TensorFlow卸载掉。下载了GPU版本的
conda install tensorflow-gpu==1.12.0
但是这里同时下载了cuda的9.0的toolkit,之前下载torch的时候使用了cuda10的toolkit,不知道会怎么样。测试之后发现没有冲突。
现在在这个项目下,有一个GPU的版本,有一个cpu的版本,同时也有两套对应的anaconda环境与之对应,当执行GPU版本时,需要切换到anaconda的GPU环境。这种切换可以是在命令行中
conda activate gpu
也可以是在pycharm中进行project intepreter设置,选中anaconda/envs/project/bin/python3.6,就是选中了该环境。
至此,还剩最后一个问题,GPU版本的TensorFlow是默认使用gpu版本,但是GPU版本的项目有一块是需要使用cpu版本的tensorflow的,那么应该如何设置?
Linux服务器配置GPU版本的pytorch Torchvision TensorFlow的更多相关文章
- tensorflow 一些好的blog链接和tensorflow gpu版本安装
pading :SAME,VALID 区别 http://blog.csdn.net/mao_xiao_feng/article/details/53444333 tensorflow实现的各种算法 ...
- 【转】Ubuntu 16.04安装配置TensorFlow GPU版本
之前摸爬滚打总是各种坑,今天参考这篇文章终于解决了,甚是鸡冻\(≧▽≦)/,电脑不知道怎么的,安装不了16.04,就安装15.10再升级到16.04 requirements: Ubuntu 16.0 ...
- 学习笔记TF046:TensoFlow开发环境,Mac、Ubuntu/Linux、Windows,CPU版本、GPU版本
下载TensorFlow https://github.com/tensorflow/tensorflow/tree/v1.1.0 .Tags选择版本,下载解压. pip安装.pip,Python包管 ...
- 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)
一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...
- 说说Windows7 64bits下安装TensorFlow GPU版本会遇到的一些坑
不多说,直接上干货! 再写博文,回顾在Windows7上安装TensorFlow-GPU的一路坑 Windows7上安装TensorFlow的GPU版本后记 欢迎大家,加入我的微信公众号:大数据躺过的 ...
- Windows7 64bits下安装TensorFlow GPU版本(图文详解)
不多说,直接上干货! Installing TensorFlow on Windows的官网 https://www.tensorflow.org/install/install_windows 首先 ...
- Ubuntu 14.04 64bit 安装tensorflow(GPU版本)
本博客主要用于在Ubuntu14.04 64bit 操作系统上搭建google开源的深度学习框架tensorflow. 0.安装CUDA和cuDNN 如果要安装GPU版本的tensorflow,就必须 ...
- 安装GPU版本的tensorflow填过的那些坑!---CUDA说再见!
那些坑,那些说不出的痛! --------回首安装的过程,真的是填了一个坑又出现了一坑的感觉.记录下了算是自己的笔记也能给需要的人提供一点帮助. 1 写在前面的话 其实在装GPU版本的tensorfl ...
- Ubuntu 16安装GPU版本tensorflow
pre { direction: ltr; color: rgb(0, 0, 0) } pre.western { font-family: "Liberation Mono", ...
随机推荐
- SpringBoot_Web开发_定制错误数据
SpringBoot默认的错误处理机制 默认效果: 1).浏览器,返回一个默认的错误页面 2).如果是其他客户端,默认响应一个json数据 原理: 可以参照ErrorMvcAutoConfig ...
- 关于Windows Server 服务器 安装tomcat部署Java Web 项母
抄至 http://blog.csdn.net/cx0330/article/details/68957914 我遇到的问题是:不知道怎么配置,感觉在服务器上部署一个web项目,应该是很高大上,步骤应 ...
- Docker深入浅出系列 | 容器初体验
目录 Docker深入浅出系列 | 容器初体验 教程目标 预备工作 容器与虚拟化技术 什么是Docker 为什么要用Docker 事例 什么是容器镜像和容器 容器与虚拟机的区别 Vagrant与Doc ...
- 技术派-常用的一些VS相关的宏名
用户宏 ConfigurationName 配置名字,通常是Debug或者Release IntDir 编译器使用的中间目录,产出obj文件 OutDir 链接器使用的输出目录 ProjectDir ...
- Docker应用部署实录(包含完善Docker安装步骤)
Docker应用部署实录(包含完善Docker安装步骤) 前言 首先说一下这篇文章的来源.我之前接手的一个IOT项目,需要安装多个中控服务器.中控服务器需要安装RabbitMQ,Mysql,多个服务, ...
- 【论文笔记系列】AutoML:A Survey of State-of-the-art (上)
之前已经发过一篇文章来介绍我写的AutoML综述,最近把文章内容做了更新,所以这篇稍微细致地介绍一下.由于篇幅有限,下面介绍的方法中涉及到的细节感兴趣的可以移步到论文中查看. 论文地址:https:/ ...
- Python小白入门题一——文件增删改
题目描述:用python对文件进行增(创建一个文件).删(删除一个文件).改(重命名)操作. 说明:新建了一个文件夹files存放新增的两个文件,随后这两个文件被批量重命名成“数字.txt”,之后这两 ...
- 时序数据库 Apache-IoTDB 源码解析之前言(一)
IoTDB 是一款时序数据库,相关竞品有 Kairosdb,InfluxDB,TimescaleDB等,主要使用场景是在物联网相关行业,如:车联网.风力发电.地铁.飞机监控等等,具体应用案例及公司详情 ...
- BZOJ 2653 middle (可持久化线段树+中位数+线段树维护最大子序和)
题意: 左端点在[a,b],右端点在[c,d],求这个线段里中位数(上取整)最大值 思路: 对数组离散化,对每一个值建中位数的可持久化线段树(有重复也没事),就是对于root[i],大于等于i的值为1 ...
- java4选择结构 二
public class jh_01_为什么使用switch选择结构 { /* * 韩嫣参加计算机编程大赛 * 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 * 如果获得第二名,将奖励惠普笔记 ...