Re: shared memory settings: SHMMAX and SHMALL

From: Gregory Bittar <gbittar(at)iqa(dot)cc>
To: Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: shared memory settings: SHMMAX and SHMALL
Date: 2001-03-15 15:43:05
Message-ID: 3AB0E309.10D02A3@iqa.cc
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

My last reply was made when I was exhausted. Sorry.

Reconsidering....

According to my /usr/include/asm/shmparam.h,
SHMMAX (should be) <= (PAGE_SIZE << _SHM_IDX_BITS) = (4096 bytes << 15)
= 128MB.

I still don't see where to find the PAGE_SIZE value, although 4096 seems
to be a general default out there.

Also according to my server's /usr/include/asm/shmparam.h,
SHMALL should be = (1 << (_SHM_IDX_BITS + _SHM_ID_BITS)) = (1 <<
(9+15)) = 16.

I wonder why some people are setting SHMALL and SHMMAX to the same value
when one is a measurement in pages and the other a measurement in
bytes. Also, I thought that SHMMAX should be the max allotment in bytes
per application, rather than the max shared by all applications. If I
anticipate 10 postmasters, is it dangerous to set SHMMAX so high?

Tatsuo Ishii wrote:

> > I've spent a whole day trying to figure this out.
> > Every FAQ I read, between Linux, Postgres, and Oracle,
> > just sends me further into confusion, so I ask:
> >
> > If I have 512MB of memory in my system, excluding swap
> > space,
> > what values do I want to set for SHMMAX and SHMALL?
>
> That depeneds on your kernel implemetaion and hardware. I found
> followings in /usr/include/asm/shmparam.h on my Linux box.
>
> #define _SHM_ID_BITS 7
> #define SHM_ID_MASK ((1<<_SHM_ID_BITS)-1)
>
> #define SHM_IDX_SHIFT (_SHM_ID_BITS)
> #define _SHM_IDX_BITS 15
> #define SHM_IDX_MASK ((1<<_SHM_IDX_BITS)-1)
>
> /*
> * _SHM_ID_BITS + _SHM_IDX_BITS must be <= 24 on the i386 and
> * SHMMAX <= (PAGE_SIZE << _SHM_IDX_BITS).
> */
>
> here PAGE_SIZE == 4096. So I guess we cannot have more than 128MB for
> the shared memory on this platform if above comment is correct.
> --
> Tatsuo Ishii

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2001-03-15 15:53:57 Re: Minor disaster after upgrading with cvs.
Previous Message Gregory Bittar 2001-03-15 15:02:42 Re: shared memory settings: SHMMAX and SHMALL