āĻĒā§‹āĻ¸ā§āĻŸāĻ—ā§āĻ°ā§‡āĻāĻ¸āĻ•āĻŋāĻ‰āĻāĻ˛ āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœ āĻ•āĻ°āĻ¤ā§‡ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻŸāĻŋāĻ‰āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻĒā§‹āĻ¸ā§āĻŸāĻ—ā§āĻ°ā§‡āĻāĻ¸āĻ•āĻŋāĻ‰āĻāĻ˛ āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœ āĻ•āĻ°āĻ¤ā§‡ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻŸāĻŋāĻ‰āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ PostgreSQL āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡āĨ¤ āĻ–āĻžāĻ°āĻžāĻĒāĻ­āĻžāĻŦā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž OS āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ā§‡āĻ° āĻĢāĻ˛ā§‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ–āĻžāĻ°āĻžāĻĒ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻāĻ‡ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻāĻŦāĻ‚ āĻāĻ° āĻ•āĻžāĻœā§‡āĻ° āĻšāĻžāĻĒ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻ†āĻŦāĻļā§āĻ¯āĻ•āĨ¤ āĻāĻ‡ āĻĒā§‹āĻ¸ā§āĻŸā§‡, āĻ†āĻŽāĻ°āĻž āĻ•āĻŋāĻ›ā§ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻ•āĻ°āĻŦ āĻ¯āĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ•ā§‡ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŦāĻ‚ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧāĨ¤

SHMMAX / SHMALL

SHMMAX āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻ­āĻžāĻ— āĻ•āĻ°āĻž āĻŽā§‡āĻŽāĻ°āĻŋ āĻ…āĻ‚āĻļā§‡āĻ° āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ†āĻ•āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻ•āĻŸāĻŋ Linux āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 9.2 āĻāĻ° āĻ†āĻ—ā§‡, PostgreSQL āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ V (SysV) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛, āĻ¯āĻžāĻ° āĻœāĻ¨ā§āĻ¯ SHMMAX āĻ¸ā§‡āĻŸāĻŋāĻ‚ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ 9.2 āĻāĻ° āĻĒāĻ°ā§‡, PostgreSQL POSIX āĻļā§‡āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŽā§‡āĻŽāĻ°āĻŋāĻ¤ā§‡ āĻ¸ā§āĻ¯ā§āĻ‡āĻš āĻ•āĻ°ā§‡āĻ›ā§‡āĨ¤ āĻ¤āĻžāĻ‡ āĻāĻ–āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ V āĻļā§‡āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻ•āĻŽ āĻŦāĻžāĻ‡āĻŸ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 9.3 āĻāĻ° āĻ†āĻ—ā§‡, SHMMAX āĻ›āĻŋāĻ˛ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°āĨ¤ SHMMAX āĻŽāĻžāĻ¨ āĻŦāĻžāĻ‡āĻŸā§‡ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻ†āĻ›ā§‡āĨ¤

āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡, SHMALL āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°
āĻļā§‡āĻ¯āĻŧāĻžāĻ° āĻ•āĻ°āĻž āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ-āĻ“āĻ¯āĻŧāĻžāĻ‡āĻĄ āĻ­āĻ˛āĻŋāĻ‰āĻŽāĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ SHMMAX, SHMALL, āĻŦāĻž SHMMIN āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡, āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨ āĻ†āĻ‡āĻĒāĻŋāĻ¸āĻŋ.

SHM* āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ - āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸

$ ipcs -lm

------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 1073741824
max total shared memory (kbytes) = 17179869184
min seg size (bytes) = 1

SHM* āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ - MacOS X

$ ipcs -M
IPC status from  as of Thu Aug 16 22:20:35 PKT 2018
shminfo:
	shmmax: 16777216	(max shared memory segment size)
	shmmin:       1	(min shared memory segment size)
	shmmni:      32	(max number of shared memory identifiers)
	shmseg:       8	(max shared memory segments per process)
	shmall:    1024	(max amount of shared memory in pages)

