Toybrick

推理计算可以多进程吗?

gwjjj35

注册会员

积分
108
楼主
发表于 2019-9-17 11:19:31    查看: 6747|回复: 5 | [复制链接]    打印 | 只看该作者
您好
     请问npu里可以实现多进程吗?也就是说同时对两张图片进行推理。


谢谢!
回复

使用道具 举报

jefferyzhang

版主

积分
12940
沙发
发表于 2019-9-17 11:29:50 | 只看该作者
NPU是分时复用的。你说的多线程当然是可以的。
回复

使用道具 举报

gwjjj35

注册会员

积分
108
板凳
 楼主| 发表于 2019-9-18 11:08:30 | 只看该作者
jefferyzhang 发表于 2019-9-17 11:29
NPU是分时复用的。你说的多线程当然是可以的。

请问现在3399在做运算的时候是只调用了一个CPU吗?我现在的后处理费时,可否用多进程调用多个核以提高整个模型的运算速度呢?
回复

使用道具 举报

jefferyzhang

版主

积分
12940
地板
发表于 2019-9-18 11:15:30 | 只看该作者
gwjjj35 发表于 2019-9-18 11:08
请问现在3399在做运算的时候是只调用了一个CPU吗?我现在的后处理费时,可否用多进程调用多个核以提高整 ...

当然可以。
但是你要知道python的线程是受到GIL限制,无法使用多核的。需要用多进程来实现。

3399有4个小核2个大核,随便你用都是ok的。
回复

使用道具 举报

gwjjj35

注册会员

积分
108
5#
 楼主| 发表于 2019-9-18 11:35:33 | 只看该作者
本帖最后由 gwjjj35 于 2019-9-18 11:38 编辑
jefferyzhang 发表于 2019-9-18 11:15
当然可以。
但是你要知道python的线程是受到GIL限制,无法使用多核的。需要用多进程来实现。

谢谢回复。
      我想请教一下优化的思路:用time()测试:读图 ~ 7ms,rknn_inference() ~ 55ms,后处理 ~ 70ms,请问您有什么好的方法能提高运算速度呢?
      rknn.eval_perf()测试是17ms一张图,time()测试是55ms,应该是数据交互耗时多。
回复

使用道具 举报

jefferyzhang

版主

积分
12940
6#
发表于 2019-9-20 16:46:29 | 只看该作者
gwjjj35 发表于 2019-9-18 11:35
谢谢回复。
      我想请教一下优化的思路:用time()测试:读图 ~ 7ms,rknn_inference() ~ 55ms,后处理  ...

应该不至于差这么多,除非你送的数据很大,但是模型input却很小。
你的数据应该要缩小到input尺寸后再给npu
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表