pytorch判断是否cuda 判断变量类型方式


Posted in Python onJune 23, 2020

我就废话不多说了,那就直接看代码吧~

inputs = Variable(torch.randn(2,2))
inputs.is_cuda # will return false
inputs = Variable(torch.randn(2,2).cuda())
inputs.is_cuda # returns true

判断:

torch.is_tensor() #如果是pytorch的tensor类型返回true

torch.is_storage() # 如果是pytorch的storage类型返回ture

这里还有一个小技巧,如果需要判断tensor是否为空,可以如下

>>> a=torch.Tensor()
>>> len(a)
0
>>> len(a) is 0
True

设置:通过一些内置函数,可以实现对tensor的精度, 类型,print打印参数等进行设置

torch.set_default_dtype(d) #对torch.tensor() 设置默认的浮点类型
 
torch.set_default_tensor_type() # 同上,对torch.tensor()设置默认的tensor类型
>>> torch.tensor([1.2, 3]).dtype   # initial default for floating point is torch.float32
torch.float32
>>> torch.set_default_dtype(torch.float64)
>>> torch.tensor([1.2, 3]).dtype   # a new floating point tensor
torch.float64
>>> torch.set_default_tensor_type(torch.DoubleTensor)
>>> torch.tensor([1.2, 3]).dtype # a new floating point tensor
torch.float64
 
torch.get_default_dtype() #获得当前默认的浮点类型torch.dtype
 
torch.set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, profile=None)#)
## 设置printing的打印参数

判断变量类型:下面两种方法都行

if isinstance(downsample, torch.nn.Module):
# if torch.type(downsample) != torch.IntTensor:

补充知识:pytorch:测试GPU是否可用

废话不多说,看代码吧~

import torch
flag = torch.cuda.is_available()
print(flag)

ngpu= 1
# Decide which device we want to run on
device = torch.device("cuda:0" if (torch.cuda.is_available() and ngpu > 0) else "cpu")
print(device)
print(torch.cuda.get_device_name(0))
print(torch.rand(3,3).cuda())
True
cuda:0
GeForce GTX 1080
tensor([[0.9530, 0.4746, 0.9819],
  [0.7192, 0.9427, 0.6768],
  [0.8594, 0.9490, 0.6551]], device='cuda:0')

以上这篇pytorch判断是否cuda 判断变量类型方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中黄金分割法实现方法
May 06 Python
Python标准库之Sys模块使用详解
May 23 Python
Python中pip安装非PyPI官网第三方库的方法
Jun 02 Python
Python及Django框架生成二维码的方法分析
Jan 31 Python
Python实现修改IE注册表功能示例
May 10 Python
如何用python整理附件
May 13 Python
Python3.6简单反射操作示例
Jun 14 Python
Numpy之文件存取的示例代码
Aug 03 Python
python 通过可变参数计算n个数的乘积方法
Jun 13 Python
简单了解python的break、continue、pass
Jul 08 Python
Python中函数的返回值示例浅析
Aug 28 Python
Python浮点数四舍五入问题的分析与解决方法
Nov 19 Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
Jun 23 #Python
python如何查看安装了的模块
Jun 23 #Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
Jun 23 #Python
Python dict的常用方法示例代码
Jun 23 #Python
Python3 webservice接口测试代码详解
Jun 23 #Python
python和JavaScript哪个容易上手
Jun 23 #Python
pytorch 查看cuda 版本方式
Jun 23 #Python
You might like
输出控制类
2006/10/09 PHP
NOT NULL 和NULL
2007/01/15 PHP
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
2009/09/30 PHP
PHP Zip解压 文件在线解压缩的函数代码
2010/05/26 PHP
php实现简单洗牌算法
2013/06/18 PHP
PHP用FTP类上传文件视频等的简单实现方法
2016/09/23 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
laravel orm 关联条件查询代码
2019/10/21 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
Javascript & DHTML 实例编程(教程)基础知识
2007/06/02 Javascript
页面按钮禁用与解除禁用的方法
2014/02/19 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
javascript中indexOf技术详解
2015/05/07 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
2015/12/31 Javascript
JavaScript实现复制文章自动添加版权
2016/08/02 Javascript
Node.js中文件操作模块File System的详细介绍
2017/01/05 Javascript
JavaScript如何一次性展示几万条数据
2017/03/30 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
简单实现js放大镜效果
2017/07/24 Javascript
微信小程序之页面跳转和参数传递的实现
2017/09/29 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
基于vue开发微信小程序mpvue-docs跳转页面功能
2019/04/10 Javascript
bootstrap table插件动态加载表头
2019/07/19 Javascript
利用layer实现表单完美验证的方法
2019/09/26 Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
2020/01/07 Javascript
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
Python实现查找字符串数组最长公共前缀示例
2019/03/27 Python
Django 自动生成api接口文档教程
2019/11/19 Python
tensorflow-gpu安装的常见问题及解决方案
2020/01/20 Python
使用opencv识别图像红色区域,并输出红色区域中心点坐标
2020/06/02 Python
解决Keras自带数据集与预训练model下载太慢问题
2020/06/12 Python
欧迪办公美国官网:Office Depot
2016/08/22 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
2016年暑期见闻作文
2015/11/25 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
docker 制作mysql镜像并自动安装
2022/05/20 Servers