PostgreSQL āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ­āĻŋ āĻ†āĻ‡āĻĒāĻŋāĻ¸āĻŋ āĻ­āĻžāĻ— āĻ•āĻ°āĻž āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻ¤ā§‡āĨ¤ āĻāĻ‡ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋāĨ¤ āĻ¯āĻ–āĻ¨āĻ‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻ¨, āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻšāĻ˛ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•āĻžāĻ›ā§‡ PostgreSQL āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻžāĻ° SHMMAX āĻŽāĻžāĻ¨ āĻ–ā§āĻŦāĻ‡ āĻ•āĻŽā§ˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ¯ā§‡ āĻļā§‡āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨ āĻ¸ā§‡āĻ‡ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻŽāĻžāĻ¨ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻāĻŦāĻ‚ āĻŦāĻžāĻĄāĻŧāĻžāĻŦā§‡āĻ¨ āĻŦāĻ˛ā§‡ āĻ†āĻļāĻž āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤

āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻ­ā§āĻ˛ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ

SHMMAX āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻ¨āĻž āĻĨāĻžāĻ•āĻ˛ā§‡, āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ•āĻŸāĻŋ PostgreSQL āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻ†āĻ°āĻŽā§āĻ­ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ initdb.

initdb āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž
DETAIL: Failed system call was shmget(key=1, size=2072576, 03600).

HINT: This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter. 
You can either reduce the request size or reconfigure the kernel with larger SHMMAX. To reduce the request size (currently 2072576 bytes),
reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.

If the request size is already small, it's possible that it is less than your kernel's SHMMIN parameter,
in which case raising the request size or reconfiguring SHMMIN is called for.

The PostgreSQL documentation contains more information about shared memory configuration. child process exited with exit code 1

āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡, āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ PostgreSQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻļā§āĻ°ā§ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ pg_ctl.

pg_ctl āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž
DETAIL: Failed system call was shmget(key=5432001, size=14385152, 03600).

HINT: This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter.

