Update for SHMALL
От | Bruce Momjian |
---|---|
Тема | Update for SHMALL |
Дата | |
Msg-id | 200105021704.f42H4BT14769@candle.pha.pa.us обсуждение исходный текст |
Ответы |
Re: Update for SHMALL
(Peter Eisentraut <peter_e@gmx.net>)
|
Список | pgsql-docs |
Seems there was no mention of SHMALL in the SGML shared memory table. I have added it, and removed the BSD/OS listing of the shared memory and semaphore parameters. Not needed anymore. Patch attached. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026 Index: doc/src/sgml/runtime.sgml =================================================================== RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/src/sgml/runtime.sgml,v retrieving revision 1.59 diff -c -r1.59 runtime.sgml *** doc/src/sgml/runtime.sgml 2001/05/01 03:00:28 1.59 --- doc/src/sgml/runtime.sgml 2001/05/02 16:58:24 *************** *** 1449,1455 **** <row> <entry><varname>SHMMAX</></> <entry>Maximum size of shared memory segment (bytes)</> ! <entry>512 kB + 8192 * buffers + extra ... infinity</entry> </row> <row> --- 1449,1455 ---- <row> <entry><varname>SHMMAX</></> <entry>Maximum size of shared memory segment (bytes)</> ! <entry>700 kB + 8192 * buffers + extra ... infinity</entry> </row> <row> *************** *** 1459,1464 **** --- 1459,1470 ---- </row> <row> + <entry><varname>SHMALL</></> + <entry>Total amount of shared memory available (bytes or pages)</> + <entry>if bytes, same as SHMMAX; if pages, ceil(SHMMAX/PAGE_SIZE)</> + </row> + + <row> <entry><varname>SHMSEG</></> <entry>Maximum number of shared memory segments per process</> <entry>only 1 segment is needed, but the default is much higher</> *************** *** 1588,1629 **** <para> By default, only 4 MB of shared memory is supported. Keep in mind that shared memory is not pageable; it is locked in RAM. ! The shared memory parameters are: ! <programlisting> ! #define SHMMAX /* max shared memory segment size (bytes) */ ! #define SHMMIN /* min shared memory segment size (bytes) */ ! #define SHMMNI /* max number of shared memory identifiers */ ! #define SHMSEG /* max shared memory segments per process */ ! #define SHMALL /* max amount of shared memory (pages) */ ! </programlisting> ! ! To increase the number of buffers supported by the postmaster, add the ! following to your kernel config file. A <varname>SHMALL</> value of 1024 ! represents 4MB of shared memory. Increase it accordingly: <programlisting> ! options "SHMALL=4096" options "SHMMAX=\(SHMALL*PAGE_SIZE\)" </programlisting> </para> </formalpara> <para> ! For those running 4.1 or later, just recompile the kernel and ! reboot. For those running earlier releases, use ! <application>bpatch</> to find the <varname>sysptsize</> value ! for the current kernel. This is computed dynamically at ! bootup. <screen> $ <userinput>bpatch -r sysptsize</> <computeroutput>0x9 = 9</> </screen> ! Next, change <varname>SYSPTSIZE</> to a hard-coded value. Use ! the bpatch value, plus add 1 for every additional 4 MB of shared memory you desire. <programlisting> ! options "SYSPTSIZE=13" </programlisting> ! <varname>sysptsize</> can not be changed by sysctl on the fly. </para> <formalpara> --- 1594,1630 ---- <para> By default, only 4 MB of shared memory is supported. Keep in mind that shared memory is not pageable; it is locked in RAM. ! ! To increase the number of shared buffers supported by the ! postmaster, add the following to your kernel config file. A ! <varname>SHMALL</> value of 1024 represents 4MB of shared ! memory. The following increases the maximum shared memory area ! to 32 MB: <programlisting> ! options "SHMALL=8192" options "SHMMAX=\(SHMALL*PAGE_SIZE\)" </programlisting> </para> </formalpara> <para> ! For those running 4.1 or later, just make the above changes, ! recompile the kernel, and reboot. For those running earlier ! releases, use <application>bpatch</> to find the ! <varname>sysptsize</> value in the current kernel. This is ! computed dynamically at bootup. <screen> $ <userinput>bpatch -r sysptsize</> <computeroutput>0x9 = 9</> </screen> ! Next, add <varname>SYSPTSIZE</> as a hard-coded value in the ! kernel config file. Increase the value you found using ! <application>bpatch</>. Add 1 for every additional 4 MB of shared memory you desire. <programlisting> ! options "SYSPTSIZE=16" </programlisting> ! <varname>sysptsize</> can not be changed by sysctl. </para> <formalpara> *************** *** 1635,1651 **** </para> </formalpara> - <para> - The defaults are in <filename>/sys/sys/sem.h</>: - <programlisting> - #define SEMMNI 10 /* # of semaphore identifiers */ - - #define SEMMNS 60 /* # of semaphores in system */ - - #define SEMUME 10 /* max # of undo entries per process */ - - #define SEMMNU 30 /* # of undo structures in system */ - </programlisting> Set the values you want in your kernel config file, e.g.: <programlisting> options "SEMMNI=40" --- 1636,1641 ----
В списке pgsql-docs по дате отправления: