on 2013 May 06 8:07 PM
Hi.
I'm running ASE 15.0.3 on a Solaris 10 system. There is 16GB physical memory. I have set max memory to 15GB. Also, allocate max shared memory is 0, and dynamic allocation on demand is 1. When I look at total logical memory it shows as 13GB.
I have been having problems on this system, getting occasional "Vfork failed" errors, which I take to mean the system is running out of memory. So I have been looking at top and other tools to try to get a handle on that.
Those tools are telling me that the ASE engine is using 15GB of memory. Also, when I had Oracle tech support analyze the problem, they said the same thing. But based on the ASE memory settings I listed above, I would expect that it should be using only 13GB.
I conclude that I must be misunderstanding either ASE's memory strategy, or the output of the top command. Does anyone have any insights?
Thanks.
- John.
Thanks to everyone for all the hints. I still don't understand all the ins and outs, but this really helps me. In my case this is a statically-configured system, i.e. I set it up months or years ago with a particular max memory and a particular total logical memory, and I might make changes only very rarely, and when I do I will tend to reboot the machine soon afterwards. This machine is dedicated to running ASE. My puzzle was why, out of the blue, did this system start experiencing memory-related issues. Especially when other ASE systems of mine run fine with a nearly identical configuration. Anyway, since my last post I have played with the memory settings, and ended up reducing total logical memory by 1GB and max memory by 2GB, and the problems seem to have stopped. For now I'm just going to go with that and maybe I'll figure it all out later. (Someone hinted to me that the culprit could be the ZFS cache...)
Thanks.
- John.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Here is a rule to remember:
"max memory" is the a configurable parameter (its the memory customer asks
for while booting the server or change dynamically.)
"total physical memory " is the memory we got from the OS till now. (This could be less than MM when we
have not grabbed all the required memory from OS.
Some times this could be greater than MM as we grab memory which should be pagesize alined.
"total logical memory" is the memory which is required for the for the current configuration of ASE.
This value is calculated/used internally. The "max memory" should be greater than TLM.
If "allocate max shared memory" = 1 ===> (MM > TLM) & TPM >= MM
And if allocate max shared memory" = 0 ===> (MM > TLM) & (TPM >=< MM)
I hope this will help .
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
John,
Monitor Solaris memory with prstat or vmstat in a constant way. Then try to increment Solaris memory, 20% of total memory is recommended for SO in most installations.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
62 | |
12 | |
7 | |
7 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.