You can either reduce the request size or reconfigure the kernel with larger SHMMAX.; To reduce the request size (currently 14385152 bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.

If the request size is already small, it's possible that it is less than your kernel's SHMMIN parameter,
in which case raising the request size or reconfiguring SHMMIN is called for.

The PostgreSQL documentation contains more information about shared memory configuration.

āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ° āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻŦā§‹āĻāĻž

SHMMAX/SHMALL āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻž Linux āĻāĻŦāĻ‚ MacOS X-āĻ āĻ•āĻŋāĻ›ā§āĻŸāĻž āĻ†āĻ˛āĻžāĻĻāĻž:

  • āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸: kernel.shmmax, kernel.shmall
  • MacOS X: kern.sysv.shmmax, kern.sysv.shmall

āĻŸā§€āĻŽ sysctl āĻ¸āĻžāĻŽāĻ¯āĻŧāĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻŽāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ§ā§āĻ°ā§āĻŦāĻ• āĻŽāĻžāĻ¨ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻ¤ā§‡, āĻāĻ•āĻŸāĻŋ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨ /etc/sysctl.conf. āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¨āĻŋāĻšā§‡ āĻ†āĻ›ā§‡.

MacOS X-āĻ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

# Get the value of SHMMAX
sudo sysctl kern.sysv.shmmax
kern.sysv.shmmax: 4096

# Get the value of SHMALL
sudo sysctl kern.sysv.shmall 
kern.sysv.shmall: 4096

# Set the value of SHMMAX
sudo sysctl -w kern.sysv.shmmax=16777216
kern.sysv.shmmax: 4096 -> 16777216

# Set the value of SHMALL 
sudo sysctl -w kern.sysv.shmall=16777216
kern.sysv.shmall: 4096 -> 16777216

āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

# Get the value of SHMMAX
sudo sysctl kernel.shmmax
kernel.shmmax: 4096

# Get the value of SHMALL
sudo sysctl kernel.shmall
kernel.shmall: 4096

# Set the value of SHMMAX
sudo sysctl -w kernel.shmmax=16777216
kernel.shmmax: 4096 -> 16777216

# Set the value of SHMALL 
sudo sysctl -w kernel.shmall=16777216
kernel.shmall: 4096 -> 16777216

āĻ­ā§āĻ˛āĻŦā§‡āĻ¨ āĻ¨āĻž: āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§€ āĻ•āĻ°āĻ¤ā§‡, āĻāĻ‡ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ /etc/sysctl.conf āĻ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨

āĻŦāĻŋāĻļāĻžāĻ˛ āĻĒāĻžāĻ¤āĻž

āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĻ­āĻžāĻŦā§‡ 4 KB āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§‡āĻœ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, BSD XNUMX KB āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§‡āĻœ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤ āĻ¸ā§āĻĒāĻžāĻ° āĻĒā§‡āĻœ, āĻāĻŦāĻ‚ āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœā§‡ - āĻŦāĻĄāĻŧ āĻĒāĻžāĻ¤āĻž. āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻž RAM āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻ…āĻ‚āĻļāĨ¤ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻĒā§ƒāĻˇā§āĻ āĻž āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¯āĻ¤ āĻŦā§‡āĻļāĻŋ āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ¯āĻŧ, āĻ¤āĻ¤ āĻŦā§‡āĻļāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ OS āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻŸā§‡āĻŦāĻŋāĻ˛ āĻŦāĻœāĻžāĻ¯āĻŧ āĻ°āĻžāĻ–ā§‡āĨ¤ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ†āĻ•āĻžāĻ° āĻ¯āĻ¤ āĻ›ā§‹āĻŸ āĻšāĻŦā§‡, āĻŸā§‡āĻŦāĻŋāĻ˛āĻŸāĻŋ āĻ¤āĻ¤ āĻŦāĻĄāĻŧ āĻšāĻŦā§‡, āĻ¸ā§‡āĻ‡ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻ¤āĻ¤ āĻŦā§‡āĻļāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻ˛āĻžāĻ—āĻŦā§‡āĨ¤ āĻ¤āĻžāĻ‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ•āĻŽ āĻ“āĻ­āĻžāĻ°āĻšā§‡āĻĄā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĒā§āĻ°āĻšā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧ; āĻ•āĻŽ āĻĒā§‡āĻœ āĻ­āĻŋāĻ‰, āĻ•āĻŽ āĻĒā§‡āĻœ āĻĢāĻ˛ā§āĻŸ, āĻŦāĻĄāĻŧ āĻŦāĻžāĻĢāĻžāĻ°ā§‡ āĻĻā§āĻ°ā§āĻ¤ āĻ°āĻŋāĻĄ/āĻ°āĻžāĻ‡āĻŸ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĨ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž.

PostgreSQL āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĻ°ā§‚āĻĒā§‡, āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ 4 KB āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ†āĻ›ā§‡ āĻāĻŽāĻ¨ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ 2 āĻāĻŽāĻŦāĻŋ āĻāĻŦāĻ‚ 1 āĻ—āĻŋāĻ—āĻžāĻŦāĻžāĻ‡āĻŸ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻŦā§ƒāĻĻā§āĻ§āĻŋ āĻĒāĻ°āĻŋāĻ˛āĻ•ā§āĻˇāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ†āĻ•āĻžāĻ° āĻŦā§āĻŸ āĻ¸āĻŽāĻ¯āĻŧ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡. āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¸āĻšāĻœā§‡āĻ‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ cat /proc/meminfo | grep - āĻ†āĻŽāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛.

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸)

Note: This is only for Linux, for other OS this operation is ignored$ cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB

āĻāĻ‡ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, āĻ¯āĻĻāĻŋāĻ“ āĻŦā§ƒāĻšā§Ž āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ†āĻ•āĻžāĻ° 2048 (2 MB) āĻ¤ā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻŦā§ƒāĻšā§Ž āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻŽā§‹āĻŸ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž 0 āĻ¤ā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻšāĻ˛ āĻ¯ā§‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻˇā§āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ

