Enlever les limitation utilisateurs
1 Introduction
Au taf, j'ai eu un problème avec la mémoire d'une jvm dont le Xmx et le Xms étaient mis à 4,5Go et ou une partie de la mémoire partait en swap jusqu'a ce qu'un Full GC se déclenche et que la réservation (RSS) partie en swap revienne en RAM.
Comme messages d'avertissements, j'ai eu des :
pages faults
J'ai pas mal chercher avant de trouver une solution.
2 Enlever les limitations par utilisateur
Déjà pour la JVM, il faut rajouter une option au lancement :
-XX+UseISM
Ceci est pour activer l'utilisation de la initimate shared memory.
Mais les users sont limités sous solaris à la quantité allouable comme ca, donc pour augmenter la limite :
projadd -U qa user.qa projmod -sK "project.max-shm-memory=(privileged,64G,deny)" user.pmavro |
Ensuite on se relog avec l'utilisateur pmavro et pour vérifier que tout a bien fonctionner :
Une fois fait, la mémoire RES de la commande top est bien égale au max, dès le démarrage et plus de soucis de page fault :-)