前言

由于兼容性问题,使得我们若想用较新版本的 PyTorch,通过 GPU 方式训练模型,也得更换较新版本得 CUDA 工具包。然而 CUDA 的版本又与电脑显卡的驱动程序版本关联,如果是低版本的显卡驱动程序安装 CUDA11 及以上肯定会失败。

比如 GTX750Ti 或 GTX1050Ti,出厂的驱动程序版本在 450 以下,也就只能装 CUDA9 和 CUDA10 之类的版本。那么有什么方法用前面这两种显卡安装 CUDA11 以上的版本呢?下面就通过更新显卡驱动程序来完成这一任务,其中包括查看版本,各种版本的关联,如何下载安装等白话文方式演示。

查看显卡驱动版本

这里 强调一下,要安装 CUDA 的条件是电脑有独立显卡,并且显卡是英伟达也就是 N 卡。保证这一点我们可以通过桌面右键进入 “NVIDIA 控制面板” 和 "nvidia-smi.exe" 命令的两种方式查看显卡的驱动程序版本号。

NVIDIA 控制面板

点击 “系统信息”,其中 “显示” 下的 “项目” 就是显卡型号,“细节” 里主要查看 “驱动程序版本” 和 “驱动器类型”,后面要根据显卡型号和驱动器类型下载新版本的驱动程序。也可以在 “组件” 的 “3D 设置” 下查看 “NVCUDA64.DLL”,这就是当前驱动支持的 CUDA 最大版本。

NVIDIA-SMI

这个英伟达显卡在 Windows 下的一个监控工具,通过 cmd 可以不仅可以查看当前显卡的基本信息,也能查看 GPU 实时的运行情况。通过 cmd 输入 “nvidia-smi” 查看最新信息, "nvidia-smi -l 2" 查看实时信息 (2 就是 2 秒刷新一次),工具的参数上面图片有简单标注。

如果 cmd 输入后找不到该命令,需要把 “C:\Program Files\NVIDIA Corporation\NVSMI” (监控工具默认位置) 添加到 "path" 的环境变量中。

显卡驱动下载

可以进入英伟达网站 www.nvidia.com/Download/Find.aspx?lang=en-us,选择显卡型号,特别注意 "Windows Driver Type",这个就是上面查看的 “驱动器类型”。一般以前出厂 windows10 电脑都是 Standard,切记一定要根据驱动器类型下载,不然后面安装显卡驱动会报以下错误。

This DCH driver package is not compatible with the currently installed version of Windows.
This system is configured to require a Standard driver package. The correct driver
can be downloaded from by selecting the "Standard" option under the "Windows Driver Type" menu.

从上面 GTX 750 Ti 的标准类型搜索结果看,最新的版本是 472.12,而 DCH 有 500 以上的更新的版本。如果一定要用相当新的版本,官网也提供了将标准驱动类型修改为 DCH 的,但 win 系统版本有一个限制,具体可以在网上查找这里看以后再更新说明。不过呢 472 的驱动程序版本其实完全够用,可以搭配最大支持 CUDA11.0 到 CUDA12.0 之间的版本,也就意味着我们可以用 1.10 上下的 pytorch 的 cu 版本,现在最新也才 2 点几,像之前火热的 AI 绘画 "stable diffusion" 和 AI 音色克隆 “so-vits-svc” 就可以搭起来跑了。

CUDA 下载

已经更新完显卡驱动程序后,再重复前面查看版本号方式。看到驱动程序版本号和最大支持 CUDA 版本,记录下来。然后进入官网的 CUDA Release Notes,也可以查看到驱动程序版本与各种 CUDA 版本的对应关系。

