SUMMARY: value of shmmax in /etc/system

From: Gautam Das (gautam@bwc.org)
Date: Thu Sep 05 1996 - 06:52:47 CDT


Many thanks to
Glenn Satchell <Glenn.Satchell@uniq.com.au>
Ray Trzaska <rtrzaska@uk.mdis.com>

Their answers, and my original question are attached below:

On Thu, 5 Sep 1996, Glenn Satchell wrote:

 shmmax is simply a limit to the maximum individual segment size that
 you can ask for, so setting it higher doesn't waste any resources,
 although if your DBA alters Oracle's config to use a really high number
 overall the system might suffer.
 
 So you can set shmmax to a large value with no problems.
 
 regards,
 --
 Glenn Satchell glenn@uniq.com.au | There's a fine line
 Uniq Professional Services Pty Ltd ACN 056 279 335 | between fishing and
 PO Box 70, Paddington, NSW 2021, (Sydney) Australia | standing on the shore
 Phone 02 380 6360 Pager 016 287 000 Fax 02 380 6416 | looking like an idiot.
 

 Date: Thu, 5 Sep 1996 11:55:05 +0100
 From: Ray Trzaska <rtrzaska@uk.mdis.com>
 To: gautam@bwc.org
 Subject: Re: value of shmmax in /etc/system
 
 as youv've prabably already heard,
 
 you can increase shmmax to whatever value you want,
 and it makes no difference to already running stuff,
 and takes no extra space out of the kernel. It just
 sets the maximum that can be used for a single
 contiguous lump of memory. set it to your physical
 memory size minus kernel requirement and a bit reserved
 for programs - there's no point in having an SGA bigger
 than physical memory - a paging SGA would be worse than
 a correctly tuned smaller buffer cache (SGA).
 
 ray
 

> > From sun-managers-request@uniq.com.au Wed Sep 4 08:17:27 1996
> > Date: Tue, 3 Sep 1996 23:36:12 +0300 (IDT)
> > From: Gautam Das <gautam@bwc.org>
> > Reply-to: Gautam Das <gautam@bwc.org>
> > Subject: value of shmmax in /etc/system
> > To: Sun Managers <sun-managers@eecs.nwu.edu>
> > Mime-Version: 1.0
> > Comment: *** You are subscribed to the connect.com.au local list exploder
> > Comment: *** Please send admin requests to majordomo@connect.com.au,
> > Comment: *** NOT the actual list.
> > X-Lines: 55
> >
> > Hi!
> >
> > I am in the process of tuning one of our Oracle database servers. It is a
> > 2 CPU Sparc 20 with 192 megs ram.
> >
> > The w column of "vmstat 5" was showing 1 or 2 processes constantly waiting
> > for Ram with about 33 Oracle processes. I reduced Oracle's SGA from 79
> > Megs to 67megs and appropriately changed the value of
> > shmsys:shminfo_shmmax to 68224000.
> >
> > Old values were:
> > Total System Global Area 79220128 bytes
> > Fixed Size 48260 bytes
> > Variable Size 54380828 bytes
> > Database Buffers 24576000 bytes
> > Redo Buffers 215040 bytes
> > shmsys:shminfo_shmmax=81264640
> >
> > Current values are:
> > Total System Global Area 67238552 bytes
> > Fixed Size 48260 bytes
> > Variable Size 48543252 bytes
> > Database Buffers 18432000 bytes
> > Redo Buffers 215040 bytes
> >
> > shmsys:shminfo_shmmax=68224000
> >
> > This has cured the problem and the value of w has stayed at 0 all day,
> > even after pushing the number of Oracle processes upto 40.
> >
> > Now my question - I am trying to understand the parameter "shmmax". If I
> > increase the value of shmmax, but leave the Oracle SGA value unaltered,
> > will it result in wasted memory that will be reserved for shared memory
> > operations but will never get used?
> >
> > It is desirable to keep a larger value of shmmax in /etc/system, so the
> > DBA can increase the Oracle SGA size if needed and restart the
> > database, and avoid a reboot.
> >
> > I have not been able to find much info on this in the Sun manuals. Your
> > advise would be greatly appreciated. BTW Adrian Cockcroft's book on
> > Performance tuning is an excellent reference.
> >
> > Gautam



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:11:09 CDT