1819696 Members
3364 Online
109605 Solutions
New Discussion юеВ

shmmax Maximum Value

 
zafar.rizvi
Advisor

shmmax Maximum Value

Hi All

Can i know that how much shmmax value i can set under HP-UX11.11 as we are having 96 GB Ram installed in the server and current value of shmmax 16000000000 Y 16000000000. Our dba's want to update current SGA Value so they want to increase that value more so is there any limitation/ which extent level we can modify shmmax value. Current SGA size is 17.5 GB.

kindly suggest.

Regards
Zafar Hussain
7 REPLIES 7
Jeeshan
Honored Contributor

Re: shmmax Maximum Value

Salam Zafar

You can utilise total memory for oracle. :)

make sure it doesn't exceed your memory+swap space.

ask DBA's how much they wanna consume.
a warrior never quits
Yogeeraj_1
Honored Contributor

Re: shmmax Maximum Value

Hi Zafar Hussain,

It seems that the system will ignore any shmmax setting greater than 25% of available memory (physical memory+swap).

See the discussion at:
http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1207659591907+28353475&threadId=219674

Also, the documentation at:
http://docs.hp.com/en/939/KCParms/KCparam.ShMmax.html

You will also agree that increasing the SGA to the MAX does not directly imply a boost in performance.

hope this helps!

kind regards
yogeeraj
No person was ever honoured for what he received. Honour has been the reward for what he gave (clavin coolidge)
Steven E. Protter
Exalted Contributor

Re: shmmax Maximum Value

Shalom,

Oracle has been requiring that shmmax be equal to physical memory in their install program.

I think in this system, that number might really blow up the system. Maybe not, but I'd worry about it.

Running oracle with SGA's that are too large, has led to instability in the database in the past.

I'd see about setting shmmax to 25% of physical memory. Since you've already installed oracle you don't have to worry about passing that particular problem.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Don Morris_1
Honored Contributor

Re: shmmax Maximum Value

There's no such check or implicit limitation on shmmax on 11.11 64-bit or later (I don't see the point in going to check 11.0 -- this may have been a 32-bit thing, I don't know -- certainly in a 32-bit OS you can't create a segment bigger than a Quadrant [which is 25% of the system]... technically you can't on 64-bit PA either, but a 64-bit Quadrant is 4Tb, so most folks don't hit this yet... and if/when they do, its time to go IPF with the larger octants).

shmmax itself is just a fenceline kernel number. It is only limited by the boundaries of the tunable definition (which kmtune or kctune will tell you, or the man pages). Beyond that, it is enforced whenever a new segment is created (shmget()).

Any _other_ limits such as insufficient swap, virtual address space, etc. are completely and entirely orthogonal to shmmax itself and would end up impacting many smaller segments that end up consuming the same resources as one big segment.

Since I don't see why you'd have a 32-bit machine with 96Gb of RAM, that means you could easily set shmmax to RAM+swap (since the 64-bit limit is 4Tb and I assume you haven't got 4Tb of swap laying around). Being Oracle, you may want to ask the DBAs if the SGA is memory locked -- in which case you aren't going to be able to create a segment larger than around 72Gb anyway if swapmem_on is enabled (which it is by default) since that should be the approximate lockable memory available to user space [barring the kernel eating more memory on your box]. If swapmem_on is 0 [disabled] you could set it higher. If the SGA isn't mlocked, just go with memory+swap if the SGA is the key segment to create.
zafar.rizvi
Advisor

Re: shmmax Maximum Value

Hi
Yes we are using 64 Bit machine and also note that our DBA request to increase SGA upto 30GB from 17GB.

so as you people suggest that i can extend it upto physical memory size and i hope there will be no problem will occurs on OS (HP-UX-11.11).
YAQUB_1
Respected Contributor

Re: shmmax Maximum Value

Hi Zafar,

Shmmax maximum size (in bytes) for a System V shared memory segment.

Default value is 0X4000000, minimum value is 2048 & maximum value is 0x40000000000 for a 64 bit kernel.

Before change shmmax value U check the shmem, shmmni & shmseg kernel value.

Assign points if Ur question answer is match.

Thanks--Yaqub
HP Support!!!
Wim Rombauts
Honored Contributor

Re: shmmax Maximum Value

Although what YAQUB says is true, the maximum value of the documented shmmax is only 1GB. So it is ales true that this documented maximum is not checked. My shmmax is 12GB.

If the DBA's should set the SGA to a higher value than shmmax, Oracle will - if I remeber correctly - request 2 or more sets of shared memory, until the requested SGA is allocated.

After all, there is no reason to keep shmmax low. By default, the system allows every process to allocate 300 chunks of shmmax, so even with shmmax = 17GB, Oracle would be able to allocated 5100GB of shared memory in chunks of 17GB.
Since working with multiple smaller shared memory segments is less efficient than working with one bigger segment, just increase shmmax to whatever you like.