As per the Qlikview Server memory management if the qlikview application needs more memory to perform calculations or the performance slows down, it would swap some of the physical RAM to virtual memory.
I wanted to know how to release this memory:
1. Does closing the Qlikview application free the memory?
2. Does signing-off from the server by the developer free up memory? or
3. Do we need to restart the qlikview services (all 5) to free up memory?
Would appreciate any help.
Three short answers, because I don't know whether you're talking about the QlikView services, QlikView desktop or both on the same server:
BTW: restarting QVS may release all allocated memory for documents displayed in the AP, but that's only a temporary measure.
Peter is correct.
I would suggest you to make a task which is going to restart the QV services 1-2 times per day. You can track when is the best time for this by looking for the usual behavior of the users. Also, you should check that you don't have a lot of reloads eating RAM in the same time.
I have a task which restarts the QV services at 8 am and 1 pm, and it does the job.
Thank you Peter for your reply. Currently we have both Qlikview services and Qlikview Desktop running on the same machine and developers RDP onto that machine (Dev servera). We have been having memory issues, since developers are working on huge dashboards and due to this the performance is low and sometimes the RDP session is also terminated.
Do you want to merge the two discussions? Or do you want to keep both threads alive? I think we're talking about the same issue in this one:
The restarting services-workaround suggested by Ashfaq is something you probably will need to do (if you're talking about releasing memory from QV Server). I've even seen/read/heard suggestions by experts telling that as a good practice you may restart QV Server (specially QVS Service), because QlikView eventually accumulates memory even if you close all apps/sessions.
I don't know if this is a QV bug, a windows bug, or just some unexpected behaviour, but in my experience I can't tell you that even if you follow all good practices you will still need to recurr to this workaround,
It's not a bug, it's how the QVS service was designed: grab as much memory as you need, but never release it. Even if it is being freed up. QVS has its own memory manager. "Better be sure than sorry", me thinks.
The QlikView server is not built to play along nicely with others as its designed to be run on a machine with dedicated resources that are not attended to be shared with other services. The general recommendation is that you try to keep the environments (server and developer) separated to avoid this kind of behavior.
As im fully aware that its not always possible would I recommend that you take a look at how the working set limits are set in the QVS, and if tweeking them (and by that, the internal sets for the memory management) help you. To restart the QVS service will most likely help you but will also mean that you flashes the servers cache - something that will affect the end uses experience.