Windows下CUDA+pytorch安装

简介: 以下是关于在Windows下安装CUDA和PyTorch的简要介绍及参考链接:

记录一下Windows下CUDA+pytorch安装的一些参考链接。

1 CUDA与pytorch简介(kimi生成)

1.1 CUDA简介

  • 背景与起源:CUDA(Compute Unified Device Architecture)是NVIDIA推出的并行计算架构。它起源于NVIDIA在GPU通用计算领域的探索,旨在打破传统计算中CPU作为唯一计算核心的限制,充分挖掘图形处理器(GPU)在处理大规模并行计算任务方面的潜力。
  • 架构与组成:

    1.GPU硬件架构:现代GPU采用流式多处理器(SM)架构,每个SM包含多个CUDA核心,这些核心可以同时执行大量线程。GPU还具有较大的显存(VRAM),用于存储数据和中间结果,以满足大规模数据处理的需求。
    2.CUDA软件架构:CUDA软件架构分为三层。底层是硬件抽象层,包含寄存器、缓存和内存等。中间层是运行时库,提供API供开发者调用,实现对GPU资源的管理。顶层是工具和语言接口,方便开发者编写、调试和优化CUDA程序。

  • 主要特点:

    1.并行计算能力:CUDA程序可以在GPU上同时执行数千个线程,实现大规模并行计算,显著提升计算效率,非常适合处理复杂的科学计算、机器学习和深度学习任务。
    2.灵活性:CUDA支持C、C++和Fortran等多种编程语言,开发者可以通过简单的扩展语法调用GPU加速功能,同时也允许更细粒度的控制,满足不同应用场景的需求。
    3.强大的生态系统:NVIDIA为CUDA提供了丰富的库和工具,如cuBLAS(用于线性代数计算)、cuDNN(用于深度神经网络计算)等,这些库在各自领域都经过了高度优化,开发者可以直接使用,大幅提高了开发效率。

  • 应用领域:

    1.图形与视觉计算:CUDA在计算机图形学领域应用广泛,可用于实时渲染、物理模拟、图像处理等任务,为游戏、影视特效等行业提供了强大的技术支持。
    2.科学计算:在气象预测、分子动力学模拟、天体物理模拟等科学研究中,CUDA强大的并行计算能力能够快速处理海量数据,加速科学发现进程。
    3.深度学习与AI:当前,深度学习是CUDA最热门的应用领域之一。以PyTorch和TensorFlow为代表的深度学习框架利用CUDA实现了高效的并行计算,推动了人工智能技术的飞速发展。

1.2 PyTorch简介

  • 背景与起源:PyTorch是由Facebook人工智能研究院基于之前的Torch框架开发的一个开源机器学习框架。它诞生于深度学习蓬勃发展的时期,旨在为研究人员和开发者提供一个灵活、高效的工具,以加速深度学习模型的开发、训练和部署。
  • 核心组件与架构:

    1.张量(Tensor):PyTorch的核心数据结构是张量。张量类似于NumPy中的多维数组,但可以在GPU上运行,从而实现高效的并行计算。与NumPy相比,PyTorch张量支持自动求导,能够自动计算梯度,这是深度学习自动反向传播算法的基础。
    2.自动微分(Autograd):Autograd是PyTorch最强大且独特的功能之一。它能够自动记录张量之间的操作,并在反向传播时自动计算梯度,无需用户手动推导复杂的微分公式。这一功能极大地简化了神经网络的训练过程,使开发者能够专注于模型的构建和优化。
    3.神经网络模块(nn.Module):PyTorch提供了一个灵活且可扩展的神经网络模块系统。开发者可以像搭积木一样,通过组合各种预定义的层(如卷积层、池化层、全连接层等)来构建复杂的神经网络架构。同时,PyTorch还支持自定义层和模块,满足特殊需求。
    4.优化器(torch.optim):PyTorch内置了多种优化算法,如随机梯度下降(SGD)、Adam、RMSprop等。这些优化器可以与自动微分模块无缝配合,自动调整模型参数以最小化损失函数。

  • 主要特点:

    1.动态计算图:与TensorFlow等基于静态计算图的框架不同,PyTorch采用动态计算图。这意味着计算图可以在运行时构建和修改,更加灵活和直观。开发者可以像编写普通的Python代码一样构建模型,无需预先定义计算图结构,这使得调试和实验更加便捷。
    2.易用性和灵活性:PyTorch具有简洁、直观的API,易于上手。其设计风格与Python语言高度契合,许多Python开发者可以很快掌握。同时,PyTorch允许对模型进行细粒度的控制,方便研究人员实现创新的算法和模型结构。
    3.强大的社区支持:PyTorch拥有庞大的开发者社区,不断涌现出各种教程、论文实现和开源项目。社区成员相互交流和分享经验,共同推动了PyTorch的快速发展。

  • 应用领域:

    1.深度学习研究:PyTorch是当前最流行的深度学习研究框架之一。它在自然语言处理、计算机视觉、语音识别、强化学习等领域得到了广泛应用,许多前沿的研究成果都是基于PyTorch实现的。
    2.工业应用:随着模型训练效率的提高和部署工具的完善,PyTorch在工业界的应用也越来越广泛。例如,Facebook使用PyTorch进行自然语言处理和推荐系统,Pinterest用它来分析图像数据,许多初创公司也纷纷将其用于开发各种AI驱动的产品和服务。

