结论
4-5 秒的推理耗时对于 InterVL-1B 在 S100 上偏慢,但取决于具体配置。 优化后通常可降至 1-2 秒级别。
关键排查点
1. 确认模型量化状态
# 检查模型是否为量化版本
# 官方推荐的应该是 int8 量化后的 hbm 模型
| 模型精度 | 预期耗时参考 |
|---|---|
| FP16/FP32 | 5-10 秒+ (不推荐) |
| INT8 量化 | 1-3 秒 (推荐) |
| INT4 量化 | 0.5-1.5 秒 (如支持) |
2. 检查推理配置
请确认以下参数:
- 输入分辨率:是否使用了过高的分辨率(如 1024×1024)?建议 224×224 或 384×384
- BPU 加速:是否启用了 BPU 推理(而非 CPU)?
- 模型格式:是否使用了转换后的
.hbm格式?
3. 性能测试命令参考
# 使用 hrt_model_exec 测试模型性能
hrt_model_exec -m your_model.hbm -i input_data -n 100
# 查看 BPU 利用率
hb_profiler --show
优化建议
步骤 1:确认使用官方量化模型
# 从 RDK Model Zoo 获取已优化的 InterVL 模型
# 路径参考:/opt/horizon/hbrt/model_zoo/
步骤 2:降低输入分辨率
# 在推理前对图像进行 resize
image = cv2.resize(image, (384, 384)) # 尝试 224 或 384
步骤 3:检查推理后端
# 确认使用了 BPU 后端而非 CPU
# 检查模型加载时的 device 设置
步骤 4:使用性能分析工具
# 查看各阶段耗时
hb_profiler --detail
需要补充的信息
为了更准确判断,请提供:
- 模型来源:官方 Model Zoo 还是自行转换?
- 量化精度:int8 / fp16 / fp32?
- 输入尺寸:图像分辨率是多少?
- 推理框架:使用的是哪个示例代码?
- 完整耗时分布:预处理 / 推理 / 后处理各占多少?
相关资源
建议参考以下社区帖子获取优化经验:
如问题仍未解决,建议:
- 在本帖补充上述信息
- 查看官方文档中 InterVL 的性能指标
- 联系技术支持确认是否为已知问题