āĻāĻ‡ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸāĻŸāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤ PostgreSQL āĻšāĻ˛āĻžāĻ•āĻžāĻ˛ā§€āĻ¨ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸāĻŸāĻŋ āĻšāĻžāĻ˛āĻžāĻ¨āĨ¤ āĻĒāĻ°āĻŋāĻŦā§‡āĻļ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻœāĻ¨ā§āĻ¯ āĻ¯ā§‡ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§āĻ¨ $PGDATA PostgreSQL āĻĄā§‡āĻŸāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻ†āĻ›ā§‡āĨ¤

āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻž

#!/bin/bash
pid=`head -1 $PGDATA/postmaster.pid`
echo "Pid:            $pid"
peak=`grep ^VmPeak /proc/$pid/status | awk '{ print $2 }'`
echo "VmPeak:            $peak kB"
hps=`grep ^Hugepagesize /proc/meminfo | awk '{ print $2 }'`
echo "Hugepagesize:   $hps kB"
hp=$((peak/hps))
echo Set Huge Pages:     $hp

āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻāĻ‡ āĻŽāĻ¤ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ:

āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ

Pid:            12737
VmPeak:         180932 kB
Hugepagesize:   2048 kB
Set Huge Pages: 88

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻšāĻ˛ 88, āĻ¤āĻžāĻ‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻāĻŸāĻŋ 88 āĻ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

sysctl -w vm.nr_hugepages=88

āĻāĻ–āĻ¨ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨, āĻ†āĻĒāĻ¨āĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻŦā§‡āĻ¨ āĻ¯ā§‡ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ (HugePages_Free = HugePages_Total)āĨ¤

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°ā§āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸)

$ cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
HugePages_Total:      88
HugePages_Free:       88
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB

āĻāĻ–āĻ¨ $PGDATA/postgresql.conf-āĻ āĻŦāĻŋāĻļāĻžāĻ˛_āĻĒā§ƒāĻˇā§āĻ āĻž āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°āĻŸāĻŋāĻ•ā§‡ "āĻšāĻžāĻ˛ā§" āĻ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻ†āĻŦāĻžāĻ°, āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¤āĻĨā§āĻ¯ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸)

$ cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
HugePages_Total:      88
HugePages_Free:       81
HugePages_Rsvd:       64
HugePages_Surp:        0
Hugepagesize:       2048 kB

āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻšā§āĻ›ā§‡āĻ¨ āĻ¯ā§‡ āĻ–ā§āĻŦ āĻ•āĻŽ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤ āĻāĻ–āĻ¨ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡ āĻ•āĻŋāĻ›ā§ āĻ¤āĻĨā§āĻ¯ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤

āĻ•āĻŋāĻ›ā§ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻž āĻĒā§āĻ¨āĻ°ā§āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡

postgres=# CREATE TABLE foo(a INTEGER);
CREATE TABLE
postgres=# INSERT INTO foo VALUES(generate_Series(1,10000000));
INSERT 0 10000000

āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ• āĻ†āĻŽāĻ°āĻž āĻ†āĻ—ā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻāĻ–āĻ¨ āĻ†āĻ°āĻ“ āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ›āĻŋ āĻ•āĻŋāĻ¨āĻžāĨ¤

āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ†āĻ°āĻ“ āĻ¤āĻĨā§āĻ¯ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸)

$ cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
HugePages_Total:      88
HugePages_Free:       18
HugePages_Rsvd:        1
HugePages_Surp:        0
Hugepagesize:       2048 kB

āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻšā§āĻ›ā§‡āĻ¨ āĻ¯ā§‡ āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻŦāĻĄāĻŧ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤

