使用Anaconda 创建指定cuda 版本的虚拟环境

2023-11-11

目的:解决多cuda版本共存问题.

首先是安装anaconda

官网或者是清华源下载安装包,以下用 Anaconda3-2019.10-Linux-x86_64.sh 举例

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2019.10-Linux-x86_64.sh #从清华源上下载安装包
chmod +x Anaconda3-2019.10-Linux-x86_64.sh #添加执行权限
#如果想多用户使用推荐安装到/opt/anaconda3 目录中(需要sudo权限)
sudo bash Anaconda3-2019.10-Linux-x86_64.sh -b -p /opt/anaconda3 #执行安装
echo -e '. /opt/anaconda3/etc/profile.d/conda.sh \n conda activate' |tee -a ~/.bashrc  #添加环境变量到当前用户的".bashrc"文件中

#其他用户想使用anaconda也是执行上一条相同的命令即可
source ~/.bashrc #使环境变量生效.

可选操作

参照 anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 修改anaconda源
vim ~/.condarc 添加如下内容

channels:
  - defaults
show_channel_urls: true
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

#修改pip源
 

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

常用conda 命令

conda create -n tf2.4 python=3.7 #创建一个名称为tf2.4的虚拟环境,python版本为3.7
conda env list #查询存在的conda 虚拟环境
conda remove -n tf2.4 numpy #删除tf2.4虚拟环境中的 numpy 包
conda remove -n tf2.4 --all #删除整个tf2.4虚拟环境
conda activate tf2.4 #激活tf2.4 虚拟环境
conda env export > environment.yaml #导出当前虚拟环境
conda env create -f environment.yaml #通过已有的配置文件来创建虚拟环境,注意如果是通过其他用户的environment.yaml 来创建虚拟环境,则需要提前修改一下 environment.yaml文件中的 prefix对应的值为 当前用户可写的目录,否则会提示没有权限错误.

以创建一个tensorflow-gpu需要的cuda,cudnn包举例

需要了解Tensorflow 与cuda,cudnn版本的对应关系
参考网址: https://tensorflow.google.cn/install/source

创建一个虚拟环境
conda create –n py3.6tf python=3.6 #创建Python3.6版本的名为py3.6tf的虚拟环境
conda activate py3.6tf #激活环境
conda search cudatoolkit #查询支持的cuda版本

conda search cudnn #查询支持的cudnn版本,需要确保cuda版本一致

conda install cudatoolkit=9.0 cudnn=7.3.1 #安装指定版本的cuda,cudnn到当前的虚拟环境中

以上就完成了在anaconda虚拟环境py3.6tf中安装cuda=9.0,cudnn=7.3.1的操作.不同的虚拟环境可以参照以上的操作安装不同的cuda版本.

ps: 以上是安装的 cuda 相关库,安装后想要查看版本信息,可以使用以下命令:

pip list | grep cud*

对于命令 nvcc -V,这个返回的是 nvcc(英伟达cuda编译器)版本信息,和以上安装的库版本有区别!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用Anaconda 创建指定cuda 版本的虚拟环境 的相关文章

  • 我如何在 python 2.6 中测试抽象方法

    我有一个抽象类 import abc class Hello object metaclass abc ABCMeta abc abstractmethod def add self foo pass abc abstractmethod
  • 如何有效地从连续字符串中提取文字单词? [复制]

    这个问题在这里已经有答案了 可能的重复 如何将没有空格的文本拆分为单词列表 https stackoverflow com questions 8870261 how to split text without spaces into li
  • 只使用 Django 的某些部分?

    我喜欢 Django 但对于一个特定的应用程序 我只想使用它的一部分 但我对 Django 的内部工作原理还不够熟悉 所以也许有人可以指出我必须做什么的正确方向查看 具体来说 我想使用 模型和数据库抽象 The 缓存API http doc
  • Pandas 字符串提取所有匹配项

    我正在学习 pandas 系列字符串方法中的正则表达式操作 我能够从字符串中提取第一个数字 但我的正则表达式与第二个数字不匹配 如何捕获这两个数字 注意第二行 第二个元素在这里是 NAN CODE import pandas as pd d
  • 如何测试使用 XCom 的 Apache Airflow 任务

    我正在尝试找出一种测试 DAG 的方法 其中有几个任务使用 XCom 进行通信 由于控制台命令只允许我从 DAG 运行任务 有没有一种方法可以测试通信而无需通过 UI 运行 DAG Thanks 这是一种对我有用的方法 尽管 Airflow
  • scipy.misc.imshow RuntimeError('无法执行图像视图')

    我正在测试scipy misc imshow https docs scipy org doc scipy 0 15 1 reference generated scipy misc imshow html我得到了运行时错误 无法执行图像查
  • 如何移动我的图像? python 3.10.4 pygame

    我会移动我的图像 图像是matiskinfinal png 我尝试将像素添加到 x 或其他我不知道它是什么的东西 因为我真的是 python 的初学者 pygame但是是 x x 变化 但图像没有移动 import os import py
  • Python 按照层次结构按多个分隔符分割字符串

    我只想根据多个分隔符 例如 and 和 按顺序分割字符串一次 例子 121 34 adsfd gt 121 34 adsfd dsfsd and adfd gt dsfsd adfd dsfsd adfd gt dsfsd adfd dsf
  • Windows Defender 检测 Python EXE 为木马

    我制作了一个 Python 脚本 将 Windows 目录以 zip 形式邮寄给我 我使用 sched 模块添加了一个调度程序 每小时重复一次 我试图制作一个简单的同步应用程序供个人使用 在 Windows 启动时启动 我使用将其转换为 e
  • OpenCV - 我需要将彩色图像插入黑白图像并且

    我用以下代码将黑白图像插入彩色图像 没问题 face grey cv cvtColor face cv COLOR RGB2GRAY for row in range 0 face grey shape 0 for column in ra
  • 在 vim 折叠线中语法高亮 Python

    我发现代码折叠 http en wikipedia org wiki Code folding帮助我更好地组织我的文件 因此 在我的底部 vimrc 我启用vim代码折叠 http vimdoc sourceforge net htmldo
  • 类型错误:需要 Future 或协程

    我尝试在 asyncssh 上自动重新连接 ssh 客户端 SshConnectManager 必须留在后台并在需要时进行 ssh 会话 class SshConnectManager object def init self host u
  • 如何使用 xlrd 将新列和行添加到 .xls 文件

    如何向 xlrd 中的工作表添加新列和 或行 我有一个使用 open workbook 读取的 xls 文件 我需要在第一张表中添加一个新列 bouncebacks 然后在该表中添加新行 但我在 xlrd 文档中找不到任何显示如何添加新行和
  • python:是否有用于对输入流进行分块的库函数?

    我想对输入流进行分块以进行批处理 给定一个输入列表或生成器 x in 1 2 3 4 5 6 我想要一个能够返回该输入块的函数 说 如果chunk size 4 then x chunked 1 2 3 4 5 6 这是我一遍又一遍地做的事
  • 使 np.loadtxt 使用多个可能的分隔符

    我有一个程序可以读取数据文件 用户可以选择他们想要使用的列 我希望它对于输入文件更加通用 有时 列可能如下所示 10 34 24 58 8 284 6 121 有时它们可 能看起来像这样 10 34 24 58 8 284 6 121 我希
  • 如何在数据框中绘制包含三列的无向图,形成 3 种不同类型的节点(三方)?

    我正在尝试使用三个不同的列表绘制网络的可视化 这三个列表形成 3 种类型的节点 下面的代码正在运行 如图所示 需要两个列表 用户 ID 评分 但是 我希望我的图表是三部分的 即 user userId review ratings prod
  • 检查多个 pd.DataFrame 是否相等

    是否有一种 Pythonic 方式 无循环或递归 来检查是否超过两个pd DataFrames 例如 pd DataFrames 列表 彼此相等吗 就像是 all x equals dfs 0 for x in dfs with dfs数据
  • 使用 Python 脚本打开特定文件类型?

    如何使 Python 脚本成为特定文件类型 例如 foo 的默认应用程序 例如 当我双击 Finder Explorer 中的文件时 我希望该文件在 Python 脚本中打开 这可以在 Win 和 或 OS X 中实现吗 如果重要的话 该应
  • Python 中的十进制到二进制半精度 IEEE 754

    我只能使用以下命令将十进制转换为二进制单精度 IEEE754struct pack模块 或者使用相反的方法 float16 或 float32 numpy frombuffer 是否可以使用 Numpy 将十进制转换为二进制半精度浮点数 我
  • Pip 突然使用了错误版本的 Python

    在 os x 上使用 pip 时遇到一个奇怪的问题 据我所知 快速查看我的 bash history 似乎可以确认 我最近没有对我的配置进行任何更改 唉 pip 命令似乎突然使用了与以前不同的 python 版本 到目前为止 我使用命令 p

