plugin开发中,IPluginV2DynamicExt和IPluginV2IOExt区…TensorRT的plugin开发中,IPluginV2DynamicExt和IPluginV2IOExt区别?
TensorRT plugin 用于不支持或需自定义的算子。IPluginV2 为固定 shape;IPluginV2Ext 扩展了类型与 format;IPluginV2DynamicExt 与 IPluginV2IOExt 用于动态与 IO 扩展。
IPluginV2DynamicExt:支持 dynamic shape 的 plugin。关键方法:getOutputDimensions、configurePlugin 根据输入维度推导输出维度与内部配置;enqueue 接收 runtime 的 actual shape,执行计算。用于 输入/输出维在运行时变化 的算子(如变长 seq、dynamic batch),需在 build 时通过 optimization profile 给范围。
IPluginV2IOExt:扩展 输入输出类型与 layout(如 FP32/FP16/INT8、NCHW/NHWC),不强调 dynamic shape。用于需要多精度或多 layout 的 plugin,或与 IO 格式转换配合。若只需 dynamic shape,用 IPluginV2DynamicExt;若需丰富 IO 类型/layout,用 IPluginV2IOExt 或与 DynamicExt 组合(视 TensorRT 版本 API)。
| 返回模块 | 返回总览 |