概念及使用约束【免费下载链接】docs该仓库用于维护cann公共文档项目地址: https://gitcode.com/cann/docs相关概念表 1概念介绍概念描述动态Batch/动态分辨率在某些场景下模型每次输入的batch size或分辨率是不固定的如检测出目标后再执行目标识别网络由于目标个数不固定导致目标识别网络输入BatchSize不固定。- 动态Batch用户执行推理时其batch size是动态可变的。- 动态分辨率: 用户执行推理时每张图片的分辨率H*W是动态可变的。动态维度ND格式为了支持Transformer等网络在输入格式的维度不确定的场景需要支持ND格式下任意维度的动态设置。使用约束使用场景须知对同一个模型执行推理时AIPP包括静态AIPP和动态AIPP与动态维度ND格式不能同时使用。对同一个模型执行推理时以下方式只能选择其中一种- 调用aclmdlSetDatasetTensorDesc接口设置Shape范围- 调用aclmdlSetDynamicBatchSize接口设置动态Batch- 调用aclmdlSetDynamicHWSize接口设置动态分辨率- 调用aclmdlSetInputDynamicDims接口设置动态维度的维度值申请模型推理的输出内存时可以按照各档位的实际大小申请内存也可以调用aclmdlGetOutputSizeByIndex接口获取内存大小后再申请内存建议使用该方式确保内存足够。静态AIPP和动态分辨率同时使用时由于动态分辨率场景下输入图片的宽和高不确定因此在使用ATC工具的insert_op_conf参数传入AIPP配置文件时AIPP配置文件中不能开启Crop和Padding功能并且需要将配置文件中的src_image_size_w和src_image_size_h取值设置为0。动态AIPP和动态Batch同时使用时- 调用aclmdlCreateAIPP接口设置batchSize时batchSize要设置为最大batch size。- 模型中需要进行动态AIPP处理的data节点其对应的输入内存大小需按照最大Batch来申请。动态AIPP和动态分辨率同时使用时- 若在设置动态AIPP参数时开启了抠图或缩放或补边功能则不能与动态分辨率同时使用。- 若在设置动态AIPP参数时未开启抠图或缩放或补边功能在与动态分辨率同时使用时需确保通过aclmdlSetAIPPSrcImageSize接口设置的宽、高与通过aclmdlSetDynamicHWSize接口设置的宽、高相等都必须设置成模型转换时动态分辨率最大档位的宽、高。- 模型中需要进行动态AIPP处理的data节点其对应的输入内存大小需按照最大分辨率宽、高来申请。动态AIPP和动态Shape输入设置Shape范围同时使用时动态AIPP的输出图片宽、高要在所设置的Shape范围内。【免费下载链接】docs该仓库用于维护cann公共文档项目地址: https://gitcode.com/cann/docs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
CANN文档动态形状概念约束
概念及使用约束【免费下载链接】docs该仓库用于维护cann公共文档项目地址: https://gitcode.com/cann/docs相关概念表 1概念介绍概念描述动态Batch/动态分辨率在某些场景下模型每次输入的batch size或分辨率是不固定的如检测出目标后再执行目标识别网络由于目标个数不固定导致目标识别网络输入BatchSize不固定。- 动态Batch用户执行推理时其batch size是动态可变的。- 动态分辨率: 用户执行推理时每张图片的分辨率H*W是动态可变的。动态维度ND格式为了支持Transformer等网络在输入格式的维度不确定的场景需要支持ND格式下任意维度的动态设置。使用约束使用场景须知对同一个模型执行推理时AIPP包括静态AIPP和动态AIPP与动态维度ND格式不能同时使用。对同一个模型执行推理时以下方式只能选择其中一种- 调用aclmdlSetDatasetTensorDesc接口设置Shape范围- 调用aclmdlSetDynamicBatchSize接口设置动态Batch- 调用aclmdlSetDynamicHWSize接口设置动态分辨率- 调用aclmdlSetInputDynamicDims接口设置动态维度的维度值申请模型推理的输出内存时可以按照各档位的实际大小申请内存也可以调用aclmdlGetOutputSizeByIndex接口获取内存大小后再申请内存建议使用该方式确保内存足够。静态AIPP和动态分辨率同时使用时由于动态分辨率场景下输入图片的宽和高不确定因此在使用ATC工具的insert_op_conf参数传入AIPP配置文件时AIPP配置文件中不能开启Crop和Padding功能并且需要将配置文件中的src_image_size_w和src_image_size_h取值设置为0。动态AIPP和动态Batch同时使用时- 调用aclmdlCreateAIPP接口设置batchSize时batchSize要设置为最大batch size。- 模型中需要进行动态AIPP处理的data节点其对应的输入内存大小需按照最大Batch来申请。动态AIPP和动态分辨率同时使用时- 若在设置动态AIPP参数时开启了抠图或缩放或补边功能则不能与动态分辨率同时使用。- 若在设置动态AIPP参数时未开启抠图或缩放或补边功能在与动态分辨率同时使用时需确保通过aclmdlSetAIPPSrcImageSize接口设置的宽、高与通过aclmdlSetDynamicHWSize接口设置的宽、高相等都必须设置成模型转换时动态分辨率最大档位的宽、高。- 模型中需要进行动态AIPP处理的data节点其对应的输入内存大小需按照最大分辨率宽、高来申请。动态AIPP和动态Shape输入设置Shape范围同时使用时动态AIPP的输出图片宽、高要在所设置的Shape范围内。【免费下载链接】docs该仓库用于维护cann公共文档项目地址: https://gitcode.com/cann/docs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考