Qlikview server does not release the allocated RAM in use by design. Rather it uses the allocated RAM as a memory pool for apps, state and cache. If the RAM increases above the working set limit set in QMC, then it releases enough when complete to get back to the working set limit. That is why it hovers around 20MB free in your case. Restarting the server will free up that memory for other applications, but it may not be necessary unless you are having performance problems.
Logic will get you from a to b. Imagination will take you everywhere. - A Einstein
As mentioned by the previous poster, QlikView will not release memory over time, but use as much as is available until it reaches the configured Working Set Limit.
The only chunks of memory that are released over the day are documents that have reached their timeout (so, no activity on the doc for x amount of time). Cached calculations and selections remain in memory however, even if the document itself was unloaded.
There's a really nice video I like to recommend people to watch when they are trying to understand how our engines use memory: QlikView Memory Usage (kb 25040).
But you were asking on how to resolve this, so maybe I should get on to that.
While I don't think there is something broken in your system, there are methods for you to review what's going on in the environment if you want to get a better understanding of it.
Troubleshooting a QlikView Serveris a blog post that goes into some detail on what you could look at, as well as a few best practices on how to configure the system.
The best practices are documented down at the bottom of the post.
A question you'll need to ask yourself though is: If you do not clear out memory with a restart, how does the server behave the next day? Looking at the screencap, it seems to be evening out at what I assume is your Working Set Limit, so I am curious to know how performant the system is the next day if you chose not to clear memory.
At this point, the QVS should be able to manage memory by itself and you shouldn't be seeing a negative impact unless there are documents or objects involved that are causing issues.
Should you see negative performance impact, you may decide to lower document timeout values, or you may decide to review the documents if they can be streamlined a little more. Or you might decide the system has grown to a point where it needs more memory.
Don't forget to Like posts and use the "Accept as Solution" button on content that answered your question! Thanks 🙂