conda虚拟环境中安装cuda和cudnn

news2024/9/22 11:37:44

目录

一、cuda安装步骤

1)cuda的安装

1、查看conda支持的cuda版本

2、下载cuda并安装cuda

2)cudnn的安装

1、查看cuda对应的cudnn版本

2、下载cudnn并安装

二、torch的安装和tensorflow的安装

1)安装tensorflow

1、确定安装版本并安装

2、验证是否可以调用gpu

2)安装torch

1、安装torch

2、测试cuda版本


一、cuda安装步骤

1)cuda的安装

1、查看conda支持的cuda版本

首先使用conda activate name命令把conda环境激活到目标环境。

执行以下命令后,会显示出源内所有的cuda版本,以及下载地址:

conda search cudatoolkit --info

 下面命令只显示版本:

conda search cudatoolkit

2、下载cuda并安装cuda

找到自己想要的cuda版本后,先把cuda下载到本地。首先复制url字段里的下载链接,然后用命令cd到想要下载的目录,执行如下代码下载:

wget 你刚刚复制的链接地址

执行如下命令进行安装,因为是通过本地安装的,所以需要写明本地包的路径

# 然后安装本地包
conda install --use-local 本地cuda包所在的路径

附:直接使用conda install安装

执行命令直接安装cudatoolkit包(即安装cuda,找到安装的对应版本指定安装即可):

conda install cudatoolkit==11.8.0

2)cudnn的安装

1、查看cuda对应的cudnn版本

使用如下命令查看conda支持的cudnn版本,注意cudnn的版本一定要和刚刚下载的cuda版本对应:

conda search cudnn --info

执行后的结果如图所示,图中标出了cudnn所对应的cuda版本号位置

 下面命令只显示版本:

conda search cudnn

2、下载cudnn并安装

复制你想要版本的cudnn的下载地址,使用wget 链接地址进行下载。安装cudnn命令如下:

conda install --use-local 本地cudnn包所在的路径

或者执行命令安装cudnn包:

conda install cudnn==8.9.2.26

注意:

  • 一定要先进入刚创建的环境,不然后面的操作是在默认环境base上进行
  • 安装之后的 CUDA 和 cudnn 会存放在虚拟环境的 lib 文件夹 或者include 文件夹里面。如果直接通过win+r,cmd,nvcc -V命令会发现还是主机的版本。因此,不能使用nvcc -V命令测试,需要在虚拟环境中安装pytorch包进行测试

二、torch的安装和tensorflow的安装

1)安装tensorflow

1、确定安装版本并安装

通过conda search tensorflow-gpu命令查看可下载的版本:

conda search tensorflow-gpu

这里没有更新到2.10,不过没关系,我们已经知道更新到了2.16版本,所以直接执行命令安装tensorflow:

pip install tensorflow-gpu==2.10.0 -i https://pypi.douban.com/simple 
2、验证是否可以调用gpu
import tensorflow as tf
gpus = tf.config.experimental.list_physical_devices(device_type='GPU')
cpus = tf.config.experimental.list_physical_devices(device_type='CPU')
print(gpus, cpus)

或者

import tensorflow as tf
version=tf.__version__  #输出tensorflow版本
gpu_ok=tf.test.is_gpu_available()  #输出gpu可否使用
print("tf version:",version,"\nuse GPU:",gpu_ok)

2)安装torch

1、安装torch

首先安装与cuda相匹配的pytorch和torchvision包,可以去pytorch官网查询。

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 -c pytorch -c nvidia
2、测试cuda版本
import torch
print(torch.cuda.is_available())

# 查询cuda版本
print(torch.version.cuda)

# 查询cudnn版本
print(torch.backends.cudnn.version())

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java入门:06.Java中的方法--进阶02.03

2 可变参数 方法调用时, 传递的实参数量,是由被调用方法的参数列表数列决定的。 一般来讲,传递的实参数量必须与形参变量数量相同,但是也有一种特殊的参数,允许调用时传递的实参数量是可变,这种参数就称为…

《黑神话·悟空》游戏开发教程来了,全部开源。。。

黑神话悟空游戏,官网说明使用UE5引擎开发. 这篇文章发一个UE5游戏开发的系统教程。 1 开发悟空游戏的UE5 UE5,即 Unreal Engine 5,是由 Epic Games 开发的一款高度先进的游戏引擎。 UE5 是 Unreal Engine 系列的最新版本,它提供…

Qt第十八章 XML和Json格式解析

文章目录 JSON格式解析Json生成案例 XML简介与HTML的区别格式XML解析流的方式DOM XML生成 JSON与XML的区别比较 JSON 格式 JSON是一个标记符的序列。这套标记符包含六个构造字符、字符串、数字和三个字面名 六个构造字符 开始和结束数组:[ ]开始和结束对象&#x…

应用商场的搭建

前言: 使用mysql做主从设置,redis数据库做热门访问数据库。mycat读写分离,zookeeperkafka做数据收集,使用三台虚拟机 关掉防火墙和selinux,做时间同步 192.168.121.11 node1 mycat.example.com 192.168.121.21 node2 …

提高LabVIEW电机控制速度

在LabVIEW中执行绝对位移命令时,其运行时间主要与以下电机参数有关: 电机加速度和减速度: 加速度和减速度参数决定了电机从静止到达到目标速度,以及从高速到停止的时间。这些参数直接影响电机响应的迅速程度。如果加速度和减速度设…

