The main thing that worries me is that it doesn't look like the
program is actually using all of the RAM it has asked for. I haven't
yet seen that Private Working Set memory get above 4GB.
It must be 32bit in which case WS will never climb higher than 4GB.
Please see my answer here.
https://stackoverflow.com/a/44615376/8177258
In Task Manager:
Working Set is NOT a measure of memory use. The Commit Charge is.
That's why Task Manager Graph from W8 now shows Committed instead of WS.
WS is the amount of - RAM - which the OS Balance Manager has locked for a process or processes. It is NOT load.
32bit applications are allowed to LOCK a maximum 4GB in RAM.
64bit can LOCK a maximum of 8GB.
On x64 (Intel64/AMD64) the WS for 32bit apps is irrelevant because address space available to any process is 256TB.
It's only limited by the CPU and available storage.
The memory in use by a 32bit application can easily be more than it's WS,
It just doesn't get counted because the 32bit API is 20 years old and pages outside 4GB are deemed to be on a pagefile.
These days half the machines out there have no pagefile and 8GB-16-32GB of RAM.
The system commit charge reported by the CPU however will still climb.
Open RamMap and look in Physical Pages for standby pages, on 32bit apps that's where the missing working set data is.
Regarding RAMMap and VMM.
RAMMapp is fantastic because it shows physical memory addresses (well to an extent). You can literally see where pages are.
Committed Memory in Task Manager is more reliable because that's what the CPU reports.
VMM shows pagefile backed for anything outside the process view because a process sees nothing outside it's little virtual world.
Even though it's improved with W7/W8/W10. Task Manager is still unreliable...Resource Monitor in W7 isn't too bad..limited though.
As someone mentioned already since the app doesn't exhaust all resources it's probably not a leak.
A leak generally occurs when committed pages are not decommited.
And I just noticed how old the OP question is...
@Rick Brant
What Windows shows as "committed" storage is not RAM. It is a
guarantee of availability of storage, should it be needed. If it's
ever used the storage may be partly in RAM and partly in the pagefile
(assuming you have a pagefile).
Wrong.
Committed Memory in Task Manager is reported by the CPU.
The only pages it knows about are pages written to physical storage, either RAM or the HDD, because the CPU put them there.
The committed amount in Task Manager is absolutely RAM.
Btw, that screenshot you showed me the other day looks like it was taken on a VM.
Which Intel processor do you have that has 3 cores?
Also related: that 2nd test is leak test, the pages were not decommited it doesn't mean they aren't in RAM. PS..What makes you think DB2 is relevant?