【深度学习】深度学习框架的环境配置

目录

1. 配置cuda环境

1.1. 安装cuda和cudnn

1.1.1. 显卡驱动配置

1.1.2. 下载安装cuda

1.1.3. 下载cudnn,将解压后文件复制到cuda目录下

1.2. 验证是否安装成功

2. 配置conda环境

2.1. 安装anaconda

2.2. conda换源

2.3. 创建conda环境

2.4. pip换源

3. 配置深度学习框架

3.1. PyTorch

3.2. Tensorflow


1. 配置cuda环境

1.1. 安装cuda和cudnn

1.1.1. 显卡驱动配置

  • 保证电脑有独显且为N卡,只有nvidia显卡才能使用cuda
  • cuda版本与显卡驱动版本有关(官网)
cuda版本与显卡驱动版本对照表
cuda版本与显卡驱动版本对照表
  • 在命令行输入以下命令可以查看当前显卡驱动版本和最高支持的cuda版本:
nvidia-smi
输出结果
输出结果
  • 一般将显卡驱动更新到最新,这样将支持所有的cuda版本。更新显卡驱动可以安装Nvidia官方的GeForce Experience,要注册账号并登录,可以使用邮箱但要通过邮件验证。

1.1.2. 下载安装cuda

  • cuda版本的选择还与深度学习框架的版本有关,cuda版本不能过高,否则深度学习框架可能不支持,不过cuda中版本号向下兼容,比如cuda11.2可以当cuda11.1使用。
    • Tensorflow(官网)
cuda、python和tensorflow-gpu版本对照表
cuda、python和tensorflow-gpu版本对照表
    • PyTorch(官网)
      • torch版本与cuda、python版本没有严格的对应关系,只有大致的限制,python版本的选择一般为security的最低版本(Python维护周期查询),cuda版本一般不选最高,选tensorflow最新支持的版本,这样可以同时使用,不过同一电脑可以安装多个不同版本的cuda,使用时只要修改环境变量中的CUDA_PATH为需要选择的cuda版本所在路径。
      • 注意选择GPU版本torch(版本名中有“+cuXXX”,XXX表示cuda版本),示例如下:
带cu的表示GPU版本
带cu的表示GPU版本
  • 确定下载哪个cuda版本后,去官网下载,选择小版本号最大的,比如11.2.x选择11.2.2,win11选择win10,运行下载好的安装程序,选择典型安装一路同意即可,中途遇到要安装Visual Studio可以不用管,因为这是nvidia推荐用它来开发C++和cuda程序。

1.1.3. 下载cudnn,将解压后文件复制到cuda目录下

下载cudnn需要登陆nvidia账号,也要邮件验证,下载链接,根据cuda版本选择,下载解压后将cudnn-windows-x86_64-xxxx_cudaxx-archive目录下的所有目录和文件复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vXXX目录下。

1.2. 验证是否安装成功

可以通过以下命令查看当前正在使用的cuda版本:

nvcc -V
输出结果
输出结果

2. 配置conda环境

2.1. 安装anaconda

可以去官网,如果速度太慢可以选择清华镜像,选择最新版本,运行安装程序,选择默认编辑器,一路下一步即可。

2.2. conda换源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

2.3. 创建conda环境

在开始菜单找到Anaconda Prompt,点击运行,输入以下命令创建conda环境,python版本根据之前的版本对照选择,一般 为security的最低版本(Python维护周期查询):

conda create -n conda环境名 python=3.x -y

激活conda环境

conda activate conda环境名

2.4. pip换源

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

3. 配置深度学习框架

3.1. PyTorch

  • 根据之前的选择,直接在Anaconda Prompt相应conda虚拟环境下,执行类似以下命令:
pip install torch==x.x.x+cuXXX -f https://download.pytorch.org/whl/cuXXX
  • 测试pytorch是否可以使用cuda调用GPU

        运行python,按序执行以下命令:

>>> import torch
>>> torch.cuda.is_available()
True
>>> torch.cuda.get_device_name(0)
'NVIDIA GeForce GTX 1060'
  • 可能出现报错说numpy没装,执行以下命令可以解决:
pip install torch==x.x.x+cuXXX numpy

