From 9fa116ce4a5a5612238bd0cc8017f59e4cdf40b1 Mon Sep 17 00:00:00 2001 From: perseusdg Date: Tue, 7 Sep 2021 07:20:46 +0530 Subject: [PATCH] tkdnn(trt8) runs now minus the detections ,[executionContext.cpp::enqueueInternal::312] Error Code 3: Internal Error (Parameter check failed at: runtime/api/executionContext.cpp::enqueueInternal::312, condition: mDeviceMemorySize == 0 || mExecutionResources->getDeviceMemory() != nullptr - is the error that causes it --- src/Yolo.cpp | 1 - src/Yolo3Detection.cpp | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Yolo.cpp b/src/Yolo.cpp index 35abb19..e6fb8ab 100644 --- a/src/Yolo.cpp +++ b/src/Yolo.cpp @@ -137,7 +137,6 @@ int Yolo::computeDetections(Yolo::detection *dets, int &ndets, int netw, int net if(predictions == nullptr) predictions = new dnnType[output_dim.tot()]; - checkCuda(cudaDeviceSynchronize()); checkCuda( cudaMemcpy(predictions, dstData, output_dim.tot()*sizeof(dnnType), cudaMemcpyDeviceToHost)); int lw = output_dim.w; diff --git a/src/Yolo3Detection.cpp b/src/Yolo3Detection.cpp index 8d3d244..48e9d5d 100644 --- a/src/Yolo3Detection.cpp +++ b/src/Yolo3Detection.cpp @@ -45,7 +45,8 @@ namespace tk { namespace dnn { yolo[i]->bias_h = new dnnType[num*nMasks*2]; memcpy(yolo[i]->mask_h, maskTempF, sizeof(dnnType)*nMasks); memcpy(yolo[i]->bias_h, biasTempF, sizeof(dnnType)*num*nMasks*2); - yolo[i]->input_dim = yolo[i]->output_dim = tk::dnn::dataDim_t(1, channels, height, width); + auto dim = netRT->engineRT->getBindingDimensions(i+1); + yolo[i]->input_dim = yolo[i]->output_dim = tk::dnn::dataDim_t(1, dim.d[0], dim.d[1], dim.d[2]); yolo[i]->classesNames = classNamesTemp; yolo[i]->nms_thresh = nmsthresh; yolo[i]->nsm_kind = (tk::dnn::Yolo::nmsKind_t) nms_kind;