如何使用ssm实现基于bs模式的医院在线挂号预约系统的设计与实现

TOC ssm072基于bs模式的医院在线挂号预约系统的设计与实现jsp 第1章 绪论 1.1 课题背景 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人…

B/S架构和C/S架构的区别

B/S架构、C/S架构区别 1. B/S架构 1.1 什么是B/S架构 B/S架构的全称为Browser/Server,即浏览器/服务器结构。Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现。B/S架构的系统无须特别安装,只需要…

实战OpenCV之绘制图形

基础入门 OpenCV除了用于图像显示之外,还提供了一系列接口和工具,以帮助开发者在图像上绘制各种图形。这里的图形包括:直线、矩形、圆形、椭圆、多边形等。另外,OpenCV还支持在图像上添加文字,对多张图像进行叠加操作。…

NACOS 2.4.1如何开启账号密码登录功能

Nacos Server 2.4.0+已正式发布取消管理员用户 nacos 的默认密码支持初始化指定密码。 本章教程,主要介绍如何给nacos加上鉴权,支持通过用户名和密码的方式进行访问nacos页面。 NACOS 2.4.1版本下载地址:https://github.com/alibaba/nacos/releases/tag/2.4.1 1、开启认证功…

驱动:insmod

一、驱动模块的加载 1. 静态 编译进内核2. 动态 编译成模块 如下: 解决方法 结果 led电灯例子 创建一个led.c 修改Makefile、Kconfigmake modulescp drivers/char/led.ko /home/linux/nfs/rootfs开发板 insmod led.ko去 /home/linux/nfs/rootfs 上 写程序.carm-l…

每日掌握一个科研绘图|区域图·24-08-23

小罗碎碎念 为了方便大家获取对应的代码和源数据,从本期推文开始,我将把对应的文件上传至Github仓库,感兴趣的同学自行获取。 仓库地址 https://github.com/Lxltxpku/Share 一、区域图 区域图是一种数据可视化工具,它通过在坐标…

嵌入式人工智能ESP32(7-OLED显示中英文)

1、OLED显示英文 我们之前通过树莓派开发板做过OLED显示,这里就不再赘述OLED显示屏了。直接上接线图与代码。 (1)Adafruit Adafruit是一家成立于2005年的私营企业,主要业务是设计和制造开源电子硬件。Adafruit在美国设计和制造其…

全栈杂谈第一期:什么是计算机中的并发

什么是计算机中的并发 计算机中的“并发”是一个听起来很复杂的词汇,但我们可以把它简单理解为“同时做很多事情”。想象一下你正在做晚饭:你可以在等水烧开的时候切菜,还可以在等待炖汤时洗碗。尽管你只有一双手,但通过合理安排…

芋道cloud v2.2.0发布,支持模块选配,丢弃简易版

大家知道,芋道cloud拥有商城、CRM、ERP、微信相关等模块,很显然我们在日常开发中不可能一个项目同时拥有这么多模块。但是从gitee上获取代码的时候,只提供了简易版和完整版。简易版本只有最基础的功能,如果想要微信相关的模块&…

浅谈Llama3.1,从结构、训练过程、影响到数据合成

Llama3.1系列模型的开源,真让大模型格局大震,指标上堪比最好的闭源模型比如GPT 4o和Claude3.5,让开源追赶闭源成为现实。 这里给大家分享一篇俊林兄(知乎张俊林)的一篇解读,主要对LLaMA3.1的模型结构、训练…

RM双轴云台控制

RM机器人上最复杂的控制计构就是双轴云台了,赛场上的情况对双轴云台的控制稳定度与响应灵敏度双方面都提出了很高的要求,云台控制的好坏在一定程度上就能够代表一支队伍的实力。 双轴云台采用的控制算法依然是PID控制算法,关于PID控制算法的…

自动操作一键数据恢复/电子取证

对磁盘模拟扫描修复丢失数据的实验。 先挂载题目磁盘VHD。 Windows系统中打开磁盘管理,-操作,-附加VHD 可以看到已经加载出题目磁盘,接下来打开RStudio数据恢复软件,对其进行扫描。 操作找回丢失/被删除的数据 可以看到已经加载出…

Java入门:06.Java中的方法--进阶04

4方法递归 简而言之就是方法的自身调用。 也可以是方法组自身的调用 递归类似循环,可以实现功能的反复执行。在某些(算法)环境下,比使用循环更轻松。 递归的本质就是方法的不同调用,就会不同的产生栈帧压栈,栈空间有限&#xff…

一个可以搜索页面内超链接的HTML页面

页面效果如上&#xff0c;含有标题&#xff0c;搜索框和一些超链接&#xff0c;在搜索框输入一些文字可以在下方显示含有这些文字的超链接。这里的搜索不仅可以中文&#xff0c;还可以是英文&#xff0c;数字 HTML代码如下 <!DOCTYPE html> <html lang"en&qu…

笔记小结:《利用pytthon进行数据分析》之使用pandas和seaborn绘图

matplotlib实际上是一种比较低级的工具。要绘制一张图表&#xff0c;你组装一些基本组件就行&#xff1a;数据展示&#xff08;即图表类型&#xff1a;线型图、柱状图、盒形图、散布图、等值线图等&#xff09;、图例、标题、刻度标签以及其他注解型信息。 在pandas中&#xf…