From 226a1ad2afe9eb1c265358ba78239bfb766b5fc1 Mon Sep 17 00:00:00 2001 From: liusiyang Date: Mon, 14 Sep 2026 10:18:41 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E9=A2=84=E7=83=AD=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AIEngineModule/src/AIModel_Impl.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/AIEngineModule/src/AIModel_Impl.cpp b/AIEngineModule/src/AIModel_Impl.cpp index f90c263..33fb10f 100644 --- a/AIEngineModule/src/AIModel_Impl.cpp +++ b/AIEngineModule/src/AIModel_Impl.cpp @@ -169,6 +169,19 @@ int AIModel_Impl::Init(AIModelRun_Config config) } m_bInitSuccess = true; + + // warm-up:首次推理会触发 TensorRT/CUDA 懒初始化(kernel 加载、workspace 分配、首次 enqueueV3 建图等), + // 提前用一张空图预热,避免首张检测图耗时飙升。 + { + cv::Mat warmIn = InitMat(m_pNode_input_0->channel, m_pNode_input_0->width, m_pNode_input_0->height); + cv::Mat warmOut; + int warmRe = AIDet(warmIn, warmOut); + if (warmRe != 0) + { + printf("%s warm-up error = %d\n", m_modelRun_Config.strName.c_str(), warmRe); + } + } + return 0; } cv::Mat AIModel_Impl::InitMat(int channel, int w, int h)