随机推荐

  • 物联网LoRa系列-21:LoRa终端--射频芯片SX1261 SX1262的FSK调制解调器与配置

    目录 1 SX1261 2功能模块 2 调制技术的基本原理 3 FSK调制技术的基本原理 4 SX1261 2的FSK调制器主要的性能参数 5 SX1261 2的FSK调制器主要寄存器设置 1 SX1261 2功能模块 MCU与SX1261
  • Linux I/O(输入和输出)

    1 文件I O 1 文件描述符 对于内核而言 所有打开的文件都通过文件描述符引用 文件描述符通常是一个小的非负整数 内核用它标识一个特定进程正在访问的文件 当内核打开一个已有文件或创建一个新文件时 它返回一个文件描述符 2 按照惯例 UNI
  • 68.文件操作(打开、读写和关闭)&69.文件操作(文件读写位置)& 70 ftell 、feof、‘EOF‘

    函数库的使用 不要类比字符串函数 仅掌握正确使用 不考虑如何实现 文件有编号 暂时认为是文件指针 FILE指针 文件指针 句柄 实际上是结构体的重定义 struct file int fd typedef struct file FILE
  • C语言从键盘上输入一个大写字母,C语言编程输入一个字符,如果它是一个大写字 – 手机爱问...

    2008 03 17 设计字符界面application程序 输入一字符 如果为小写字母 则转换为大写字符 如果为大写字母 则转换为小写字母 其它字符不变 我写了下 总是错误 帮忙看下 import java awt import java
  • anaconda3在创建虚拟环境中途出错,想要删掉,如何删彻底

    这个文件夹里面是专门放不同环境中的包的 只是没有区分环境 都混在一起了 一般在想要删除一个虚拟环境 除了在命令行中输入conda remove n your env name 虚拟环境名称 all 然后在envs中删除虚拟环境的文件夹 还可
  • Kanzi学习教程培训教程-Kanzi的简介和安装

    如果你认为本系列文章对你有所帮助 请大家有钱的捧个钱场 点击此处赞助 赞助额1元起步 多少随意 锋影 e mail 174176320 qq com Kanzi UI Solution是一个完整的UI解决方案 为嵌入式的UI的设计 开发和部
  • QLineEdit 设置输入掩码

    背景 QLineEdit 是单行文本编辑器 常用于界面中的文本输入 QLineEdit 提供了 inputMask 使用一些特定到字符来设置输入的格式和内容 inputMask 概述 输入掩码包括两部分组成 之前是输入格式及占位符设置 之后
  • pytorch的学习

    torch save net1 net pkl 保存entire net整个网络 torch save net1 state dict net params pkl 保存参数
  • MySQL5.7忘记root密码-手动修改密码教程

    MySQL 5 7相对于MySQL 5 6在应用上发生了一些新的变化 这里就MySQL5 7忘记root密码情况下 手动去修改root密码做一些介绍 操作系统 Windows10 数据库版本 MySQL 5 7 20 1 Windows10
  • TCL中变量嵌套使用

    TCL中变量嵌套使用 在使用多重嵌套变量时候 因为 对于tcl来说属于非运算符号 因此在使用变量嵌套 直接调用会出现问题 即变量不能正确调用 set mm list 0 1 set nn list 2 3 set index mm puts
  • 憨批的语义分割重制版5——Keras 搭建自己的Unet语义分割平台

    憨批的语义分割重制版5 Keras 搭建自己的Unet语义分割平台 注意事项 学习前言 什么是Unet模型 代码下载 Unet实现思路 一 预测部分 1 主干网络介绍 2 加强特征提取结构 3 利用特征获得预测结果 二 训练部分 1 训练文
  • OC语言学习 (三) 成员变量get/set方法和“.”语法,@proterty和@synthesize关键字

    Person h objc view plain copy print ifndef oc Person h define oc Person h interface Person NSObject int age protected fl
  • 蓝桥杯第一期模拟赛 英文转换 C语言

    英文转换 问题描述 输入一个由小写英文字母组成的字符串 请将其中的元音字母 a e i o u 转换成大写 其它字母仍然保持小写 输入格式 输入一行包含一个字符串 输出格式 输出转换后的字符串 样例输入 lanqiao 样力输出 lAnqI
  • 印刷企业如何利用MES管理系统实现智能计划排产

    在数字化时代 印刷企业面临着日益激烈的市场竞争和不断攀升的成本压力 为了提高生产效率和质量 印刷企业需要采用先进的生产管理系统 其中 MES生产管理系统已成为实现智能计划排产的重要工具 本文将探讨如何利用印刷MES管理系统实现印刷企业的智能
  • 让你的群晖NAS支持DTS!

    由于版权群晖的video station不支持dts 所以我简单的说一下如何安装套件让其支持dts解码 下面只文字阐述 1 打开套件中心 点击设置 2 进入套件来源 新增 名称 SynoCommunity 位置 http packages
  • matlab_非线性优化

    求解非线性问题 min z f x s t c x 0 ceqx 0 Ax b Aeqx beq lb x ub fmincon函数 x fval exitflag output lambda grad hessian fmincon fu
  • linux svn版本管理命令

    1 svn merge回滚 1 先 svn up 保证更新到最新的版本 如2106 2 然后用 svn log 查看历史修改 找出要恢复的版本 如2105 如果想要更详细的了解情况 可以使用svn diff r 2105 2106 文件或目
  • GPU渲染管线之旅

    在这一部分中 我们来谈谈像素处理的前半部分 dispatch和实际的像素着色 事实上 这部分是大多数图形开发者在谈到PS stage时所关心的内容 有关alpha blend和Late Z的内容则会下一篇文章中去探讨 后面我们会看到 在硬件
  • Oauth2.0实现token刷新功能

    扣扣技术分享交流群 1125844267 1 Oauth3 0简介 Oauth2 0是一个授权协议 提供了一种解决用户资源共享问题的思路 它不是一种实现 对于java来说 我们可以利用Spring Security OAuth2来实现 Oa
  • 使用Anaconda 创建指定cuda 版本的虚拟环境

    目的 解决多cuda版本共存问题 首先是安装anaconda 从官网或者是清华源下载安装包 以下用 Anaconda3 2019 10 Linux x86 64 sh 举例 wget https mirrors tuna tsinghua