NvDC

Hardware & Software Setup:

  • Hardware Platform: NVIDIA RTX 5090 GPU

  • DeepStream Version: 8

Issue Description: I am testing DeepStream 8 with NVDCF tracker on a single video source, tracking 1000+ objects.

  • When tracking is disabled, the pipeline achieves ~180 FPS and GPU usage ~99%.

  • When NVDCF tracker is enabled, the FPS drops to ~50 and GPU usage drops to ~36%.

This behavior is unexpected: enabling tracking decreases GPU utilization significantly, even though tracking should be GPU-intensive.

Is this expected behavior for NVDCF tracker on a high-end GPU? Any suggestions to improve GPU utilization when tracking is enabled?

configs.txt (911 Bytes)

config_tracker_NvDCF_perf.yml.txt (5.0 KB)

Can you also check the CPU loading? How about limit the maxTargetsPerStream to 50? You can also check the perf issue with nsight systems: Nsight Systems | NVIDIA Developer

In a single stream there are nearly 800+ objects.

  1. When the maxTargetsPerStream=50. FPS - 180+ & GPU - 99%
  2. When the maxTargetsPerStream=800. FPS - 50+ & GPU - 36%

Maybe the bottleneck is CPU loading. Can you share the nsight systems report of maxTargetsPerStream=50 and maxTargetsPerStream=800?

Here are the Nsight Systems profiles for both configurations (15s capture each).

  • ds_profile_targets_50.nsys-rep
  • ds_profile_targets_800.nsys-rep

profile.zip (15.2 MB)

Found the CPU loading is too high when maxTargetsPerStream=800. The nvtracker lib consumed most of the CPU as there are many target manager operation. Seem you need limited maxTargetsPerStream in your current environment.

Thanks for the prompt response.
My use case requires tracking ~1000 objects in a single stream, so limiting maxTargetsPerStream is not feasible.

Is there any recommended approach to track large numbers of objects efficiently ?

Here is the guide for low level tracker comparisons and tradeoffs. You can select the right tracker for your use case: Gst-nvtracker — DeepStream documentation

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.