āĻĻā§āĻ°āĻˇā§āĻŸāĻŦā§āĻ¯: āĻāĻ–āĻžāĻ¨ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ HugePages-āĻāĻ° āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻŽāĻžāĻ¨ āĻ–ā§āĻŦāĻ‡ āĻ•āĻŽ, āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻĒāĻŖā§āĻ¯ āĻĒāĻ°āĻŋāĻŦā§‡āĻļā§‡ āĻšāĻžāĻ˛āĻŋāĻ¤ āĻāĻ•āĻŸāĻŋ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻ…āĻ¨ā§āĻ—ā§āĻ°āĻš āĻ•āĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĒā§ƒāĻˇā§āĻ āĻž āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ˛ā§‹āĻĄ āĻāĻŦāĻ‚ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§āĻ¨ā§ˇ

vm.swappiness

vm.swappiness āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¯āĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻ‡ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻŸāĻŋ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛ (āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻ­āĻŋāĻ¤āĻ°ā§‡ āĻāĻŦāĻ‚ āĻŦāĻžāĻ‡āĻ°ā§‡ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛) āĻ†āĻšāĻ°āĻŖ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻŽāĻžāĻ¨ 0 āĻĨā§‡āĻ•ā§‡ 100 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤āĨ¤ āĻāĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°ā§‡ āĻ•āĻ¤ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§‡āĻœ āĻ•āĻ°āĻž āĻšāĻŦā§‡ āĻŦāĻž āĻĒā§‡āĻœ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤ āĻļā§‚āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ā§‡ āĻ•ā§‹āĻ¨ āĻŦāĻŋāĻ¨āĻŋāĻŽāĻ¯āĻŧ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ‚ 100 āĻŽāĻžāĻ¨ā§‡ āĻ†āĻ•ā§āĻ°āĻŽāĻ¨āĻžāĻ¤ā§āĻŽāĻ• āĻŦāĻŋāĻ¨āĻŋāĻŽāĻ¯āĻŧāĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨ āĻŽāĻžāĻ¨ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§‡ āĻ­āĻžāĻ˛ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨.

āĻ¨āĻ¤ā§āĻ¨ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ā§‡ āĻāĻŸāĻŋāĻ•ā§‡ 0 āĻ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻ˛ā§‡ OOM āĻ•āĻŋāĻ˛āĻžāĻ° (āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡āĻ° āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž) āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ¤āĻžāĻ‡ āĻāĻŸāĻŋ 1 āĻ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛ āĻ•āĻŽ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨āĨ¤ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŽāĻžāĻ¨ āĻšāĻ˛ 60āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ‰āĻšā§āĻš āĻŽāĻžāĻ¨ MMU (āĻŽā§‡āĻŽāĻ°āĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§‡āĻœāĻŽā§‡āĻ¨ā§āĻŸ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ) RAM āĻāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻŦā§‡āĻļāĻŋ āĻ¸ā§‹āĻ¯āĻŧāĻžāĻĒ āĻ¸ā§āĻĒā§‡āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ•āĻŽ āĻŽāĻžāĻ¨ āĻŽā§‡āĻŽāĻ°āĻŋāĻ¤ā§‡ āĻ†āĻ°āĻ“ āĻĄā§‡āĻŸāĻž/āĻ•ā§‹āĻĄ āĻ°āĻžāĻ–ā§‡āĨ¤

PostgreSQL-āĻ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻŽā§āĻ¨ āĻŽāĻžāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ā§‹ āĻŦāĻžāĻœāĻŋāĨ¤

vm.overcommit_memory / vm.overcommit_ratio

āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¯āĻ–āĻ¨ āĻāĻŸāĻŋāĻ° āĻ†āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¤āĻ–āĻ¨ āĻāĻŸāĻŋ āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ–ā§āĻŦ āĻŦā§‡āĻļāĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ OOM āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ°āĻŖ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻ–āĻžāĻ¨ā§‡ āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻŽāĻžāĻ¨ āĻ†āĻ›ā§‡ vm.overcommit_memory āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻ¸āĻš:

  1. āĻšāĻŋāĻ‰āĻ°āĻŋāĻ¸ā§āĻŸāĻŋāĻ• āĻ“āĻ­āĻžāĻ°āĻ•āĻŽāĻŋāĻŸ (āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ); āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛-āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ• āĻšāĻŋāĻ‰āĻ°āĻŋāĻ¸ā§āĻŸāĻŋāĻ•
  2. āĻ¯āĻžāĻ‡āĻšā§‹āĻ• overcommit āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻāĻŋāĻ¨
  3. āĻāĻŸāĻŋ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž, āĻ“āĻ­āĻžāĻ°āĻ•āĻŽāĻŋāĻŸ āĻ…āĻ¨ā§āĻĒāĻžāĻ¤ āĻ…āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤

