No sé si es un problema crítico o no. Pero, necesito deshacerme de los signos de interrogación en mi mente.
Recientemente compré una placa Raspberry Pi 3 y, mientras jugaba con ella, me di cuenta de que meminfo muestra el tamaño de la memoria física mucho menos (~ 880 MB) que 1 GB (que se especifica en el sitio oficial ).
root@mypi:~# cat /proc/meminfo
MemTotal: 882780 kB
MemFree: 536068 kB
MemAvailable: 712180 kB
La cantidad de memoria disponible para GPU es de 16 MB (que es el límite mínimo permitido) comprobada dos veces en el elemento de menú relacionado con raspi-config.
raspi-config -> Advanced Options -> Memory Split
La configuración de arranque también dice que gpu_mem es 16MB .
root@mypi:~# cat /boot/config.txt | grep -i gpu
gpu_mem=16
Para reducir el espacio del problema, aquí está la información del sistema. Por cierto, el sistema está actualizado.
Lanzamiento del sistema operativo:
root@mypi:~# cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
Versión del núcleo:
root@mypi:~# uname -a
Linux mypi 4.4.23-v7+ #913 SMP Tue Oct 4 14:16:19 BST 2016 armv7l GNU/Linux
Configuración de kernel vmsplit:
root@mypi:~# zcat /proc/config.gz | grep CONFIG_VMSPLIT | grep -v ^#
CONFIG_VMSPLIT_2G=y
Entonces, tengo 2 preguntas:
- ¿Dónde está la memoria faltante de 128 MB?
- ¿Qué causa esta situación?
cat /etc/os-release
debería decir eso. ¿Cuál es la versión del kernel?uname -a
debería dar eso. Esto debería ayudar a reducir las causas probables. ¿La actualización rpi realmente funcionó o produjo alguna advertencia?MemTotal: 882776 kB MemFree: 126868 kB MemAvailable: 689576 kB
"En circunstancias normales, NUNCA hay necesidad de ejecutar rpi-update, ya que siempre te lleva al núcleo y al firmware de vanguardia y debido a que puede ser una versión de prueba, podría dejar tu RPi no arrancable". raspberrypi.org/forums/viewtopic.php?p=916911#p916911vcgencmd get_mem arm && vcgencmd get_mem gpu
muestra?Respuestas:
Si la salida de
vcgencmd get_mem arm && vcgencmd get_mem gpu
esEsto significa que la GPU está usando 128M.
Esto puede verificarse / cambiarse
raspi-config
Advanced Options
, aunque yo mismo no he reducido la GPU. Voy de memoria, pero creo que este es el valor predeterminado, posiblemente relacionado con la cámara. Al menos ahora sabes dónde está tu memoria.fuente
memory size for GPU is 16MB
En primer lugar, le doy mis mejores deseos a @Milliways por sugerir que verifique 2 comandos simples.
¿Dónde está la memoria faltante de 128 MB?
Incluso si ambos
raspi-config
y/boot/config.txt
dice que la cantidad de memoria disponible para la GPU es de 16MB, 880MB son valores reales para la CPU, 128 MB para la GPU.Entonces, la memoria faltante (en realidad no faltante) de 128 MB está reservada para la GPU .
¿Qué causa esta situación?
Incluso
/boot/config.txt
incluye la líneagpu_mem=16
, hay otra línea que habilita el módulo de la cámara.Por lo tanto, habilitar el módulo de la cámara conduce a una reserva de memoria de 128 MB para GPU, lo que está implícitamente implícito aquí .
En resumen, podemos decir que
start_x=1
anulagpu_mem=16
.Después de deshabilitar el módulo de la cámara
start_x=0
, aquí están los valores de memoria:fuente
Aparte de la opción de actualización de rpi, parece haber otra razón (posible) por la cual la memoria informada es menor. Esta vez tiene que ver con las divisiones de memoria del espacio del núcleo / espacio del usuario. Esta publicación detalla la solución que implica ajustar la configuración de compilación del núcleo y reconstruirla desde el código fuente. Un usuario informó éxito
Deberá verificar que esta es realmente la causa (marcando el valor de
CONFIG_VMSPLIT
is unoCONFIG_VMSPLIT=3G
oCONFIG_VMSPLIT=2G
) ya que algunas publicaciones más abajo en ese enlace informan que el éxito es asímientras que otros no tuvieron los mismos resultados
Lamentablemente, no estoy cerca de mi PI para verificar ninguno de estos reclamos.
fuente