上面的 “CUDA Toolkit” 下 CUDA 11.4 有五个版本,其中带 Update 的是正式版发布后的迭代版本,依次是 11.4.1 一直到 11.4.4,最右边就是 WIN 的最低驱动程序版本。根据我们查询的 472.12,当然 Updae4 也可以,最好按他们要求选 11.4.2 或以下。然后进入英伟达开发者网 developer.nvidia.com/cuda-toolkit-archive,选择后下载,以及 CUDNN 也要下载再依次安装。(这个在前面文章有介绍此处就略过了)

PyTorch 版本下载

前面把 CUDA 和 CUDNN 安装配置好之后,环境变量会自动添加,然后通过 cmd 输入 “nvcc -V” 查看 到 CUDA 的版本表示安装无误,接着就是去 download.pytorch.org/whl/torch_stable.html 查看 CUDA 与 pytorch 对应版本了,也可以直接下载 whl。cu 表 CUDA 版本,cpu 表 CPU 版本,由于没有 11.4 的我们可以选择 cu113 的搜索,然后挑选系统版本,Python 版本。

后面如果需要 torchaudio、torchtext 等库,也一定要找相对应版本的,不然不是无法用 gpu 运行就是版本不兼容,pip 自动把 torch 调高或调低,甚至直接改成 cpu 版,而有时候就只是一个小版本都不支持,这一点很恼火。

GPU 运行

驱动、工具包、依赖库等一切准备好后,在项目运行前,可以通过以下代码检测一下 gpu 是否可用。其实这里想说一下,我感觉是在小模型训练时,GPU 加速并没有比 CPU 快多少,但是有一个好处。如果是用 CPU 做训练,跑起来后配置一般的电脑可能就动不了。而如果丢给 GPU,负载就给到他了,我可以再继续调其他代码或放放音乐啥,只要不玩游戏或做什么 3D 预览渲染啥的。

import torch

print(torch.cuda.is_available())
print(torch.__version__)
exit()

