Je ne sais pas si c'est un problème critique ou non. Mais, je dois me débarrasser des points d'interrogation dans mon esprit.
J'ai récemment acheté une carte Raspberry Pi 3 et pendant que je jouais avec, j'ai réalisé que meminfo montre une taille de mémoire physique beaucoup moins (~ 880 Mo) supérieure à 1 Go (ce qui est spécifié sur le site officiel ).
root@mypi:~# cat /proc/meminfo
MemTotal: 882780 kB
MemFree: 536068 kB
MemAvailable: 712180 kB
La quantité de mémoire disponible pour le GPU est de 16 Mo (qui est la limite minimale autorisée) vérifiée deux fois sur l'élément de menu raspi-config correspondant.
raspi-config -> Advanced Options -> Memory Split
Configuration de démarrage indique également que gpu_mem est 16MB .
root@mypi:~# cat /boot/config.txt | grep -i gpu
gpu_mem=16
Pour réduire l'espace du problème, voici les informations système. Soit dit en passant, le système est à jour.
Version du système d'exploitation:
root@mypi:~# cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
Version du noyau:
root@mypi:~# uname -a
Linux mypi 4.4.23-v7+ #913 SMP Tue Oct 4 14:16:19 BST 2016 armv7l GNU/Linux
Configuration vmsplit du noyau:
root@mypi:~# zcat /proc/config.gz | grep CONFIG_VMSPLIT | grep -v ^#
CONFIG_VMSPLIT_2G=y
J'ai donc 2 questions:
- Où est la mémoire de 128 Mo manquante?
- Qu'est-ce qui cause cette situation?
cat /etc/os-release
devrait dire cela. quelle est la version du noyau?uname -a
devrait donner cela. cela devrait aider à réduire les causes probables. la mise à jour rpi a-t-elle réellement fonctionné ou produit des avertissements?MemTotal: 882776 kB MemFree: 126868 kB MemAvailable: 689576 kB
"Dans des circonstances normales, il n'est JAMAIS nécessaire d'exécuter rpi-update car il vous amène toujours au firmware et au noyau de pointe et parce que cela peut être une version de test, il pourrait laisser votre RPi non amorçable". raspberrypi.org/forums/viewtopic.php?p=916911#p916911vcgencmd get_mem arm && vcgencmd get_mem gpu
montre-t-on?Réponses:
Si la sortie de
vcgencmd get_mem arm && vcgencmd get_mem gpu
estCela signifie que le GPU utilise 128M.
Cela peut être vérifié / modifié
raspi-config
Advanced Options
, même si je n'ai pas réduit le GPU moi-même. Je vais de mémoire, mais je pense que c'est la valeur par défaut, peut-être liée à la caméra. Au moins, vous savez maintenant où se trouve votre mémoire.la source
memory size for GPU is 16MB
Tout d'abord, je donne mes meilleures salutations à @Milliways pour avoir suggéré de vérifier 2 commandes simples.
Où est la mémoire de 128 Mo manquante?
Même si les deux
raspi-config
et/boot/config.txt
dit que la quantité de mémoire disponible pour GPU est 16MB, les valeurs réelles sont 880MB pour CPU, 128 Mo pour GPU.Ainsi, la mémoire de 128 Mo manquante (en fait non manquante) est réservée au GPU .
Qu'est-ce qui cause cette situation?
/boot/config.txt
Comprend même la lignegpu_mem=16
, il existe une autre ligne qui active le module caméra.Ainsi, l' activation du module de caméra entraîne une réservation de mémoire de 128 Mo pour le GPU, ce qui est implicite ici .
En bref, nous pouvons dire que cela l'
start_x=1
emportegpu_mem=16
.Après avoir désactivé le module caméra par
start_x=0
, voici les valeurs de la mémoire:la source
Mis à part l'option rpi-update, il semble qu'il existe une autre raison (possible) pour laquelle la mémoire signalée est inférieure. Cette fois, cela a à voir avec les divisions de mémoire espace noyau / espace utilisateur. Cet article détaille le correctif qui implique de modifier la configuration de construction du noyau et de la reconstruire à partir du code source. Un utilisateur a signalé un succès
Vous devrez vérifier que c'est bien la cause (en vérifiant la valeur de
CONFIG_VMSPLIT
isCONFIG_VMSPLIT=3G
or orCONFIG_VMSPLIT=2G
) car certains messages plus bas dans ce lien rapportent le succès comme cecitandis que d'autres n'ont pas eu les mêmes résultats
Malheureusement, je ne suis pas près de mon IP pour vérifier aucune de ces affirmations.
la source