L’échange est suffisamment lent pour que je ne considère pas « presque plus de place » comme une raison d’ajouter plus de 1 Go à la suggestion par défaut à ce stade. Chaque Go est beaucoup d’échange, comme on l’a expérimenté sur une instance Discourse dédiée.
Oui, par défaut, Linux utilise l’échange par ordre de priorité, et il est possible d’utiliser la même priorité sur plusieurs périphériques pour explicitement répartir l’échange. Mais ajouter beaucoup d’échange pour de petits sites n’est pas particulièrement utile, je suggérerais.
Donc, si après une décennie, les gens ne rencontrent que rarement 2 Go, je suggérerais de passer à 3 Go plutôt qu’à 4 Go par défaut. Et la quantité d’échange nécessaire pour une instance Discourse dédiée ne devrait pas augmenter particulièrement avec la mémoire, car le contenu qui serait effectivement échangé ne change pas particulièrement beaucoup.
L’idée de faire croître l’échange avec plus de mémoire provient principalement de l’informatique à usage général, basée sur une hypothèse généralisée selon laquelle plus vous avez besoin de RAM, plus la demande est susceptible d’être importante. Mais la pression d’échange sur une instance Discourse spécialisée ne suivra probablement pas ce schéma, je pense.
THP sont spécifiques aux plates-formes prenant en charge les pages volumineuses, ce qui n’est pas le cas de toutes les plates-formes. La manière générique de gérer cela est de voir si cela existe. Sur un Raspberry Pi que j’ai :
$ sysctl sys.kernel.mm.transparent_hugepage.enabled
sysctl: cannot stat /proc/sys/sys/kernel/mm/transparent_hugepage/enabled: No such file or directory
$ echo $?
255
En revanche, l’overcommit est un paramètre VM général pour Linux depuis quelques décennies. Sur le même Raspberry Pi :
$ sysctl vm.overcommit_memory
vm.overcommit_memory = 0
Analyser la sortie de free dans le shell est un peu pénible. En tant qu’auteur original de procps, pour cela, je chercherais simplement SwapFree dans /proc/meminfo. 