1.3 CUDA与PyTorch的结合

  • CUDA为PyTorch提供硬件支持:PyTorch充分支持CUDA,能够利用GPU的强大计算能力。当使用PyTorch时,只需简单地将张量或模型迁移到GPU上,即可显著加速计算过程。PyTorch的底层设计与CUDA紧密结合,能够高效地调用CUDA库(如cuBLAS和cuDNN)进行线性代数运算和神经网络计算。
  • PyTorch简化了CUDA编程:对于深度学习开发者来说,PyTorch提供了一套高级接口,隐藏了CUDA编程的复杂细节。开发者无需深入了解CUDA的底层架构,即可充分利用GPU的计算资源。PyTorch的自动微分和动态计算图功能,使得构建和训练深度学习模型变得更加简单和高效。
  • 在深度学习中的应用:在深度学习中,CUDA与PyTorch的结合使得模型训练和推理的速度大幅提升。无论是小型的实验模型还是大型的工业级模型,都可以在GPU上高效运行。此外,结合分布式训练技术,PyTorch可以轻松地实现多GPU并行计算,进一步加速模型训练过程。

综上所述,CUDA和PyTorch分别是GPU计算和深度学习领域的关键技术。它们的紧密合作推动了人工智能的发展,使得各种复杂的计算任务能够高效地完成。

2 CUDA+PyTorch安装教程

基本逻辑是“NVIDIA显卡驱动安装→CUDA安装→Python安装→Pytorch安装”。

NVIDIA显卡驱动根据自己机子的型号到官方网站下载对应的驱动。如果不确定自家显卡的型号,可以打开任务管理器点击到GPU界面查看即可。

显卡驱动下载链接

下载完以后就只需要图形界面一路安装即可。

接下来是安装CUDA,也是比较麻烦的一步。首先需要确认自己的显卡能接受什么版本的CUDA。这里需要打开命令行,输入如下的命令。

nvidia-smi

这里Driver Vesrion的版本就是你目前显卡驱动的版本。CUDA Version则是能接受的CUDA最高版本。下面则是正在运行的程序占用GPU的情况。

接下来就是去CUDA官网下载CUDA的安装包。

CUDA release

根据你的机子支持的CUDA先选版本,后续根据机子的系统架构版本选择。这里建议选择local的exe。

接下来双击exe理论就可以安装了。但是遭遇了几次安装失败以后,通过网络搜索发现了关键的问题。每次都是安装Nsight Compute失败,然后全暂停了。而我们下载的exe其实是一个压缩包。因此,只需要先解压(用7-zip或者bandzip之类的软件),单独安装Nsight Compute,然后再安装剩下的CUDA组件即可。因此后续再CUDA安装exe的图形界面里,要把Nisght Compute勾掉,这样就安装成功了。安装成功后在命令行输入如下命令测试。

nvcc -V

出现如下版本信息即安装成功(下面是在另一台电脑安装成功的输出信息,具体版本根据你安装版本不同决定)。

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Fri_Jun_14_16:44:19_Pacific_Daylight_Time_2024
Cuda compilation tools, release 12.6, V12.6.20
Build cuda_12.6.r12.6/compiler.34431801_0

