【PyTorch如何实现CPU、GPU相互转换?】

这篇具有很好参考价值的文章主要介绍了【PyTorch如何实现CPU、GPU相互转换?】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题的提出

写代码时非常困惑,明明下载了cuda支持包和PyTorch-GPU版本,进行NN和CNN时却是用CPU在进行计算(CPU利用率超90%,GPU利用率不到5%),如下图:
【PyTorch如何实现CPU、GPU相互转换?】
首先我检查了PyTorch是否安装成功,输入命令print(torch.cuda.is_available()),返回值为True,说明PyTorch是安装成功了,这可让我有点捉急。

看了许多文章终于解决了深度学习时CPU和GPU之间切换的问题,以下是一些总结。

1.CPU_to_GPU——定义device对象

深度学习前,可以调用torch.device函数定义当前设备,如要使用GPU计算 输入‘cuda’,使用CPU计算则输入‘cpu’。

为了以防万一,加上if判断语句,利用torch.cuda.is_available()对当前环境是否成功安装GPU版本的Pytorch进行判断,如果成功安装则选择GPU进行计算,否则CPU,代码如下:

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

反之,也可GPU_to_CPU。

如果成功安装GPU版本的Pytorch,返回值为True,相反为False。接下来,需要使用Tensor.to(device)方法进行切换操作:

  • 将Tensor数据转入GPU:
x_train,y_train,x_valid,y_valid = map(torch.tensor,(x_train,y_train,x_valid,y_valid))
x_train = x_train.to(device)
y_train = y_train.to(device)
x_valid = x_valid.to(device)
y_valid = y_valid.to(device)
  • 别忘了将model也转入GPU:
model = model.to(device)

2.CPU_to_GPU——.cuda()方法

我们可以直接使用Tensor.cuda()方法将张量用GPU调用

# 数据用GPU调用
data = data.cuda()
target = target.cuda()
# 将model用GPU调用
net = CNN()
net = net.cuda()

3.GPU_to_CPU——.cpu

结束GPU计算后,需要转换回CPU调用模式才能进行相应的数值numpy计算,否则有可能报错,切换格式为Tensor.cpu()。

print(100. * train_r[0].cpu().numpy() / train_r[1])

End

问题就解决了:
【PyTorch如何实现CPU、GPU相互转换?】

补充:

尽量直接避免使用data.cuda() ,可能会报错,建议使用data = data.cuda()文章来源地址https://www.toymoban.com/news/detail-457048.html

到了这里,关于【PyTorch如何实现CPU、GPU相互转换?】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java如何使用XMLBeans实现XML和Java对象的相互转换

    原文和更多内容: Java如何使用XMLBeans实现XML和Java对象的相互转换 (techdatafuture.com) 要使用XMLBeans实现XML和Java对象的相互转换,可以按照以下步骤进行操作: 1. 添加XMLBeans Maven依赖: dependency     groupIdorg.apache.xmlbeans/groupId     artifactIdxmlbeans/artifactId     version3.1.0/version /depen

    2024年02月16日
    浏览(50)
  • 怎么把pytorch从CPU版本替换成GPU版本

    使用pip命令 pip uninstall torch 就可以卸载当前的torch版本。(不是cpu版本一般也没有必要重装吧?) 接着找到官网https://pytorch.org/get-started/locally/ 在里面选择 根据你自己的需要选择最新的(我现在是11.8)或者没那么新的(11.7)的GPU版torch 接着复制下面的pip3的安装命令 pip3 ins

    2024年02月13日
    浏览(38)
  • conda安装GPU版pytorch,结果总是cpu版本

    正常安装某版本pytorch时,采用官网的方法和对应的命令,选择适合的pytorch、cudatoolkit版本 Previous PyTorch Versions | PyTorch 由于要在GPU上运行,但测试发现pytorch装的是cpuonly的版本: 得到的结果是false 再检查安装的pytorch版本,可以看到是cpuonly的版本: 这里建议直接采用解决三 参

    2024年02月06日
    浏览(62)
  • 解决conda安装的pytorch是CPU版本/conda安装pytorch的GPU版本

    激活conda环境,并查看 发现pytorch版本是cpu_py38*********,代表是CPU版本。 (别太在意原有的库包,因为cpu版本关联了很多包,一个是cpu版本会有不少包都是cpu版本,重装后缺什么再安装什么就是了) 我这里指定3.8的py版本重装一个叫env的环境 查看当前的conda源中,pytorch的安装

    2024年02月05日
    浏览(65)
  • pytorch2.0.1 安装部署(cpu+gpu) linux+windows

    官网打开可能较慢,耐心等待,可以正常打开。 链接:pytorch官网 2023年12月10日更新,演示版本2.1.1 如果中间有任何报错,参考最后一节的处理 1.pytorch是一个和tensorflow类似的框架 如果需要安装tensorflow,可以参考: tensorflow 1,2 cpu+gpu(windows+linux)安装 2.安装anaconda 主要是为

    2024年02月09日
    浏览(47)
  • Linux和Windows系统下:安装Anaconda、Paddle、tensorflow、pytorch,GPU[cuda、cudnn]、CPU安装教学,以及查看CPU、GPU内存使用情况

    Anaconda安装:Anaconda是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。使用Anaconda可以通过创建多个独立的Python环境,避免用户的Python环境安装太多不同版本依赖导致冲突。 Anaconda 是一个免费开源的 Python 和 R 语言的发行版本,用于计算科学,Anac

    2024年02月04日
    浏览(64)
  • pytorch 测量模型运行时间,GPU时间和CPU时间,model.eval()介绍

    time.time() time.perf_counter() time.process_time() time.time() 和time.perf_counter() 包括sleep()time 可以用作一般的时间测量,time.perf_counter()精度更高一些 time.process_time()当前进程的系统和用户CPU时间总和的值 测试代码: 测试结果: 更详细解释参考 Python3.7中time模块的time()、perf_counter()和proce

    2024年02月06日
    浏览(46)
  • ubuntu22.04下使用conda安装pytorch(cpu及gpu版本)

    本文介绍了conda下安装cpu、gpu版本的pytorch;并介绍了如何设置镜像源 系统:ubuntu22.04 显卡:RTX 3050 依赖工具:miniconda 注意:默认conda安装pytorch的是cpu版本,如需要安装GPU版本的,注意直接看后面 创建一个新conda环境 新创建的环境不包含任何依赖可以使用 conda list 查看一下

    2024年02月20日
    浏览(39)
  • 在anaconda下安装pytorch + python3.8+GPU/CPU版本 详细教程

    没安装Anaconda的同学可以参考以下安装链接: https://blog.csdn.net/qq_45281807/article/details/112442577 按照安装CPU版本和GPU两个版本进行分类,一般运行程序建议使用CPU版本的,安装更方便。 注意!如果切换镜像后当出现下载不了的情况,就先切换默认源,然后再修改另一个可以使用的

    2024年01月19日
    浏览(74)
  • 如何用conda安装PyTorch(windows、GPU)最全安装教程(cudatoolkit、python、PyTorch、Anaconda版本对应问题)(完美解决安装CPU而不是GPU的问题)

            安装PyTorch的开发环境:Anaconda+CUDA+cuDNN+PyCharm Community 1.1 版本选择 第一步就是最关键的版本对应问题(这决定你能否成功安装PyTorch,以及能否成功安装GPU版本的关键问题),可以这么说,版本不能对应好,后面有很大的问题,因此,我们要先确定版本的对应关系。(

    2024年02月07日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包