āĻ˛āĻŋāĻ™ā§āĻ•: https://www.kernel.org/doc/Documentation/vm/overcommit-accounting

vm.overcommit_ratio — āĻ“āĻ­āĻžāĻ°āĻ˛ā§‹āĻĄā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ RAM āĻāĻ° āĻļāĻ¤āĻžāĻ‚āĻļāĨ¤ 50 GB RAM āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ 2% āĻāĻ° āĻŽāĻžāĻ¨ 3 GB āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ RAM āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

vm.overcommit_memory-āĻāĻ° āĻœāĻ¨ā§āĻ¯ 2-āĻāĻ° āĻŽāĻžāĻ¨ PostgreSQL-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ°āĻ“ āĻ­āĻžāĻ˛ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻāĻ‡ āĻŽāĻžāĻ¨āĻŸāĻŋ OOM āĻ•āĻŋāĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻšāĻ¤ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ•ā§‹āĻ¨ā§‹ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻā§āĻāĻ•āĻŋ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° RAM āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•ā§‡ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡āĨ¤ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻŦā§‡, āĻ¤āĻŦā§‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ“āĻ­āĻžāĻ°āĻ°āĻžāĻ¨ā§‡āĻ° āĻ¸ā§€āĻŽāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡, āĻ¯āĻž āĻāĻ•āĻŸāĻŋ OOM āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ•ā§‡ āĻšāĻ¤ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻā§āĻāĻ•āĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°ā§‡āĨ¤ āĻ¤āĻžāĻ‡, 2-āĻāĻ° āĻŽāĻžāĻ¨ 0-āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŽāĻžāĻ¨ā§‡āĻ° āĻĨā§‡āĻ•ā§‡ āĻ­āĻžāĻ˛ā§‹ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ°ā§‡āĻžā§āĻœā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡āĻ° āĻŽā§‡āĻŽāĻ°āĻŋ āĻ¯āĻžāĻ¤ā§‡ āĻ“āĻ­āĻžāĻ°āĻ˛ā§‹āĻĄ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ OOM āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻā§āĻāĻ•āĻŋ āĻĻā§‚āĻ° āĻ•āĻ°ā§‡āĨ¤

āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛ āĻ›āĻžāĻĄāĻŧāĻž āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡, 2 āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ vm.overcommit_memory āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

https://www.postgresql.org/docs/current/static/kernel-resources.html#LINUX-MEMORY-OVERCOMMIT

vm.dirty_background_ratio / vm.dirty_background_bytes

vm.dirty_background_ratio āĻ¨ā§‹āĻ‚āĻ°āĻž āĻĒā§ƒāĻˇā§āĻ āĻžāĻ¯āĻŧ āĻ­āĻ°āĻž āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻļāĻ¤āĻžāĻ‚āĻļ āĻ¯āĻž āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻĄāĻŋāĻ¸ā§āĻ• āĻĨā§‡āĻ•ā§‡ āĻĢā§āĻ˛āĻžāĻļ āĻŦā§āĻ¯āĻžāĻ•āĻ—ā§āĻ°āĻžāĻ‰āĻ¨ā§āĻĄā§‡ āĻ˜āĻŸā§‡āĨ¤ āĻāĻ‡ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ¨ 0 āĻĨā§‡āĻ•ā§‡ 100 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤; āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, 5 āĻāĻ° āĻ¨āĻŋāĻšā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ¨ āĻ…āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻāĻŸāĻŋāĻ•ā§‡ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ 10 āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ›ā§‹āĻŸ āĻĢā§āĻ¯āĻžāĻ•ā§āĻŸāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛āĻŋāĻ–āĻŋāĻ¤-āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¯āĻžāĻ° āĻ…āĻ°ā§āĻĨ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻĒāĻŸāĻ­ā§‚āĻŽāĻŋāĻ¤ā§‡ āĻ¨ā§‹āĻ‚āĻ°āĻž āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ āĻĢā§āĻ˛āĻžāĻļ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻŽāĻžāĻ¨ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ vm.dirty_background_bytes āĻ†āĻĒāĻ¨āĻžāĻ° āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡āĻ° āĻ—āĻ¤āĻŋāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡āĨ¤

