¿Cómo y por qué debo especificar mtrr_gran_size / mtrr_chunk_size?

8

Hoy noté que /var/log/dmesgcontiene varias docenas de líneas con información sobre algo llamado gran_sizey *BAD*gran_size, seguido de lo que parece ser una instrucción para mí:

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

¿Necesito hacer lo que dice? ¿Cómo lo haría yo?

ændrük
fuente

Respuestas:

5

MTRR significa registros de rango de tipo de memoria, que es una nueva forma de particionar y administrar los recursos de memoria en su sistema. Esta característica se había colocado en los procesadores debido a que los tamaños de memoria se hacían cada vez más grandes. Tenía que haber una manera de que la memoria pudiera asignarse direccionada y utilizada de manera más efectiva.

Una característica principal del MTRR es mapear ubicaciones de componentes PCI o AGP en su sistema para que el software, los controladores puedan acceder a ellos de manera rápida y eficiente.

(de Gentoo Wiki )

Después de leer Solucionar problemas de Linux MTRR , parece que se informa el error que ve cuando mtrr sanitizer no puede elegir entre varias opciones de diseño de memoria. Debe imprimir una lista de posibles opciones junto al mensaje de error. Para que el mensaje desaparezca, debe especificar algo como

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

en los parámetros de arranque kernal (donde los valores reales provienen de una de las opciones propuestas por el desinfectante).

El autor del artículo afirma que

Ahora se han ido 24MiB de RAM, pero mis cargas de trabajo en 3D, que son básicamente contenido webgl y el simulador de vuelo oculto dentro de Google Earth, funcionan a velocidades de fotogramas significativamente mejores.

lo que me pone muy interesado ... necesito revisar dmesgtodas mis máquinas.

Sergey
fuente
0

De acuerdo con [Redhat's Knowledgebase] [1] para RHEL6, actualizado en enero de 2017, "especifique mtrr_gran_size / mtrr_chunk_size" significa:

  • Estos mensajes no son un problema y son simplemente advertencias. Pueden ser ignorados.
  • Agregar disable_mtrr_cleanup disable_mtrr_trim a los parámetros del núcleo en /boot/grub/grub.conf deshabilitará la ruta del código que inicia estos errores y puede evitar que aparezcan en el sistema.

Por supuesto, soy consciente de que Redhat no es Ubuntu, pero en general ejecutan el mismo núcleo, por lo que me sorprendería mucho si no es lo mismo para Ubuntu. Esta respuesta se ofrece como una "segunda opinión".

[1]: https://access.redhat.com/solutions/2852191 - (se requiere suscripción)

RCD
fuente