--dynamic_batch_size

功能说明

设置动态BatchSize参数,适用于执行推理时,每次处理图片或者句子数量不固定的场景。

在某些推理场景,如检测出目标后再执行目标识别网络,由于目标个数不固定导致目标识别网络输入BatchSize不固定。如果每次推理都按照最大的BatchSize或最大分辨率进行计算,会造成计算资源浪费。因此,推理需要支持动态BatchSize和动态分辨率的场景,使用ATC工具时,通过该参数设置支持的BatchSize,通过--dynamic_image_size参数设置支持的分辨率档位。

模型转换完成后,在生成的om模型中,会新增一个输入,在模型推理时通过该新增的输入提供具体的BatchSize值。例如,a输入的BatchSize是动态的,在om模型中,会有与a对应的b输入来描述a的具体BatchSize。

关联参数

该参数需要与--input_shape配合使用,不能与--dynamic_image_size--dynamic_dims--input_shape_range同时使用。

且只支持N在shape首位的场景,即shape的第一位设置为"-1"。如果N在非首位场景下,请使用--dynamic_dims参数进行设置。

参数取值

参数值:档位数,例如"1,2,4,8"。

参数值格式:指定的参数必须放在双引号中,档位之间使用英文逗号分隔。

参数值约束:档位数取值范围为(1,100],即必须设置至少2个档位,最多支持100档配置;每个档位数值建议限制为:[1~2048]。

推荐配置及收益

示例

--input_shape="data:-1,3,416,416;img_info:-1,4"  --dynamic_batch_size="1,2,4,8"

其中,“--input_shape”中的“-1”表示设置动态BatchSize。则ATC在模型编译时,支持的输入组合档数分别为:

第0档:data(1,3,416,416)+img_info(1,4)

第1档:data(2,3,416,416)+img_info(2,4)

第2档:data(4,3,416,416)+img_info(4,4)

第3档:data(8,3,416,416)+img_info(8,4)

支持的型号

Atlas 200/300/500 推理产品

Atlas 推理系列产品(Ascend 310P处理器)

Atlas 训练系列产品

Atlas 200/500 A2推理产品

Atlas A2训练系列产品

依赖约束