Bien que je sois d'accord dans une certaine mesure avec les réponses existantes, augmenter à -XX:MaxPermSize=512M
aidera et même jusqu'à -XX:MaxPermSize=1G
ne devrait pas faire de mal, en supposant que votre serveur dispose de cette quantité de RAM physique, un conseil concernant la taille totale du tas, qui est configuré en augmentant -Xmx=xGB
.
En général, cela augmentera la mémoire disponible pour le programme, ce qui est une bonne chose, puisque la JVM (Java Virtual Machine, essentiellement le programme qui fait tourner votre serveur Minecraft) aura plus de mémoire pour y mettre des "trucs". À un certain point, il y aura cependant un grand inconvénient. Lorsque vous passez à des dizaines de gigaoctets, la JVM devient de plus en plus inefficace pour gérer autant de mémoire sans conseil.
Comme de plus en plus de mémoire est nécessaire, vous devez dire à la JVM à quoi exactement la mémoire est principalement utilisée (cela dépend du temps que vos objets java sont plutôt à courte ou longue durée de vie). Je ne suis pas sûr de la façon dont Minecraft gère cette mémoire, car je viens d'un autre domaine de Java (J2EE), mais plus la RAM totale est grande, plus vous devez adapter votre serveur aux besoins spécifiques de l'application.
Plus précisément, vous devrez régler le ramasseur d'ordures de manière à minimiser les pauses "stop-the-world" (c'est-à-dire lorsque votre serveur est complètement immobile et ne fait apparemment rien). Utilisation de -XX:+UseConcMarkSweepGC
va beaucoup aider. Utilisation de -XX:CMSClassUnloadingEnabled
ne fera qu'aider à garder votre PermGen ( -XX:MaxPermSize
) propre mais pas de garder votre tas global propre. Dans le premier cas, il y a littéralement des dizaines de paramètres à prendre en compte.
TL;DR :
Pour un très gros serveur, il y a beaucoup d'autres choses à régler que la simple fonction -XX:MaxPermSize
. Un PermSize d'environ -XX:MaxPermSize=1G
et un tas autour -Xmx=4G
à -Xmx=6G
devrait encore être assez sûr. Je n'irais pas beaucoup plus loin pour conserver les performances du serveur.
Bien entendu, la taille MaxPermSize + Xmx ne doit jamais être supérieure à la RAM installée dans votre ordinateur. Elle commencera à échanger des données, ce qui réduira les performances de quelques magnitudes.