如何使用 GTX750 或 1050 显卡安装 CUDA11+的更多相关文章

  1. CentOS 7.0 Nvidia显卡安装步骤

    from: http://blog.sina.com.cn/s/blog_49c0985a0102v3fa.html CentOS 7.0 Nvidia显卡安装步骤: 1 在英伟达官网下载相应驱动 搜 ...

  2. Ubuntu16笔记本双显卡安装NVIDIA驱动

    blockquote { direction: ltr; color: rgb(0, 0, 0) } blockquote.western { font-family: "Liberatio ...

  3. Centos ATI 显卡安装,“LCD 信号超出范围” 解决方法

    centso ATI 显卡驱动安装 centos 版本 32位 6.4 Final ATI 显卡版本:Radeon HD 7400 Series 之前由于很久自己安装了centos显卡,分辨率很低不能 ...

  4. (转)使用HMC接管通过串口或显卡安装的分区操作系统

    使用HMC接管通过串口或显卡安装的分区操作系统 原文:http://m.blog.itpub.net/23135684/viewspace-1062084/ 这是一个真实的案例,客户有一台P550的服 ...

  5. Ubuntu 13.04 双显卡安装NVIDIA GT 630M驱动

    [日期:2013-05-24]   Linux系统:Ubuntu 13.04 安装 bumblebee 以管理双显卡,下面命令会自动安装NVIDIA显卡驱动 sudo add-apt-reposito ...

  6. debian 9 双显卡安装NVIDIA显卡驱动

    最近用debian,给debian装n卡驱动折腾了好几天了,主要还是网络不好,官方wiki的方法下载经常卡死..摸索了几天感觉已经摸到了头绪,决定写下来供大家参考参考 先提供单显卡NVIDIA驱动的安 ...

  7. 笔记本1050ti显卡安装最新驱动版本 (415.27) 记录 NVIDIA显卡GeForce系列 (Ubuntu18.04)

    在Linux上安装驱动,这事情多半是跑CUDA程序的人才会搞的,多年前学CUDA时为这一步骤头疼的很,现如今已经比较熟悉了,今日给出一些记录. 首先,在NVIDIA官方网站上找到驱动下载页面: htt ...

  8. 显卡安装一直循环在登录界面——解决之-T450安装显卡驱动和cuda7.5发现的一些问题

    今天,在笔记本T450上,要装zed双目相机的驱动,需要显卡模块和cuda7.5,使用了三种方式,才成功. 1.使用 sudo ubuntu-drivers devices 来查看显卡支持驱动版本,因 ...

  9. Nvidia显卡安装驱动

    首先要知道需要安装哪个类型的显卡驱动,可以使用如下指令查看 sudo add-apt-repository ppa:graphics-drivers在#current那一栏中找到显卡驱动型号,使用的是 ...

  10. ubuntu 16.04 gtx1060 显卡安装【转】

    本文转载自:https://blog.csdn.net/u010925447/article/details/79754044 版权声明:本文为博主原创文章,未经博主允许不得转载. https://b ...

随机推荐

  1. 关于"覆盖问题”的反思

    [HAOI2007]覆盖问题 题目描述 某人在山上种了N棵小树苗.冬天来了,温度急速下降,小树苗脆弱得不堪一击,于是树主人想用一些塑料薄膜把这些小树遮盖起来,经过一番长久的思考,他决定 用3个L*L的 ...

  2. OpenAI API访问速度不佳?试试用Vercel来加速!

    前言 众所周知,使用openAI API在国内访问体验并不佳,经常遇到访问较慢或者访问失败的问题.本文着重讲讲怎么解决这个问题,让我们日常开发和使用能够更方便的体验到AI带来的便利 为了帮大家省钱,也 ...

  3. 面试再也不怕问ThreadLocal了

    要解决多线程并发问题,常见的手段无非就几种.加锁,如使用synchronized,ReentrantLock,加锁可以限制资源只能被一个线程访问:CAS机制,如AtomicInterger,Atomi ...

  4. 2023-08-06:小青蛙住在一条河边, 它想到河对岸的学校去学习 小青蛙打算经过河里 的石头跳到对岸 河里的石头排成了一条直线, 小青蛙每次跳跃必须落在一块石头或者岸上 给定一个长度为n的数组ar

    2023-08-06:小青蛙住在一条河边, 它想到河对岸的学校去学习 小青蛙打算经过河里 的石头跳到对岸 河里的石头排成了一条直线, 小青蛙每次跳跃必须落在一块石头或者岸上 给定一个长度为n的数组ar ...

  5. JS中文件相关的知识(一):MIME类型

    不知道有没有同学和我一样,写代码时一遇到文件操作就犯怵,必须要先去把知识补一遍再说:对于Content-Type.responseType.ArrayBuffer.buffer.blob.file等这 ...

  6. 调研capacitor兼容openharmony平台可行性

    团队可能需要对开源的 capacitor 跨平台框架进行扩展,以生产支持 OpenHarmony 平台的应用,在此调研可行性.实现路径和预期工作量. 可行性分析 在验证 capacitor 是否可以将 ...

  7. AgileConfig-1.7.0 发布,支持 SSO 🎉🎉🎉

    AgileConfig 已经好久好久没有更新过比较大的功能了.一是 AgileConfig 本身的定位就是比较轻量,不想集成太多的功能.二是比较忙(懒).但是本次升级给大家带来了一个比较有用的功能 S ...

  8. LeetCode952三部曲之一:解题思路和初级解法(137ms,超39%)

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 题目描述 难度:困难 编程语言:Java 给定一个由不 ...

  9. 产品代码都给你看了,可别再说不会DDD(五):请求处理流程

    这是一个讲解DDD落地的文章系列,作者是<实现领域驱动设计>的译者滕云.本文章系列以一个真实的并已成功上线的软件项目--码如云(https://www.mryqr.com)为例,系统性地讲 ...

  10. Longest Divisors Interval

    Smiling & Weeping ----总有一个人, 一直住在心底, 却消失在生活里. Given a positive integer n, find the maximum size ...