自学内容网 自学内容网

torch-npu的配置

1、简单的调用npu

import torch
import torch_npu
x = torch.randn(10000, 10000).npu()
y = torch.randn(10000, 10000).npu()
for _ in range(10000):
    z = x.mm(y)
这个代码的出现就会导致,核心使用99%,显存| 1633   

2、安装torch-npu

安装方法看官网介绍,这个有些忘记了,可以看我的其余文档,现在假设已经正确安装torch-npu
可能有用的参考网站
**https://pypi.org/project/torch-npu
https://www.cnblogs.com/bonelee/p/18194079
第二个文档中的信息我验证是正确的,而且我也是按照第二个链接中的文档实验的

3、配置torch-npu

目的是:使用核心和占用显存
方法如下

import torch
import torch_npu
from torch_npu.contrib import transfer_to_npu
#1、后面跟从torch中导入的其余内容,如下
import torch.nn as nn
import torch.utils.data as Data
#2、其余地方把下面的第一行改成第二行就可以
# inputs, labels = inputs.float().to(device), labels.long().to(device) 
inputs, labels = inputs.float().npu(), labels.long().npu() 

其余地方我没变

注意事项
1、因为使用的是910b,性能很强大,我代码计算简单,核心利用率一直是0,但是实际上是用了核心的,为啥我这样说,看下面的验证
使用CPU训练时候,cpu占用
在这里插入图片描述
使用npu就是按照上面的方法修改后,cpu占用
在这里插入图片描述
不同之处是:使用CPU的时候其余的进程是间隙的出现接近50%利用率,但是使用npu的时候不存在,所以我断定我前面的方法是使用npu成功了


原文地址:https://blog.csdn.net/qq_43808611/article/details/142848401

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!