1752794 Members
6351 Online
108789 Solutions
New Discussion юеВ

Re: SHMMAX

 
SOLVED
Go to solution
Unix Admin_2
New Member

Re: SHMMAX

I have the cdrom in my hand. Doesn't specify the 32 or 64 bits on it... (I know Oracle does). I'm wonder if Sybase has in one cd both 32 and 64 bits... or is it possible to have the same software for both platforms? I'm confused and I know nothing about Sybase. I went on Sybase web site and still not able to get an answer...
Helen French
Honored Contributor

Re: SHMMAX

Unix Admin_2
New Member

Re: SHMMAX

The link to Sybase site is not working.
The last question that I have is: Sybase ver. 11.9.2.5 is 64 bits or 32 bits? Navigating on Sybase web site I could learn just that 11.9.3 is 64 bits. Nothing mentioned about 32 or 64 bits in 11.9.2, no info about the version that runs here:11.9.2.5.
Dennis J Robinson
Frequent Advisor

Re: SHMMAX

shmmax is simply the maximum size of a SINGLE shared memory segment.
shmmni is the number of shared memory identifiers
shmseg is maximum amount of shared memory segments a single process can attach.

Max amount of shared memory in use on a HP-UX server is = shmmax*shmmni.

If you have mixed 32bit/64bit database setup, the only answer for shmmax is 0x40000000

The reason is this. 32bit app due to HP-UX memory architecture can only allocate out of the 1GB segments. Hence largest shared memory segment on 32bit is limited to 1GB. However an instance can allocate more than the size limited by the size of a single segment by allocated multiple segments.

If shmmax is larger than 0x40000000 and 32 bit Oracle has its buffers set to over 1GB, at least in up to version 8.0.5 oracle you will fail on shmat() with HP-UX error 12 ENOMEM. Solution is to set shmmax to 0x40000000 or have oracle ask for less memory.

Up to Oracle versions 8.0.5 (and 8.0.6) Oracle instance can only allocate 2 segments.

On 8i and above I have seen dozens of segments allocated.

The answer that works for all is 0x40000000...

Good luck.
You know the drill