Freien Arbeitsspeicher maximieren

RAM

Da die 1024 MB die der Raspberry PI hat von der CPU und GPU geteilt werden, stehen nur 925 MB für die CPU zur Verfügung. Jedoch kann dieser Memory-Split wie diese Aufteilung genannt wird, anders verteilt werden um mehr Speicher für die CPU freizumachen, falls dies besser für die Anwendungen sind die auf dem Raspberry PI laufen und keine grafische Oberfläche verwendet wird.

Verfügbaren Arbeitsspeicher maximieren

Standardmässig können nur 1008 MB Arbeitsspeicher angesprochen werden. Durch folgenden Befehl, der die Zeile "total_mem=1024" in die Datei /boot/config.txt hinzufügt, sollten nach einem Neustart 16 MB mehr Arbeitsspeicher frei sein. In meinem Fall waren es leider nur 4 MB, was aber trotzdem eine Verbesserung darstellt.

echo total_mem=1024 | sudo tee -a /boot/config.txt

Ergebnis

Befehl Vorher Nachher
free 925 MB 929 MB
vcgencmd get_mem arm 944 MB 948 MB

Grafikspeicher verkleinern

Da sich beim Raspberry PI die CPU und GPU den Arbeitsspeicher aufteilen, kann es für das jeweilige Einsatzgebiet von Vorteil sein, wenn diese Speicheraufteilung (Memory Split) manuell festgelegt wird. Die möglichen Werte für den Memory Split sind bei raspberrypi.org beschrieben.

Mein Raspberry PI wird als Server headless betrieben und dadurch ist kein Bildschirm angeschlossen. Damit benötigt auch die GPU keine 64 MB Speicher, die standardmässig reserviert werden und es ist mehr Arbeitsspeicher für Programme frei. Der Speicher der GPU kann auf ein Minimum von 16 MB konfiguriert werden.

echo gpu_mem=16 | sudo tee -a /boot/config.txt

Ergebnis

Befehl Vorher Nachher
free 929 MB 979 MB
vcgencmd get_mem arm 948 MB 998 MB
vcgencmd get_mem gpu 64 MB 16 MB

Speicherverteilung prüfen

Nach einem Neustart mit sudo shutdown kann mit folgenden Befehlen geprüft werden, wieviel Arbeitsspeicher der CPU (arm) und wieviel der GPU zur Verfügung stehen. Am Anfang waren 925 MB laut "free" frei und nach den Optimierungen sind 73 MB mehr Speicher frei und so haben die Programme insgesamt 979 MB Arbeitsspeicher zur Verfügung.

free -m total used free shared buffers cached Mem: 979 78 900 6 5 40 -/+ buffers/cache: 32 946 Swap: 2047 0 2047 sudo vcgencmd get_mem arm arm=998M sudo vcgencmd get_mem gpu gpu=16M

Veröffentlicht in Linux

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.