LoginSignup
11
17

More than 5 years have passed since last update.

[Linux] 共有メモリの最大値設定の確認方法

Posted at

GitLabのパフォーマンスチューニング検討の関係で調査したメモ
PostgreSQLの設定値を変える前に確認が必要とのこと

検証環境

  • Ubuntu 16.04 x86_64 (Linux kernel 3.13.0-83-generic)

確認方法

種別 設定値の意味
/proc/sys/kernel/shmall 一度にシステム上で使用可能な共有メモリーページの合計数
/proc/sys/kernel/shmmax カーネルが許可する共有メモリーセグメントの最大数 [Byte]
/proc/sys/kernel/shmmni システム全体の共有メモリセグメントの最大数(注意: minではなくmni)

マニュアルやブログ記事等にはshmminも存在するとのことですが、検証環境のUbuntu16.04では見当たりませんでした。

設定例(Ubuntu16.04)
$ cat /proc/sys/kernel/shmall
4194304

$ cat /proc/sys/kernel/shmmax
17179869184
$ echo $(($(cat /proc/sys/kernel/shmmax) / 1024 / 1024 / 1024 )) GB
16 GB

$ cat /proc/sys/kernel/shmmni
4096

以前のカーネルではわかりませんが、16GBあれば大丈夫じゃないですかね・・・?

デフォルト設定値の定義箇所

Linux/include/uapi/linux/shm.h - Linux Cross Reference - Free Electrons

参考

共有メモリ設定パラメータのshmallとshmmax - shibainu55日記
5.4. 容量のチューニング
カーネルパラメタの調整

11
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
17