10 votes

Comment et pourquoi dois-je spécifier mtrr_gran_size/mtrr_chunk_size ?

J'ai remarqué aujourd'hui que /var/log/dmesg contient plusieurs dizaines de lignes contenant des informations sur un élément appelé gran_size y *BAD*gran_size suivi de ce qui semble être une instruction pour moi :

[    0.000000] mtrr_cleanup: can not find optimal value
[    0.000000] please specify mtrr_gran_size/mtrr_chunk_size

Dois-je faire ce qu'il dit ? Comment le ferais-je ?

6voto

John Points 9

MTRR est l'abréviation de Memory Type range registers (registres de plage de type mémoire) qui est une nouvelle manière de partitionnement et de gestion des ressources mémoire dans votre système. Ce site fonction a été placée dans les processeurs en raison des tailles de mémoire devenant de plus en plus grandes. Il devait y avoir un moyen pour que la mémoire puisse être allouée, adressée et utilisée plus efficacement.

L'une des principales fonctions du MTRR est de cartographier les emplacements des cartes PCI ou AGP. dans votre système afin que les logiciels et les pilotes puissent y accéder rapidement et efficacement.

(de Wiki Gentoo )

Après avoir lu Résoudre les problèmes de MTRR sous linux il semble que l'erreur que vous voyez est signalée lorsque mtrr sanitizer est incapable de choisir parmi plusieurs options de disposition de la mémoire. Il doit imprimer une liste des options possibles à côté du message d'erreur. Pour faire disparaître le message, vous devez spécifier quelque chose comme

enable_mtrr_cleanup mtrr_spare_reg_nr=1 mtrr_gran_size=32M mtrr_chunk_size=128M

dans les paramètres de démarrage du noyau (où les valeurs réelles proviennent d'une des options proposées par l'assainisseur).

L'auteur de l'article affirme que

Maintenant, 24MiB de ram ont disparu, mais mes charges de travail en 3D, qui sont en gros le contenu de webgl et le simulateur de vol caché dans google earth, fonctionnent les deux avec des taux d'images nettement meilleurs.

ce qui me rend très intéressé... je dois vérifier dmesg sur toutes mes machines.

2voto

Dokbua Points 161

Selon la [base de connaissances de Redhat][1] pour RHEL6, mise à jour en janvier 2017, "veuillez spécifier la taille de mtrr_gran_size/mtrr_chunk_size" signifie :

  • Ces messages ne constituent pas un problème et sont simplement des avertissements. Ils peuvent être ignorés.
  • L'ajout de disable_mtrr_cleanup disable_mtrr_trim aux paramètres du noyau dans /boot/Grub/Grub.conf désactivera le chemin de code qui initie ces erreurs et peut empêcher leur apparition sur le système.

Je suis bien sûr conscient que Redhat n'est pas Ubuntu, mais dans l'ensemble, ils utilisent le même noyau et je serais très surpris que ce ne soit pas le cas pour Ubuntu. Cette réponse est proposée en tant que "deuxième opinion".

[1] : https://access.redhat.com/solutions/2852191 - (abonnement requis)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X