網站首頁 編程語言 正文
正文
CPU(Central Processing Unit):中央處理器 GPU(Graphics Processing Unit):圖形處理器 NPU(Neural Network Processing Unit):神經網絡處理器,是基于神經網絡算法與加速的新型處理器總稱。
一、 torch.arange() 和 torch.range() 的用法
pytorch官網介紹:
torch.arange(start,end,step) 用于產生一個從start開始,到end結束(注意不包括end),步長為step的Tensor, 并且可以設置 Tensor 的 device 和 dtype
torch.arange 與 torch.range 功能及其相似,不同之處在于 torch.range(start,end,step) 生成的 Tensor, 包括 end
如:
a=torch.arange(1, 7, 2)
b=torch.range(1, 7, 2)
print(a)
print(b)
輸出:
tensor([1, 3, 5])
tensor([1., 3., 5., 7.])
但是建議使用 torch.arange ,因為 torch.range 即將被pytorch 移除:
二、 torch.arange 支持的數據類型格式
只考慮 float 類型
cpu 不支持 float16,支持 float32 和 float64 cpu 支持 float16 、float32 和 float64 npu 不支持 float16 和 float64 ,只支持 float32
事實上 npu 基本不支持所有的 64位類型,包括 int64 和 float64,與算子無關。當然cpu 是支持 16位數據類型的,只是 torch.arange 不支持而已。
驗證代碼如下:
import torch
# CPU
a=torch.arange(1, 10, 2,device="cpu",dtype=torch.float16) # 不可以
a=torch.arange(1, 10, 2,device="cpu",dtype=torch.float32) # 可以
a=torch.arange(1, 10, 2,device="cpu",dtype=torch.float64) # 可以
# GPU
a=torch.arange(1, 10, 2, device="cuda:0",dtype=torch.float16) # 可以
a=torch.arange(1, 10, 2, device="cuda:0",dtype=torch.float32) # 可以
a=torch.arange(1, 10, 2, device="cuda:0",dtype=torch.float64) # 可以
# NPU
a=torch.arange(1, 10, 2, device="npu:0",dtype=torch.float16) # 不可以
a=torch.arange(1, 10, 2, device="npu:0",dtype=torch.float32) # 可以
a=torch.arange(1, 10, 2, device="npu:0",dtype=torch.float64) # 不可以
print(a)
原文鏈接:https://juejin.cn/post/7144578070131769374
相關推薦
- 2022-06-18 Android?Recyclerview實現左滑刪除功能_Android
- 2023-05-31 python升級pip及失敗處理方式_python
- 2022-05-31 Python中的?if?語句及使用方法_python
- 2023-03-21 C++將字符串格式化的幾種方式總結_C 語言
- 2022-05-05 Android開發之自定義加載動畫詳解_Android
- 2022-06-27 python?使用ctypes調用C/C++?dll詳情_python
- 2023-12-19 spring boot configuration annotation processor not
- 2022-11-14 React中的生命周期詳解_React
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支