735MB RAM usage in standby

Hi,
Duplicati - 2.0.2.15_experimental_2018-01-03 uses 735MB RAM while in idle mode. A bug?
When duplicati runs, the RAM consumption rises, but when it’s finished, the RAM keeps high. You have to quit and restart to get the RAM to 26MB again.
Regards Mat

Hi @Saxofon. Are you able to let me know what operating platform you’re running on?

I use Windows 10 and see RAM usage in the task manager

.

It is possible that there is an actual memory usage, but it can also be that the memory is just “reserved”.

The .Net runtime looks at how much memory other applications use, and if no other application needs the memory, it keeps it allocated in case it needs to use it later:
http://www.itwriting.com/dotnetmem.php

I could easily be wrong on this so please feel free to verify and/or correct me, but I believe Kenkendk is correct - if you hover over the column header you should get a “tooltip” that says Total physical memory reserved by individual processes. The keyword here is “reserved”.

On top of that, I suspect the number shown on the Processes tab in your screen shot includes shared memory. For example, when a .NET application such as Duplicati executes a particular .NET function (such as “get a directory listing”) if that function has already been used by some other app then it’s already in memory and Duplicati will use the in-memory version.

By restarting Duplicati you may just be removing it’s “hook” into memory in use and shared by other apps. The Memory column on the Processes tab in Task Manager shows a lower number because Duplicati hasn’t connected to that shared memory yet - but if you look at total memory use (such as on the performance tab) it may not go down because other apps are still hooked into that shared memory.

So in theory, if you added up all the memory in that column you could end up with MORE than is installed on your machine due to the double (or more) counting of stuff in memory that is used by more than one app.

If you switch to the Details tab and right click on a column title you can choose “Select columns” which offers you more detailed info on various things including memory items such as the following (descriptions are from the column title tooltips):

  • Working set (memory) = “Amount of physical memory currently in use by the process”
  • Peak working set (memory) = “Maximum amount of physical memory used by the process”
  • Working set delta (memory) = “Change in working set usage by the process”
  • Memory (private working set) = “Amount of physical memory in use by the process that can not be used by other processes”
  • Memory (shared working set) = “Amount of physical memory in use by the process that can be shared with other processes”
  • Commit size = “Amount of virtual memory reserved by the operating system for the process”

I don’t know if those would be useful to you or not, but there you go. :slight_smile:

The first column in the next picture shows the working set memory, second col. the private working set memory and the third col. the shared working set.


So, although duplicati is idle, it uses that huge memory and can share only 6.6MB with other programs. Some other Apps like virus-scanner clear up the “reserved” memory again after work. But maybe that windows tells us not the truth (wouldn’t be the first time). The fourth col. should be the virtual memory, but I disabled all virtual memory…

IIRC, the “private working set” is the real number, indicating that it does actually hog +700Mb

Yep, that’s what it looks your screen shot in showing - very odd.

I’m running Duplicate as a service, not the tray icon as you seem to be using, and while I did see a spike while it ran (with a max of 940MB) it went back down to 57MB once the job was completed (note that the machine did fall asleep during that time, so it’s possible some cleanup happened when Windows woke up).

It’s possible there is different memory usage rules in the tray icon vs. the service…

Thats right, I use the tray icon.