CANN 版本 6.0.1
设备:Atlas 200
算子配置文件:
[
{
"op": "NonMaxSuppressionV3",
"name": "nms_op",
"input_desc": [
{
"format": "ND",
"shape": [47,4],
"type": "float32"
},
{
"format": "ND",
"shape": [47],
"type": "float32"
},
{
"format": "ND",
"shape": [],
"type": "int32"
},
{
"format": "ND",
"shape": [],
"type": "float32"
},
{
"format": "ND",
"shape": [],
"type": "float32"
}
],
"output_desc": [
{
"format": "ND",
"shape": [-1],
"shape_range": [[1,-1]],
"type": "int32"
}
]
}
]
使用固定输入的NonMaxSuppressionV3单算子调用时,由于输出维度不确定,参考文档执行动态Shape算子(不注册算子选择器)-单算子调用-应用开发(C++)-推理应用开发,需要使用aclopInferShape()推断输出维度
接口调用后,失败返回500002
[ERROR] GE(3054,execute_add_op):2025-01-13-07:32:37.703.815 [operator_factory_impl.cc:75]3054 GetOpsTypeList: ErrorNo: 4294967295(failed) [INFER][DEFAULT][Check][Param] no operator creators found
[ERROR] GE(3054,execute_add_op):2025-01-13-07:32:37.704.087 [operator_factory.cc:44]3054 GetOpsTypeList: ErrorNo: 4294967295(failed) [INFER][DEFAULT][Get][OpsTypeList] failed.
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.275 [op.cpp:444]3054 LoadOpsProto: [INFER][DEFAULT][Get][OpsType]GetOpsTypeList failed.
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.482 [op.cpp:648]3054 aclopInferShape: [INFER][DEFAULT][Load][OpsProto]Load opsProto lib fail.
[INFO] aclopInferShape ret:500002
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.803 [tensor_desc_internal.cpp:391]3054 aclGetTensorDescDimRange: [Check][Index]index out of range. index = 0, numDims = 0
此时构造一个输出维度用于推理使用,推理接口aclopExecuteV2()也报错,返回507018
这两个报错都是要联系技术支持,请教下报错的原因,以及NMS算子是怎么推断输出dim的
日志见附件
CANN 版本 6.0.1
设备:Atlas 200
算子配置文件:
[
{
"op": "NonMaxSuppressionV3",
"name": "nms_op",
"input_desc": [
{
"format": "ND",
"shape": [47,4],
"type": "float32"
},
{
"format": "ND",
"shape": [47],
"type": "float32"
},
{
"format": "ND",
"shape": [],
"type": "int32"
},
{
"format": "ND",
"shape": [],
"type": "float32"
},
{
"format": "ND",
"shape": [],
"type": "float32"
}
],
"output_desc": [
{
"format": "ND",
"shape": [-1],
"shape_range": [[1,-1]],
"type": "int32"
}
]
}
]
使用固定输入的NonMaxSuppressionV3单算子调用时,由于输出维度不确定,参考文档执行动态Shape算子(不注册算子选择器)-单算子调用-应用开发(C++)-推理应用开发,需要使用aclopInferShape()推断输出维度
接口调用后,失败返回500002
[ERROR] GE(3054,execute_add_op):2025-01-13-07:32:37.703.815 [operator_factory_impl.cc:75]3054 GetOpsTypeList: ErrorNo: 4294967295(failed) [INFER][DEFAULT][Check][Param] no operator creators found
[ERROR] GE(3054,execute_add_op):2025-01-13-07:32:37.704.087 [operator_factory.cc:44]3054 GetOpsTypeList: ErrorNo: 4294967295(failed) [INFER][DEFAULT][Get][OpsTypeList] failed.
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.275 [op.cpp:444]3054 LoadOpsProto: [INFER][DEFAULT][Get][OpsType]GetOpsTypeList failed.
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.482 [op.cpp:648]3054 aclopInferShape: [INFER][DEFAULT][Load][OpsProto]Load opsProto lib fail.
[INFO] aclopInferShape ret:500002
[ERROR] ASCENDCL(3054,execute_add_op):2025-01-13-07:32:37.704.803 [tensor_desc_internal.cpp:391]3054 aclGetTensorDescDimRange: [Check][Index]index out of range. index = 0, numDims = 0
此时构造一个输出维度用于推理使用,推理接口aclopExecuteV2()也报错,返回507018
这两个报错都是要联系技术支持,请教下报错的原因,以及NMS算子是怎么推断输出dim的
日志见附件