Python安装这里就不赘述了,本站有多篇关于Python,Anaconda,Jupyter以及数据科学开发集成环境的安装配置。

至于Pytorch的安装也是参照官网。

pytorch pip安装命令行生成

另外用pip直接安装的话需要梯子,建议下载whl文件离线安装。另外换镜像也是一个选择。

安装完成以后可以测试下是否可以用GPU运算。

import torch
torch.cuda.is_available()

输出true就大功告成。

后面在jupyter测试code时还碰到一个问题(报错信息)。

Disposing session as kernel process died ExitCode: 3, Reason: OMP: Error #~5: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized

解决方案是找到你python环境里的dll文件删除即可。

参考链接:

1.2024年Pytorch + CUDA配置教程(Windows版)手把手教学,详细讲解

2.解决CUDA安装失败,Nsight Compute安装失败的一个方法

3.关于OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.错误解决方法

4.超详细 CUDA 安装与卸载教程(图文教程)

5.Window下Python+CUDA+PyTorch安装

目录
相关文章
|
28天前
|
人工智能 JavaScript 开发工具
极速上手!Claude Code 原生支持 Windows 免WSL安装教程
Claude Code 现已支持 Windows 原生运行,无需 WSL 配置。本文提供详细安装教程,涵盖 Node.js 环境验证、Git 安装及 Claude Code 配置步骤,助你快速上手这一强大 AI 编程工具。
579 5
|
2月前
|
Ubuntu Unix Linux
在Windows上轻松安装和使用Ubuntu的方法详解
继续点击“Continue”按钮以继续安装流程,随后选择清理磁盘并安装操作系统的选项。 接下来,在安装过程中,你需要选择时区。为了与你的地理位置相匹配,请选择中国上海作为你的时区设置。 在安装过程中,你还需要设置计算机的名称以及账号密码。请务必牢记这些信息,因为它们将作为你登录系统的凭证。
|
1月前
|
存储 虚拟化 Windows
VMware安装Windows10
本案例介绍了在Windows系统上使用VMware Workstation 17.5 Pro安装配置Windows 10虚拟机的详细步骤,包括所需设备、软件下载链接、虚拟机设置及系统安装全过程。
VMware安装Windows10
|
2月前
|
Ubuntu Linux Windows
如何在Ubuntu系统中安装Wine,借此来运行Windows程序
熟悉的登录画面出现,在Ubuntu系统中扫描登录微信程序。
|
2月前
|
Ubuntu Linux Shell
手把手教你安装适用于Linux的Windows子系统——Ubuntu
重启完成,你看看重新打开Ubuntu是不是发生了变化,等待几分钟,系统配置完成,根据提示设置用户名和密码即可
|
2月前
|
Ubuntu Linux 数据安全/隐私保护
Windows上快速安装Linux子系统Ubuntu
Installing, this may take a few minutes...WslRegisterDistribution failed with error: 0x800701bcError: 0x800701bc WSL 2 ?????????????????? https://aka.ms/wsl2kernelPress any key to continue... 原因是 wsl1 升级到 wsl2 之后,内核却没有升级。 解决:下载最新的wsl安装包(wsl安装包)
|
3月前
|
运维 Linux 虚拟化
VMware虚拟机安装教程,Windows下安装VMware虚拟机,附VMware下载,Windows各版本系统镜像下载
虚拟机技术允许一台物理机运行多个操作系统,提升资源利用率,节省成本。通过快照、克隆等功能,实现系统快速恢复与复制,提高运维效率。本文详细介绍VMware虚拟机的安装步骤、Windows镜像下载及系统安装激活流程,适合初学者快速入门。
985 0
|
3月前
|
Linux Docker Windows
windows docker安装报错适用于 Linux 的 Windows 子系统必须更新到最新版本才能继续。可通过运行 “wsl.exe --update” 进行更新。
适用于 Linux 的 Windows 子系统需更新至最新版本(如 wsl.2.4.11.0.x64.msi)以解决 2025 年 Windows 更新后可能出现的兼容性问题。用户可通过运行 “wsl.exe --update” 或访问提供的链接下载升级包进行更新。
986 0

推荐镜像

更多