-
I recently upgraded to v8.10.4, and the the Client software appears to have a fast memory leak.
I am viewing 13 cameras in the application on the screen on my PC, and in 1-2 hours of running, the application consumes ~50 GB of RAM (yes 50 GB).
The machine that runs this application is fairly robust, Windows 10 Pro, Version 22H2 (I9-9900, 64GB RAM, dual GPUs, etc...).
I upgraded from Client v7.2.2.3 to v8.10.4, as the older version of the client stopped working when I installed the latest firmware with my NVR (RLN16-410, hardware H3MB18, firmware v3.3.0.226_23031645).
The old Client v7.2.2.3 did not appear to have any noticeable issues with memory consumption growing, but no longer displays video streams from cameras with the newer firmware on the NVR.
Has anyone else seen issues with the client while running v8.x.x and memory consumption continuing to increase?Reply QuoteShare0- Share this Post
-
copy the link
Copied!
-
@user_646203682046022_646203682046022 I have tried to mimic this behaviour with my laptop because it also has Intel UHD GPU 0 and Nvidia Quadro GPU 1.
I have tried running with the four video option combinations of GPU 0, GPU 1 both with and without Hardware Decoding First.
I think your setup is similar to mine with video running through the Nvidia Quadro with Hardware Decoding First, a good choice to allow the better video chip to take the load away from the CPU.
And on my machine there does not appear to be a memory leak. Note that I connect directly to four cameras and not through an NVR.
Also I have the latest Nvidia drivers installed. -
Joseph Global Moderator @user_646203682046022 last edited by joseph_1979 Jun 11, 2023, 7:35 AM Jun 11, 2023, 7:26 AM
@user_646203682046022_646203682046022 Please run the service 'resmon' (To open the Run dialogue, press Windows+R, then type 'resmon' and click OK) and check the commit memory of the Reolink processes (you should find 6 reolink processes). Select "Commit (KB)," which will reorder it so that the activities that use the most memory are at the top. Can you paste it here?. I would take it up with Reolink support to delve through it. I didn't encounter such a high usage of mem on any of the Reolink processes and I left all 6 cameras in live view for 4 hours.
-
@joseph_1979
it happens so frequently, that I set a batch file to run every 3 hours....TASKKILL /IM Reolink.exe /F TIMEOUT /T 5 START C:\"Program Files"\Reolink\Reolink.exe
also the same issue as posted here a few weeks back. (https://community.reolink.com/topic/5671/8-10-2-memory-leak-or-something?post_id=21871&_=1686518759084)
-
@ks Yes I recall this complaint. This is definitely a heap memory leakage. Can you please paste these in an email and send them to Reolink support so that they will investigate? Maybe calling the malloc() function without issuing the free(ptr) to release it. Visual Studio has a good memory analysis tool which I used it during testing of my projects.
- 2 months later
-
@robert-hammond_315369854550200
I have done a ton of digging and I can only recreate this issue if I am running the Reolink client on my PC.
The only thing I can tie it to is the Reolink client causing something to consume all available memory. I am currently up to version 8.12.1, but the same problem continues.
If I do not have Reolink running on this computer, the issue with the memory leak does not occur, I can run all kinds of other items in the background (browers, other applications, etc..) and I never see a leak, even if I leave this machine on for weeks at a time.
If I leave no other applications running, and only run the Reolink client, within a few hours, (6-10 or so), the memory leak occurs. When I close the client, the memory is not returned for free use.
In Task Manager, I never see more than ~800 MB allocated to the Reolink client, which is extremely odd, but Task Manager does not always show everything.
Digging deeper into the issue - When the memory leak occurs:
Using poolmon with the -b switch,
from a command prompt C:\> poolmon -b, I can see a huge amount of paged and non paged memory that is tied to the EtwD and Etwr tags.
Below is the text of the top lines of poolmon. Again, this issue with consumption of RAM only occurs when the Reolink client is running on this computer. No other applications impact the memory useage when they are running.
Memory:66885548K Avail:12313068K PageFlts: 24045 InRam Krnl:-6424K P:34528624K
Commit:59647328K Limit:66885548K Peak:66885548K Pool N:6317188K P:34664856K
System pool information
Tag Type Allocs Frees Diff Bytes Per Alloc
EtwD Paged 189742250 ( 0) 129776273 (20992) 59965977 29704426832 ( -10412368) 495
Etwr Nonp 189753884 ( 0) 129787891 (20992) 59965993 4797279440 ( -1679360) 80
These tags are associated with Windows Event Tracing. From pooltag.txt (in Debuggers\x64\triage\ )
Etwr - nt!ewt - Etw Reply Queue Entry
EtwD - nt!ewt - Etw DataBlock
All I can correlate this to is there is something in the Reolink application that is causing a Windows Tracing Event to randomly request a huge number of DataBlocks (EtwD) and attempt to reply (Etwr), that is eating up all the memory from the paged and non-paged pool.
I do not know what it is causing this, but it only happens with the Reolink client running.
Also, the machine is up-to-date Windows 10, including all drivers and software updates for various applications, it has been scanned for viruses / malware, and there are no other issues. -
Joseph Global Moderator @user_646203682046022 last edited by joseph_1979 Aug 25, 2023, 9:30 AM Aug 25, 2023, 9:30 AM
@user_646203682046022_646203682046022 Have you communicated with Reolink support? We don't have the code and so cannot delve further about the buffers reserved and released by the applications. Typical error with programmers.
-
@joseph_1979
I submitted this to Reolink's support center this morning. I hope they respond.
- 4 months later
-
Reply QuoteShare0- Share this Post
-
copy the link
Copied!
-
@user_749968963318003_749968963318003 Kindly report it to Reolink support on https://support.reolink.com/requests/.
-
First post