3.2. Tensorflow

  • 据之前的选择,直接在Anaconda Prompt相应conda虚拟环境下,执行类似以下命令:
pip install tensorflow-gpu==2.x.x
  • 测试tensorflow是否可以使用cuda调用GPU

        运行python,按序执行以下命令:

>>> import tensorflow as tf
>>> tf.config.list_physical_devices('GPU')
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
>>> tf.test.gpu_device_name()
2023-11-28 21:55:22.331757: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-11-28 21:55:23.819451: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1510] Created device /device:GPU:0 with 4620 MB memory:  -> device: 0, name: NVIDIA GeForce GTX 1060, pci bus id: 0000:01:00.0, compute capability: 6.1
'/device:GPU:0'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/210339.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

封装员工头像组件

创建image-upload组件 <template><el-uploadclass"avatar-uploader"action"":show-file-list"false":before-upload"beforeAvatarUpload"><!-- (自动上传)action是上传地址 --><img v-if"value" :s…

第二次量子化

专栏目录: 高质量文章导航-持续更新中 前置复盘: 玻色子和费米子: 首先,我们希望把描述单粒子态的量子力学推广到全同多粒子体系。我们的做法是从单粒子态的希尔伯特空间(Hilbert Space)出发,构造全同多粒子态的态空间——福克空间(Fock Space),它实际上就是无穷个…

20231202 VCSA 7.0 日志清理及空间扩容

日志清理 ssh 到 VCSA 上&#xff0c;输入 shell 进入控制台 df -lh 查看空间大小&#xff0c;发现 /storage/archive 占据空间比较大&#xff0c;这里应该是备份日志的地方&#xff0c;里边文件不大但很多&#xff0c;查找并删除 30 天以前的日志 cd /storage/archive/vpostgr…

对于Windows就是找不到 环境变量 的解决

我认为将“我的电脑”从桌面上隐藏掉纯粹是傻逼行为 说下解决办法&#xff1a; 1. 找到文件资源管理器&#xff0c; 2. 右键点击“此电脑” -- 选择属性&#xff1a; 3. 进入属性界面&#xff0c;应该进入的是“关于”界面&#xff1a;选择“高级系统设置”&#xff1a; 4. 终…

更有效的问卷发布方法与必备问卷工具推荐

问卷怎么发&#xff1f;通过哪些渠道发&#xff1f;怎么发收集的数量更多&#xff1f;怎么获得有效数据&#xff1f;这些是做问卷的调查人员经常会遇到的问题。的确&#xff0c;问卷的发放是否有效不仅会影响到收集数据的体量&#xff0c;更会影响到最终结论的真实性。所以&…

ssm+vue的罪犯信息管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的罪犯信息管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…

12月02日每日信息差

_灵感 &#x1f396; 六国入境免签首日2029人次享便利 &#x1f384; 国内首个超大规模“光伏气膜”项目在江苏投运 &#x1f30d; 东京将推出氢气交易市场 &#x1f30b; 中国疾控中心&#xff1a;建议尽早接种流感疫苗&#xff0c;尤其是老年人和儿童 &#x1f381; 偏高1.…

CCC联盟数字车钥匙(七)——BLE连接流程

本文接上一篇CCC数字钥匙BLE概述&#xff0c;介绍BLE中相关连接流程的实现。 2、BLE流程 2.1 所有者配对连接建立 CCC中使用Bluetooth OOB&#xff08;Out of Band, 带外&#xff09;配对完成所有者配对、连接建立的流程。BLE设置分为以下两个子部分&#xff1a; BLE链路层连…

根目录/ 空间不够,扩容,导致web页面无法加载问题

现象就是&#xff1a;搭建的web页面无反应&#xff0c;也没报错&#xff0c;怀疑是内存空间不够导致的。/ 扩容步骤如下&#xff1a; 虚拟机为关机状态添加虚拟磁盘 #查看磁盘&#xff0c;并创建新分区 fdisk -l fdisk /dev/sdb p       查看已分区数量&#xff08;我看…

C# 将CSV文件内容装配成对象列表

写在前面 CSV文件采用纯文本的存储形式&#xff0c;字段间以分隔符进行区分&#xff0c;行之间以换行符进行切换&#xff0c;既可以用文本编辑器打开也可以用Excel编辑&#xff0c;可读性非常好&#xff0c;在游戏开发领域经常将其作为数值配置文件使用。文本编辑器推荐EmEdit…