āĻāĻ‡ āĻĻā§āĻŸāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻ¨ "āĻ­āĻžāĻ˛" āĻŽāĻžāĻ¨ āĻ¨ā§‡āĻ‡ āĻ•āĻžāĻ°āĻŖ āĻ‰āĻ­āĻ¯āĻŧāĻ‡ āĻšāĻžāĻ°ā§āĻĄāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, vm.dirty_background_ratio 5 āĻāĻŦāĻ‚ vm.dirty_background_bytes āĻĄāĻŋāĻ¸ā§āĻ•ā§‡āĻ° āĻ—āĻ¤āĻŋāĻ° 25% āĻ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ•ā§‡ ~25% āĻ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°ā§‡āĨ¤

vm.dirty_ratio/dirty_bytes

āĻāĻ‡ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻāĻ•āĻ‡ vm.dirty_background_ratio/dirty_background_bytes, āĻŦā§āĻ¯āĻ¤ā§€āĻ¤ āĻ¯ā§‡ āĻ°āĻŋāĻ¸ā§‡āĻŸāĻŸāĻŋ āĻ•āĻ°ā§āĻŽā§€ āĻ¸ā§‡āĻļāĻ¨ā§‡ āĻ¸āĻžā§āĻšāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋāĻ•ā§‡ āĻŦā§āĻ˛āĻ• āĻ•āĻ°ā§‡āĨ¤ āĻ¤āĻžāĻ‡ vm.dirty_ratio āĻāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻŦā§‡āĻļāĻŋ āĻšāĻ“āĻ¯āĻŧāĻž āĻ‰āĻšāĻŋāĻ¤ vm.dirty_background_ratio. āĻāĻŸāĻŋ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻŦā§āĻ¯āĻžāĻ•āĻ—ā§āĻ°āĻžāĻ‰āĻ¨ā§āĻĄ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻžāĻ¨ āĻŦā§āĻ˛āĻ• āĻ•āĻ°āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻ†āĻ—ā§‡ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻĄāĻŋāĻ¸ā§āĻ• I/O āĻ˛ā§‹āĻĄā§‡āĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡ āĻāĻ‡ āĻĻā§āĻŸāĻŋ āĻ…āĻ¨ā§āĻĒāĻžāĻ¤ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

āĻĢāĻ˛āĻžāĻĢāĻ˛

āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¤āĻŦā§‡ āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋāĻ—ā§āĻ˛āĻŋ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻ–ā§āĻŦ āĻŦā§‡āĻļāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ¸āĻŦ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤ āĻ•āĻŋāĻ›ā§ āĻ…ā§āĻ¯āĻžāĻĒ āĻ†āĻ°āĻ“ āĻ­āĻžāĻ˛ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ•āĻŋāĻ›ā§ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻ•āĻžāĻœā§‡āĻ° āĻšāĻžāĻĒ āĻāĻŦāĻ‚ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ‡ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¸āĻ āĻŋāĻ• āĻ­āĻžāĻ°āĻ¸āĻžāĻŽā§āĻ¯ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻŸāĻŋāĻ‰āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ OS āĻ†āĻšāĻ°āĻŖ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻŽāĻ¤ā§‹ āĻ¸āĻšāĻœ āĻ¨āĻ¯āĻŧ; āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻ•āĻ°āĻž āĻ†āĻ°āĻ“ āĻ•āĻ āĻŋāĻ¨āĨ¤

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