Windows下CUDA+pytorch安装

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

记录一下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 ® Cuda compiler driver
Copyright © 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安装

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### 不同操作系统上安装 CUDAPyTorch 的详细教程 #### Windows 系统上的安装过程 在 Windows安装 CUDAPyTorch 需要遵循一系列特定的步骤来确保兼容性和稳定性。首先,确认系统的硬件支持 NVIDIA 显卡并具备相应的驱动程序本[^1]。接着下载对应本的 CUDA 工具包,并将其解压到指定目录。为了使系统识别 CUDA 安装路径,在环境变量中添加 `CUDA_PATH` 及其子目录至 PATH 中。 完成上述设置后,可以依据官方推荐的方式通过 Conda 或 Pip 来安装适合 GPU 本的 PyTorch。例如,对于 Python 3.x 用户可以通过运行如下命令实现安装: ```bash pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 ``` 此命令适用于 CUDA 11.8 支持的设备[^2]。如果需要其他 CUDA 本的支持,则需调整 URL 参数中的具体本号。 #### Linux 系统上的安装方法 Linux 下的操作相对更为灵活且自动化程度较高。同样先检查显卡驱动状态是否正常工作以及当前已安装CUDA本信息。利用 apt-get 更新源列表之后可以直接获取最新的 NVIDIA 软件栈组件。 随后借助 Anaconda 创建独立的工作区以便管理依赖关系复杂的应用场景。激活新建立好的虚拟环境下执行下面这条语句即可加载预编译好针对目标平台优化过的二进制文件形式发布的 PyTorch 包: ```bash conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c nvidia ``` 这里指定了 `cudatoolkit=11.8` 表明所期望使用的底层图形计算框架接口标准。 #### macOS 系统下的注意事项 由于 Apple 平台缺乏原生对 NVidia GPUs 的全面支持,因此大多数情况下仅能依靠 CPU 执行深度学习模型训练任务或者考虑采用 Metal Performance Shaders (MPS) 技术作为替代方案之一。此时只需简单地调用无附加选项的标准发行即能满足需求: ```bash pip install torch torchvision torchaudio ``` 以上就是跨多个主流桌面级 OS 实现高效部署 DL 开发环境所需经历的主要环节概述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值