Why do I use my own data model to deploy to Deepstream for recognition, but the recognition frame rate is very low

Please provide complete information as applicable to your setup.

• Hardware Platform (Ubuntu / GPU:RTX1080ti)
• DeepStream Version(6.1.0)
• Issue Type( questions)

**• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)**
deepstream_gang_config_m6new.txt(use deepstream-test5-app to Identify)
[application]
enable-perf-measurement=1
perf-measurement-interval-sec=5

[tiled-display]
enable=1
rows=1
columns=1
width=1280
height=720
gpu-id=1
nvbuf-memory-type=0

[source0]
enable=1
type=3
uri=file:///opt/nvidia/deepstream/deepstream-6.1/sources/deepstream_yolo/gang1_video_2.mp4
num-sources=1
gpu-id=1
cudadec-memtype=0

[source1]
enable=0
type=3
uri=file:///opt/nvidia/deepstream/deepstream-6.1/sources/deepstream_yolo/gang_video_1.mp4
num-sources=1
gpu-id=1
cudadec-memtype=0

[source2]
enable=0
type=3
uri=file:///opt/nvidia/deepstream/deepstream-6.1/sources/deepstream_yolo/gang_video_1.mp4
num-sources=1
gpu-id=1
cudadec-memtype=0

[sink0]
enable=1
type=2
sync=0
gpu-id=1
nvbuf-memory-type=0

[sink1]
enable=0
type=6
msg-conv-config=dstest5_msgconv_sample_config.txt
msg-conv-payload-type=1
msg-broker-proto-lib=/opt/nvidia/deepstream/deepstream-6.1/lib/libnvds_kafka_proto.so
msg-broker-conn-str=10.129.53.100;9092;video
topic=video
iframeinterval=10

[nvds-analytics]
enable=0
config-file=/opt/nvidia/deepstream/deepstream-6.1/sources/apps/sample_apps/deepstream-nvdsanalytics-test/config_nvdsanalytics.txt

[osd]
enable=1
gpu-id=1
border-width=5
text-size=15
text-color=1;1;1;1;
text-bg-color=0.3;0.3;0.3;1
font=Serif
show-clock=0
clock-x-offset=800
clock-y-offset=820
clock-text-size=12
clock-color=1;0;0;0
nvbuf-memory-type=0

[streammux]
gpu-id=1
live-source=0
batch-size=3
batched-push-timeout=40000
width=1920
height=1080
enable-padding=0
nvbuf-memory-type=0

[primary-gie]
enable=1
gpu-id=1
gie-unique-id=1
nvbuf-memory-type=0
config-file=config_infer_gang_best_m6new.txt

[tests]
file-loop=1

config_infer_gang_best_m6new.txt

[property]
gpu-id=1
net-scale-factor=0.0039215697906911373
model-color-format=0
custom-network-config=yolov5_gang_best_new.cfg
model-file=yolov5_gang_best_new.wts
model-engine-file=model_n2_gpu0_fp32_new.engine
#int8-calib-file=calib.table
labelfile-path=labels_gang_best.txt
batch-size=1
network-mode=2
num-detected-classes=16
interval=0
gie-unique-id=1
process-mode=1
cluster-mode=2
maintain-aspect-ratio=1
parse-bbox-func-name=NvDsInferParseYolo
custom-lib-path=nvdsinfer_custom_impl_Yolo/libnvdsinfer_custom_impl_Yolo.so
engine-create-func-name=NvDsInferYoloCudaEngineGet

[class-attrs-all]
pre-cluster-threshold=0.50


|•|Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)|

My model file yolov5_ gang_ best_ new. WTS is based on yolov5m Pt is trained using its own dataset. Yolov5 official documents indicate that the recognition rate of this model is about 11ms. I used the trained model to identify on a computer with win11 as my system and 3070ti as my gpu. The recognition speed is 18ms, which is about 56fps per second. However, only 30fps is deployed on the deepstream for single channel source recognition, and only 10fps is used to identify each of the three sources. I want to know what the problem is, Presumably, the effect of deepstream is impossible

you can turn up the batch-size value, the performance will be improved because GPU prefers concurrent processing.

I use the official application. I modified the batch value in streammux, which can really improve the performance of each channel by 1 fps. However, there is a very strange problem: why can I modify the batch value in [Primary GIE] to not be 1, and only one channel of 8-channel video sources can be recognized at the same time, but I set the batch value to 1, and 8-channel video sources can be recognized at the same time. Why

I use the official application. I modified the batch value in streammux, which can really improve the performance of each channel by 1 fps. However, there is a very strange problem: why can I modify the batch value in [Primary GIE] to not be 1, and only one channel of 8-channel video sources can be recognized at the same time, but I set the batch value to 1, and 8-channel video sources can be recognized at the same time. Why

please share the configuration file and terminal log.

please share the configuration file and terminal log.

It’s the file I shared with me In config_infer_gang_best_m6new.txt, modify the parameter batch_size in this file. When this parameter is not 1, deep stream cannot recognize multiple video sources at the same time, but when it is set to 1, it can recognize multiple video sources at the same time. Why is this happening?and I don’t know how to extract the terminal log,sry

There is no update from you for a period, assuming this is not an issue anymore. Hence we are closing this topic. If need further support, please open a new one. Thanks

please do “export GST_DEBUG=4” first, then redirect the terminal logs to a file, like this: ./app 1>1.log 2>1.log.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.