当前位置: 首页 > news >正文

PyTorch_指定运算设备 (包含安装 GPU 的 PyTorch)

PyTorch默认会将张量创建在 CPU 控制的内存中,即:默认的运算设备为 CPU。我们也可以将张量创建在 GPU 上,能够利用对于矩阵计算的优势加快模型训练。

将张量移动到 GPU 上有两种方法:

  1. 使用 cuda 方法
  2. 直接在 GPU 上创建张量
  3. 使用 to 方法指定设备

安装含有 GPU 的 PyTorch

通过这个可以判断电脑里是否已经安装 CUDA

import torch print(torch.cuda.is_available()) # 判断是否有可用的 GPU 设备

如果结果输出是 False,说明设备里没有 GPU 的 PyTorch 的版本。

可以通过 PyTorch官网来安装含有 GPU 的 PyTorch 的版本。

安装 CUDA 12.8 版本的pip命令

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128

这样就安装好含有 GPU 的 PyTorch 了。


代码

import torch # 使用 cuda 方法
def test01():data = torch.tensor([10, 20, 30])print("存储设备:", data.device)# 将张量移动到 GPU 设备上data = data.cuda()print("存储设备:", data.device)# 将张量从 GPU 移动到 CPU 设备上data = data.cpu()print("存储设备:", data.device)# 直接将张量创建在指定设备上
def test02():data = torch.tensor([10, 20, 30], device='cuda')print("存储设备:", data.device)# 将张量移动到 CPU 设备上data = data.cpu()print("存储设备:", data.device)# 使用 to 方法
def test03():data = torch.tensor([10, 20, 30])print("存储设备:", data.device)# 将张量移动到 GPU 设备上data = data.to('cuda')print("存储设备:", data.device)# 将张量从 GPU 移动到 CPU 设备上data = data.to('cpu')print("存储设备:", data.device)# 注意点:张量存储在不同设备上的张量不能够直接运算
def test04():data1 = torch.tensor([10,20,30])data2 = torch.tensor([1,2,3], device='cuda')# RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu!# data1 = data1.to('cuda') # 这样可以解决了data = data1 + data2 print(data)# 如果你的电脑上安装 pytorch 不是 gpu 版本的,或者电脑本身没有 gpu 设备环境# 否则下面的调用 cuda 函数的代码会报错# data1 = data1.cuda() if __name__ == "__main__":test04() 
http://www.dtcms.com/a/169836.html

相关文章:

  • HybridCLR 详解:Unity 全平台原生 C# 热更新方案
  • 【言语理解】中心理解题目之结构分析
  • 安卓基础(MediaProjection)
  • 基于Springboot旅游网站系统【附源码】
  • rails 8 CSS不起效问题解决
  • 华为云Flexus+DeepSeek征文|DeepSeek-V3商用服务开通教程
  • GCD 深入解析:从使用到底层实现
  • 数据库=====
  • 数字信号处理学习笔记--Chapter 0 数字信号处理概述
  • 【深度学习】典型的 CNN 网络
  • 力扣-字符串-165 比较版本号
  • P4552 [Poetize6] IncDec Sequence 题解
  • 玩转Docker | 使用Docker部署AI证件照工具
  • ARM 算数指令
  • 鼠标悬浮特效:常见6种背景类悬浮特效
  • 如何在 CentOS 7 命令行连接 Wi-Fi?如何在 Linux 命令行连接 Wi-Fi?
  • 蟋蟀的叫声,大自然的温度计
  • 网络Tips20-002
  • 多多铃声 7.4| 拥有丰富的铃声曲库,满足不同用户的个性化需求,支持一键设置手机铃声
  • 多把锁以及线程死锁问题
  • Spring AI 实战:第三章、Spring AI结构化输出之告别杂乱无章
  • 【RocketMQ NameServer】- NameServer 启动源码
  • 如何设计抗Crosstalk能力强的PCB镀穿孔
  • 一种基于重建前检测的实孔径雷达实时角超分辨方法——论文阅读
  • ROS2安装简明教程
  • 算力经济模型研究:从云计算定价到去中心化算力市场设计
  • Linux时钟与时间API
  • spring2.x详解介绍
  • Power Query精通指南1:查询结构设计、数据类型、数据导入与迁移(平面文件、Excel、Web)
  • 爬虫准备前工作