intermediatesql.com が良記事なのでサマリをメモ。
- PRA_PAGE_SGA=true にすると起動時にSGAサイズ分の物理もメモリを使う。そうでない場合は、デマンド・ページングにより仮想メモリは割当てられるが、物理メモリが割当てられるのは実際に使われるとき。*1
- LOCK_SGA=ture にすると、ページアウトされない。*2
- 10.1 以降は "vmo -p -o v_pinshm = 1" を設定する必要ない。
- 9.2 までのメモリロック
shmget(IPC_PRIVATE, shm_size, IPC_CREAT|SHM_PIN)
-
- 10.1 からのメモリロック
shmctl(shm_id, SHM_LOCK, ...)
- AIX のページサイズは 4K, 64K, 16M, 16G の4つ。
- 16M、16Gのラージページはページアウトできない。
- ラージページを使う場合は LOCK_SGA=true にする必要がある。