msvcp140_codecvt_ids.dll丢失解决方案,验证有效

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“msvcp140_codecvt_ids.dll丢失”。这些动态链接库文件是程序运行所必需的&#xff0c;它们包含了许多函数和资源。丢失或者损坏通常会导致某些应用程序无法正常运行。 首先&#xff0c;我们…

LangChain(0.0.340)官方文档三:Prompts上——自定义提示模板、使用实时特征或少量示例创建提示模板

文章目录 一、 Prompt templates1.1 langchain_core.prompts1.2 PromptTemplate1.2.1 简介1.2.2 ICEL1.2.3 Validate template 1.3 ChatPromptTemplate1.3.1 使用role创建1.3.2 使用MessagePromptTemplate创建1.3.3 自定义MessagePromptTemplate1.3.3.1 自定义消息角色名1.3.3.…

Nat. Rev. Chem. | 一份关于用机器学习研究化学问题的评估指导

今天为大家介绍的是来自Tiago Rodrigues团队的一篇论文。机器学习&#xff08;ML&#xff09;有望解决化学领域的重大挑战。尽管ML工作流程的适用性极广&#xff0c;但人们通常发现评估研究设计多种多样。目前评估技术和指标的异质性导致难以&#xff08;或不可能&#xff09;比…

redisson分布式锁

一、分布式锁 java里面的锁机制针对的是同一个jvm进程进行共享资源的共享加锁&#xff0c;但在分布式系统中&#xff0c;一般一个服务都会部署多个节点&#xff0c;这种情况下就需要有单独的中间件来承担多节点间加锁的责任。 二、使用案例 // 1. 获取锁对象RLock lock redi…

一篇带你串通数据结构

文章目录 导论数据结构的定义数据结构在计算机科学中的重要性为什么学习数据结构很重要 1、基本概念1.1、数据、数据元素和数据项的概念1.2、数据对象与数据结构的关系1.3、逻辑结构与物理结构 2、线性结构2.1、数组2.2、链表2.3、栈2.4、队列 3、非线性结构3.1、树3.2、图 4、…

在oracle中的scn技术

SCN可以说是Oracle中一个很基础的部分&#xff0c;但同时它也是一个很重要的。它是系统中维持数据的一致性和顺序恢复的重要标志&#xff0c;是数据库非常重要的一种数据结构。 转载&#xff1a;深入剖析 - Oracle SCN机制详细解读 - 知乎 (zhihu.com)https://zhuanlan.zhihu.…

【LeetCode】135. 分发糖果

135. 分发糖果 文章目录 一、贪心1.1 贪心 二、多语言解法 参考图解 先按「左规则」得到下图&#xff1a; 再按「右规则」处理后如下图&#xff1a; 最终&#xff0c;取 max&#xff08;左规则&#xff0c;右规则&#xff09;&#xff0c;才能同时满足左规则和右规…

【slab/0x40 UAF】TPCTF2023 - core 一题多解

前言 这题据说比赛被非惨了&#xff0c;但是笔者比较菜&#xff0c;比赛的时候没有正规做出来并且也没有发现非预期&#xff0c;乐。其实比赛的时候一直在纠结为啥 free obj 没有 freelist&#xff0c;哎&#xff0c;陷进去了&#xff0c;我的 Root 宝贝。 笔者赛后用两种【常…

linux特殊权限_suid_chattr_umask

3.3 特殊权限 如果一个文件很重要&#xff0c;需要依赖特殊权限避免其被删除。 由于特殊权限会拥有一些“特权”&#xff0c;因而用户若无特殊需要&#xff0c;不应该去打开这些权限&#xff0c;避免安全方面出现严重漏洞&#xff0c;甚至摧毁系统。3个权限是对了执行文件或目…

CAPL语言 自动化测试

CAPL语言 自动化测试 CAPL&#xff08;CAN Access Programming Language&#xff09;是一种专为CAN&#xff08;Controller Area Network&#xff09;网络开发的编程语言。这种语言主要用于汽车行业&#xff0c;尤其是在自动化测试和网络通信方面。以下是关于其在自动化测试中…