Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Apr 2005 18:36:39 +1000
From:      Peter Jeremy <PeterJeremy@optushome.com.au>
To:        ray@redshift.com
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Kernel [memory] tweaking question
Message-ID:  <20050407083639.GD57256@cirb503493.alcatel.com.au>
In-Reply-To: <3.0.1.32.20050405052601.00ab4388@pop.redshift.com>
References:  <42518AC9.5070208@comcast.net> <3.0.1.32.20050405052601.00ab4388@pop.redshift.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2005-Apr-05 05:26:01 -0700, ray@redshift.com wrote:
>options		SHMALL=
>options		SHMMAX=
>options		SHMMAXPGS=
>options		SHMMIN=
>options		SHMMNI=
>options		SHMSEG=

These are all reasonably well documented in sys/conf/NOTES.  If you
want more detail, try a SystemV-oriented Unix book 

>I understand these control shared memory and how many semaphores the
>kernel can allocate,

Close - they only control SystemV shared memory.  Sane shared memory
is available via mmap(2).  SystemV semaphores are controlled via
SEMxxx options.  Posix semaphores are listed as 'experimental'.

> but I guess what I'm not 100% clear on is how
>the kernel uses these resources when it comes to running something
>like Apache or MySQL on a heavily loaded server.

These values all define limits on the amount of shared memory
available system-wide (SHMALL and SHMMNI) and to a single process
(remaining options).  As far as I can tell, neither Apache nor MySQL
use any SystemV IPC on FreeBSD.  (The only thing that I've found that
does use SHM is X in some modes).

>  In other words, for
>something like Apache, how much shared memory is required?

None.

>  Or what
>would adding additional shared memory and/or semaphores provide.

Nothing.

>Does the default # provided for by FreeBSD create a problem and/or
>would it use additional ram if allocated?

Actually using SystemV IPC will use additional RAM.

>Is there the anyone on the list that has experience with changing
>these that can provide a clear, down to earth explanation as to their
>impacts?

I have used them on other Unices but never needed to tweak them on
FreeBSD.   Before adjusting anything, use ipcs(1) to confirm that
they are being used.  If you seem to be reaching limits (ipcs shows
that you are close to system limits or the applications are reporting
allocation errors), then just increase the parameter related to
whatever you are running out of.

-- 
Peter Jeremy



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050407083639.GD57256>