-
Notifications
You must be signed in to change notification settings - Fork 490
Description
Preliminary Checks
- This issue is not a duplicate. Before opening a new issue, please search existing issues.
- This issue is not a question, feature request, or anything other than a bug report directly related to this project.
Description
We have a project in our company where we use multiple Zed 2i cameras (currently four, one in each direction for a 360° coverage) mounted to a movable machine and connected to a Jetson AGX Orin in order to detect people coming close to the machine. For this, we have a custom software written in C++ which utilizes the Zed SDK and the provided sample code to interact with the cameras. Now for the tricky part:
We noticed that after some runtime, our software always closed without any reasons given. On further inspection (checking the log of the OS itself), the application process is being killed by the operating system due to running out of system memory and upon further inspection, our application actually managed to fill the 64 GB RAM of the Jetson in about 1-2 days of runtime.
To figure out the problem, we took the setup to the office and let it run here for a while without any noticeable problems even after letting it run for multiple days. The only way to produce the issue seemed to be to move the camera(s) in a way, which brings a person in and out of view of the camera, which resulted in a steady increase in consumed memory.
To provide some further details, I executed the software with Heaptrack attached, which may give some helpful information.
First the heap memory consumption over time:
I moved the camera directly after the startup but as can be noticed from the process memory usage and also in the graph, the memory leak always needs some "spin up" time to get going, then the increase rate seems quite constant, albeit rapid.
The trace also seems quite interesting:
This high memory usage from "fastAMalloc" (and onwards) can only be observed if the camera is moved as described above.
Since the trace here mentions methods which are apparently contained within the sdk of this repo, I think bringing the issue up here is a good starting point.
If you need any further information or have any suggestions, please feel free to ask/tell me, as this is quite an urgent topic for us at the moment.
Steps to Reproduce
- Run Zed SDK within a C++ application according to sample code
- Move camera(s) for some time in a way that periodically brings person in and out of view
Expected Result
Application should perform as normal like it is the case if cameras are not being moved.
Actual Result
Application quickly consumes a massive amount of system memory, leading to the process being killed by the OS.
ZED Camera model
ZED2i
Environment
OS: Ubuntu 20.04.6 LTS
PC: NVIDIA Jetson AGX Orin 64 GB
Anything else?
No response