已关闭
未监测到npu占用 #334
guoyw创建于  2月6日关闭于  2月24日
guoyw
guoyw
2月6日 创建

根据readme进行操作,过程无报错,但是最后验证阶段比较疑惑,有两个问题
1.明明设置了device_id为1,但是显示仍未0
2.显示使用npu硬解,编,但是未监测到
具体如下图:
image.png
28c4feb1ec3ecd81ed6e4c3262b978a3.png

likedislike
hang成员
2月6日 评论:

尊敬的开发者您好

请注意,mp4属于封装格式,您只是从码流h264封装成mp4格式,不涉及编码同时也不涉及解码,因此不会有npu调用,显示占用是因为使用ffmpeg后会进行初始化,初始化会将卡占用。

likedislike
hang成员
2月6日 评论:

/label add question

likedislike
ascend-robotascend-robot成员
2月6日 添加了label:question
hang成员
2月6日 评论:

/label add resolved

likedislike
ascend-robotascend-robot成员
2月6日 添加了label:resolved
guoyw
guoyw
2月9日 评论:

尊敬的开发者您好

请注意,mp4属于封装格式,您只是从码流h264封装成mp4格式,不涉及编码同时也不涉及解码,因此不会有npu调用,显示占用是因为使用ffmpeg后会进行初始化,初始化会将卡占用。

@dailydeath

可是我输出是h264也是这样的打屏显示,码流的转换都是在CPU处理的吗?都不在npu?

likedislike
hang成员
2月9日 评论:

尊敬的开发者您好

如果不涉及到裸码流的编解码是不会占用npu的,您提到的输出h264也是不涉及到编解码的,因为您输入的码流本身就是h264格式的,不存在编解码操作。其次,npu-smi info属于计算瞬时占用率,对于短暂的编解码操作可能不会有提示,同时编解码底层属于dvpp操作,ai core利用率并不能很好反应dvpp使用情况

likedislike
guoyw
guoyw
2月11日 评论:

尊敬的开发者您好

如果不涉及到裸码流的编解码是不会占用npu的,您提到的输出h264也是不涉及到编解码的,因为您输入的码流本身就是h264格式的,不存在编解码操作。其次,npu-smi info属于计算瞬时占用率,对于短暂的编解码操作可能不会有提示,同时编解码底层属于dvpp操作,ai core利用率并不能很好反应dvpp使用情况

@dailydeath

将输入文件 test.264 通过 Ascend 硬件解码与编码,最终输出为 out.264

./ffmpeg -hwaccel ascend -c:v h264_ascend -i test.264 -c:v h264_ascend out.264
这里的举例不是说有编解码吗,为什么又是不涉及编解码操作呢,有点懵了,而且这里我是有个疑问,这个通过Ascend硬件编码与解码是使用的npu的算力吗?

likedislike
guoyw
guoyw
2月11日 评论:

image.png
我使用X86设备进行测试,报错设置device失败,可是可以查到卡信息,这是因为什么?还需要怎么排查,目前做过的操作如下:
image.png
image.png

likedislike
hang成员
2月11日 评论:

尊敬的开发者您好

ffmpeg参考样例是基于官方ffmpeg实现的,有关是否涉及编解码操作的内容建议您查阅ffmpeg官方相关命令,参考样例中提供的命令是包含了编解码操作的,但如下命令则仅涉及拷贝操作不涉及编解码
./ffmpeg -i test.264 -c copy out.264
同时,编解码操作均在dvpp侧进行,因此ai core的利用率无法正确反应是否正在使用

有关您x86机器的问题,建议您指定device 1尝试。

likedislike
guoyw
guoyw
2月11日 评论:

尊敬的开发者您好

ffmpeg参考样例是基于官方ffmpeg实现的,有关是否涉及编解码操作的内容建议您查阅ffmpeg官方相关命令,参考样例中提供的命令是包含了编解码操作的,但如下命令则仅涉及拷贝操作不涉及编解码
./ffmpeg -i test.264 -c copy out.264
同时,编解码操作均在dvpp侧进行,因此ai core的利用率无法正确反应是否正在使用

有关您x86机器的问题,建议您指定device 1尝试。

@dailydeath

device_id 1我设置了他还是走默认的0,这个也很奇怪,无论是x86还是arm都是设置了1还是走默认的0
image.png

./ffmpeg -hwaccel ascend -c:v h264_ascend -i test.264 -c:v h264_ascend out.264 -device_id 1 ,我使用这个命令就是有编解码存在的对吧,是咱们readme里的举例

likedislike
hang成员
2月11日 评论:

尊敬的开发者您好,

建议您尝试ffmpeg -hwaccel ascend -c:v h264_ascend -device_id 1 -i test.264 -c:v h264_ascend -device_id 1 out.264

likedislike
guoyw
guoyw
2月11日 评论:

尊敬的开发者您好,

建议您尝试ffmpeg -hwaccel ascend -c:v h264_ascend -device_id 1 -i test.264 -c:v h264_ascend -device_id 1 out.264

@dailydeath
这个也是不行的,麻烦再给看看呢

image.png

likedislike
hang成员
2月12日 评论:

尊敬的开发者您好

我们在后台尝试复现了一下,暂未复现您所说的情况,这边需要您尝试使用直接使用底层接口查看是否能够直接占卡,

import acl ret = acl.rt.set_device(0)
请您查看ret的值,若ret不为0则说明当前环境上CANN与驱动出现问题,建议重新安装。
正常情况应为如下截图image.png
image.png

likedislike
ascend-robot
ascend-robot成员
2月20日 评论:

当前Issue标记为resolved且有一段时间未进一步更新,因此我们将其标记为'stale'(闲置)状态。若你认为这是误操作,可通过添加任意评论来去除'stale'标签。标记为stale的Issue在4天内无更新活动将自动关闭。

likedislike
ascend-robotascend-robot成员
2月20日 添加了label:stale
ascend-robotascend-robot成员
2月24日 关闭了 issue
Xxiangjie10成员
9月9日 issue状态由 TODO 改变为 DONE