更新时间:2021-03-18 GMT+08:00
分享

注册算子数超过最大规格

现象描述

推理过程中,用户load model出现报错。出现如下日志信息:ProgramRegister:register kernel out of 480000和register program failed所示:

[WARNING] RUNTIME(256902,mgq_test):2020-06-24-15:59:10.424.792 [runtime/feature/src/runtime.cc:413]256902 ProgramRegister:register kernel out of 480000
[WARNING] RUNTIME(256902,mgq_test):2020-06-24-15:59:10.424.804 [runtime/feature/src/api_impl.cc:62]256902 DevBinaryRegister:register program failed
[ERROR] RUNTIME(256902,mgq_test):2020-06-24-15:59:10.424.817 [runtime/feature/src/logger.cc:53]256902 DevBinaryRegister:ret=1, invalid value

可能原因

通过日志分析报错的原因可能是一个进程内算子等资源注册超过最大规格:

  • 反复load、unload模型。
  • 模型太大,一个进程内的注册总算子数超过最大规格。

处理步骤

针对上述可能原因,可以按以下方式处理:

  • 分析model,简化模型或者降低动态batch档次。
  • 算子数是进程资源,model太大的情况下建议一个进程open一个device。
  • 避免反复load、unload操作,做到一个model load一次,执行多次。
分享:

    相关文档

    相关产品

关闭导读