Raspberry Pi 3의 OS 수준에서 사용 가능한 메모리가 1GB 미만입니다


13

그것이 중요한 문제인지 아닌지 모르겠습니다. 그러나 나는 내 마음에 물음표를 제거해야합니다.

나는 최근에 Raspberry Pi 3 보드를 구입했으며 보드를 사용하면서 meminfo 가 실제 메모리 크기가 1GB보다 훨씬 적다 는 것을 깨달았습니다 ( 공식 사이트 에 지정됨 ).

root@mypi:~# cat /proc/meminfo 
MemTotal:         882780 kB
MemFree:          536068 kB
MemAvailable:     712180 kB

GPU에 사용할 수있는 메모리 양은 관련 raspi-config 메뉴 항목에서 16MB (최소 허용 제한)입니다.

raspi-config -> Advanced Options -> Memory Split

부팅 구성에 따르면 gpu_mem은 16MB 입니다.

root@mypi:~# cat /boot/config.txt | grep -i gpu
gpu_mem=16

문제 공간을 좁히기 위해 다음은 시스템 정보입니다. 그건 그렇고, 시스템은 최신입니다.

OS 릴리스 :

root@mypi:~# cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"

커널 버전 :

root@mypi:~# uname -a
Linux mypi 4.4.23-v7+ #913 SMP Tue Oct 4 14:16:19 BST 2016 armv7l GNU/Linux

커널 vmsplit 구성 :

root@mypi:~# zcat /proc/config.gz | grep CONFIG_VMSPLIT | grep -v ^#
CONFIG_VMSPLIT_2G=y

그래서 두 가지 질문이 있습니다.

  • 누락 된 128MB 메모리는 어디에 있습니까?
  • 이 상황의 원인은 무엇입니까?

당신이 사용하는 OS는 무엇입니까-raspbian / arch / other? cat /etc/os-release그 말을해야합니다. 커널 버전은 무엇입니까? uname -a그것을 제공해야합니다. 이것은 가능한 원인을 좁히는 데 도움이됩니다. rpi-update가 실제로 작동하거나 경고를 생성 했습니까?
Shreyas Murali

자세한 정보가 질문 텍스트에 추가됩니다.
vaha

joan이 다른 스레드에서 제안한 것과 동일한 문제 일 수 있습니다. zcat /proc/config.gz|grep CONFIG_VMSPLIT로 확인하십시오 . 아직 Pi3에 대한 최신 커널이 없기 때문에 rpi-update가있는 솔루션 만 작동하지 않습니다. 그러나 2GB / 2GB 메모리 분할로 커널을 다시 컴파일 할 수 있습니다.
Janka

1
Pi3은 MemTotal: 882776 kB MemFree: 126868 kB MemAvailable: 689576 kB"정상적인 상황에서는 항상 최신 펌웨어와 커널로 연결되므로 테스트 버전 일 수 있으므로 RPi를 부팅 할 수 없게 할 수 있으므로 rpi-update를 실행할 필요가 없습니다"라고 표시합니다. raspberrypi.org/forums/viewtopic.php?p=916911#p916911
Milliways

무엇을 vcgencmd get_mem arm && vcgencmd get_mem gpu보여줍니까?
Milliways

답변:


14

의 출력 vcgencmd get_mem arm && vcgencmd get_mem gpu

arm=880M
gpu=128M

이것은 GPU가 128M을 사용하고 있음을 의미합니다.

raspi-config Advanced OptionsGPU를 직접 축소하지는 않았지만 에서 확인 / 변경 할 수 있습니다 . 나는 메모리에서 가고 있지만 이것이 카메라와 관련된 기본값이라고 생각합니다. 적어도 당신은 지금 당신의 기억이 어디에 있는지 알고 있습니다.


예, 카메라에 관한 것입니다.
vaha

880M 및 128M은 최대 1008M입니다. 다른 16M은 어디에 있습니까?
v7d8dpo4

@ v7d8dpo4 질문에서 :memory size for GPU is 16MB
David Starkey

10

우선, 나는 2 개의 간단한 명령을 확인하도록 제안하기 위해 @Milliways에 최선을 다합니다.

vcgencmd get_mem arm && vcgencmd get_mem gpu

누락 된 128MB 메모리는 어디에 있습니까?

모두하더라도 raspi-config/boot/config.txtGPU에 사용할 수있는 메모리의 양이 16메가바이트는 말한다, 실제 값은 CPU에 대한 880메가바이트, GPU에 대한 128메가바이트 있습니다.

root@mypi:~# vcgencmd get_mem arm && vcgencmd get_mem gpu
arm=880M
gpu=128M

따라서 누락 (실제로 누락되지 않음) 128MB 메모리는 GPU 용으로 예약되어 있습니다.

이 상황의 원인은 무엇입니까?

/boot/config.txt라인을 포함 하더라도 gpu_mem=16카메라 모듈을 활성화하는 또 다른 라인이 있습니다.

root@mypi:~# cat /boot/config.txt | grep -i start_x
start_x=1

따라서 카메라 모듈을 활성화 하면 여기에 암시 적으로 내포 된 GPU의 128MB 메모리 예약이 발생 합니다 .

요컨대, 그것은 start_x=1overrides 라고 말할 수 있습니다 gpu_mem=16.

로 카메라 모듈을 비활성화 한 후 start_x=0메모리 값은 다음과 같습니다.

root@mypi:~# vcgencmd get_mem arm && vcgencmd get_mem gpu
arm=992M
gpu=16M

3
예, 카메라는 기본적으로 128Mb 예약입니다. 그것은 할 수 있지만 더 제한된 기능 (적은 메모리, 당신이 등을 처리하고 할 수있는 낮은 해상도)와 (나는 모든 방법 32MB의 아래, 올바르게 기억) 낮은 분할과 함께 작동합니다. 스플릿이 너무 작 으면 (16Mb와 같이) 기본값은 128입니다.
Dave Jones

-1

rpi-update 옵션 외에도보고 된 메모리가 적은 다른 이유가있을 수 있습니다. 이번에는 커널 공간 / 사용자 공간 메모리 분할과 관련이 있습니다. 포스트는 커널 빌드 구성을 조정하고 소스 코드에서이를 재구성하는 수정 사항을 자세히 설명합니다. 한 명의 사용자가 성공을보고했습니다

작성자 : tesla01»2015 년 2 월 5 일 목요일 오후 8:04 안녕하세요, 맞춤 커널을 사용할 때 2G / 2G 옵션이 작동 함을 확인합니다

2 월 5 일 19:17:12 라스베리 피 커널 : [0.000000] 메모리 : 940776K / 966656K 사용 가능 (5785K 커널 코드, 377K rwdata, 1760K rodata, 396K init, 771K bss, 25880K 예약)

감사 :)

당신은해야합니다 확인 (의 값을 확인하여이 실제로 원인 CONFIG_VMSPLIT중 하나입니다 CONFIG_VMSPLIT=3G또는 CONFIG_VMSPLIT=2G과 같이 링크 된 보고서의 성공에 더 아래 일부 게시물로)

birdman 작성»2015 년 2 월 12 일 목요일 오후 10:01이 ​​순간에 libraspberrypi- * 및 raspberrypi-bootloader가 업데이트되었습니다. 커널 3.18.7-v7 +. 메모리가 "KiB Mem : 998096"으로 상단에보고 됨

감사!!

다른 사람들은 같은 결과를 얻지 못했지만

불행히도 나는 이러한 주장을 확인하기 위해 PI 근처에 있지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.