2.调用算子清单中的NonMaxSuppression算子。
算子描述文件:

ATC转换成功,但是在调用时需要输入一个scalar tensor(max_outsize)到算子中,那应该怎么定义它的shape?它应该作为一个tensor输入吗?如果作为一个tensor,那它的dim应该是0,但是在创建tensordesc的接口中,dim为0则表示为空tensor。

同时,NMS算子是需要使用到这个输入进行输出推到的,此时它应该是一个常量

在TopK的算子描述文件中,也指出了传入的是常量

但是怎么让它作为一个常量输入?
3.我先暂时把scalar的shape当做是[1],尝试调用。

参考的是“执行动态Shape算子示例代码(不注册算子选择器)”给出的示例:

提示InferShape失败。

日志为log1.txt。
然后尝试直接给定输出shape,不进行shape推导(Add算子是成功的):

提示执行错误,同时第三个输入(即标量输入)与实际不符:

数据生成代码如下:

日志为log2.txt。
2.调用算子清单中的NonMaxSuppression算子。
算子描述文件:
ATC转换成功,但是在调用时需要输入一个scalar tensor(max_outsize)到算子中,那应该怎么定义它的shape?它应该作为一个tensor输入吗?如果作为一个tensor,那它的dim应该是0,但是在创建tensordesc的接口中,dim为0则表示为空tensor。
同时,NMS算子是需要使用到这个输入进行输出推到的,此时它应该是一个常量
在TopK的算子描述文件中,也指出了传入的是常量
但是怎么让它作为一个常量输入?
3.我先暂时把scalar的shape当做是[1],尝试调用。
参考的是“执行动态Shape算子示例代码(不注册算子选择器)”给出的示例:
提示InferShape失败。
日志为log1.txt。
然后尝试直接给定输出shape,不进行shape推导(Add算子是成功的):
提示执行错误,同时第三个输入(即标量输入)与实际不符:
数据生成代码如下:
日志为log2.txt。