核心的 shmall 和 shmmax 引數(http://wdicc.com/)

zhanghjgnu發表於2009-03-11

shmall 是全部允許使用的共享記憶體大小,shmmax 是單個段允許使用的大小。這兩個可以設定為記憶體的 90%。例如 16G 記憶體,16*1024*1024*1024*90% = 15461882265,shmall 的大小為 15461882265/4k(getconf PAGESIZE可得到) = 3774873。

修改 /etc/sysctl.conf。

kernel.shmmax=15461882265
kernel.shmall=3774873
kernel.msgmax=65535
kernel.msgmnb=65535
執行 sudo sysctl -p

可以使用 ipcs -l 看結果。ipcs -u 可以看到實際使用的情況。

------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 15099494
max total shared memory (kbytes) = 15097856
min seg size (bytes) = 1
 
------ Semaphore Limits --------
max number of arrays = 128
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 32
semaphore max value = 32767
 
------ Messages: Limits --------
max queues system wide = 16
max size of message (bytes) = 8192
DEFAULT max size of queue (bytes) = 16384
[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11754099/viewspace-1018467/,如需轉載,請註明出處,否則將追究法律責任。

相關文章