-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
背景
当前视觉推理系统已实现100FPS,但仍有进一步提升空间。为了满足更高实时性场景的需求,计划利用CUDA深度优化,冲击120FPS的峰值性能。
需求与目标
- 推理主循环整体峰值达到120FPS(实际帧率稳定≥100FPS)
- 充分利用GPU(CUDA)进行数据预处理、推理和后处理
- 降低CPU与GPU之间的数据传输和同步延迟
优化建议
- CUDA加速图像预处理
- 使用自定义CUDA Kernel或OpenCV CUDA模块加速resize、letterbox、归一化等操作
- 尽量将预处理全部放在GPU端完成,避免频繁的数据拷贝
- 批量推理与流并行
- 合理设置batch size(如4~8),结合多个CUDA流实现采集、预处理、推理的流水线并行
- 动态自适应批次和流数量,根据实时负载调整
- 模型优化
- 使用TensorRT对ONNX模型进一步量化(FP16/INT8)、层融合、workspace优化
- 测试多种模型结构剪枝方案,减少模型延迟
- 内存管理优化
- 使用Pinned Memory/Page Locked Memory加速CPU-GPU传输
- 批量分配和重用显存缓冲区,减少内存碎片
- 异步发布与数据流管控
- ROS消息发布和主处理流程分离,采用异步队列
- 实现帧队列优先级调度,丢弃过时帧,保证低延迟
- 系统级性能监控与自适应
- 实时监控各阶段耗时、GPU利用率、显存占用
- 根据性能瓶颈动态调整流水线参数
预期效果
- 峰值帧率达到120FPS,实际稳定帧率100FPS以上
- 系统整体延迟进一步降低,满足高动态实时需求
任务拆解
- CUDA图像预处理模块开发
- 多流异步流水线重构
- ONNX模型TensorRT极致优化与量化
- 内存与数据流管控优化
- 性能监控模块与自适应调度
欢迎团队成员补充更多优化思路和实测经验!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels