Raspberry Pi 3 có bộ nhớ dưới 1GB khả dụng ở cấp hệ điều hành


13

Tôi không biết đó có phải là vấn đề quan trọng hay không. Nhưng, tôi cần phải thoát khỏi những dấu hỏi trong đầu.

Gần đây tôi đã mua một bảng Raspberry Pi 3 và trong khi tôi đang chơi với nó, tôi nhận ra rằng meminfo cho thấy kích thước bộ nhớ vật lý ít hơn nhiều (~ 880MB) so với 1GB (được chỉ định trên trang web chính thức ).

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

Dung lượng bộ nhớ khả dụng cho GPU là 16MB (là giới hạn tối thiểu được phép) được kiểm tra hai lần trên mục menu raspi-config có liên quan.

raspi-config -> Advanced Options -> Memory Split

Cấu hình khởi động cũng cho biết gpu_mem là 16MB .

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

Để thu hẹp không gian vấn đề, đây là thông tin hệ thống. Nhân tiện, hệ thống được cập nhật.

Phát hành hệ điều hành:

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

Phiên bản hạt nhân:

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

Cấu hình hạt nhân vmsplit:

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

Vì vậy, tôi có 2 câu hỏi:

  • Bộ nhớ 128 MB bị thiếu ở đâu?
  • Điều gì gây ra tình trạng này?

HĐH bạn đang sử dụng là gì - raspbian / arch / other? cat /etc/os-releasenên nói rằng phiên bản kernel là gì? uname -anên cho rằng điều này sẽ giúp thu hẹp các nguyên nhân có thể xảy ra. rpi-update có thực sự hoạt động hay đưa ra bất kỳ cảnh báo nào không?
Shreyas Murali

Thông tin chi tiết được thêm vào văn bản câu hỏi.
vaha

Đây có thể là vấn đề tương tự như joan đề xuất trong chủ đề khác. Kiểm tra với zcat /proc/config.gz|grep CONFIG_VMSPLIT . Chỉ có giải pháp với rpi-update không hoạt động vì chưa có kernel mới hơn cho Pi3. Nhưng bạn có thể tự biên dịch lại kernel của mình với bộ nhớ 2GB / 2GB.
Janka

1
Điều này là hoàn toàn bình thường, Pi3 của tôi cho thấy MemTotal: 882776 kB MemFree: 126868 kB MemAvailable: 689576 kB"Trong trường hợp bình thường KHÔNG BAO GIỜ cần phải chạy rpi-update vì nó luôn đưa bạn đến firmware và kernel cạnh hàng đầu và vì đó có thể là phiên bản thử nghiệm nên nó có thể khiến RPi của bạn không thể khởi động được". raspberrypi.org/forums/viewtopic.php?p=916911#p916911
Milliways

Không vcgencmd get_mem arm && vcgencmd get_mem gputhể hiện điều gì?
Milliways

Câu trả lời:


14

Nếu đầu ra vcgencmd get_mem arm && vcgencmd get_mem gpu

arm=880M
gpu=128M

Điều này có nghĩa là GPU đang sử dụng 128M.

Điều này có thể được xác minh / thay đổi raspi-config Advanced Options, mặc dù tôi đã không tự giảm GPU. Tôi đang đi từ bộ nhớ, nhưng tôi nghĩ đây là mặc định, có thể liên quan đến Camera. Ít nhất bây giờ bạn biết bộ nhớ của bạn ở đâu.


Vâng, đó là tất cả về máy ảnh.
vaha

880M và 128M thêm tới 1008M. 16M kia ở đâu?
v7d8dpo4

@ v7d8dpo4 Từ câu hỏi:memory size for GPU is 16MB
David Starkey

9

Trước hết, tôi gửi lời chào trân trọng nhất tới @Milliways vì đã đề nghị kiểm tra 2 lệnh đơn giản.

vcgencmd get_mem arm && vcgencmd get_mem gpu

Bộ nhớ 128 MB bị thiếu ở đâu?

Ngay cả khi cả hai raspi-config/boot/config.txtnói rằng dung lượng bộ nhớ có sẵn cho GPU là 16 MB, giá trị thực tế là 880 MB cho CPU, 128 MB cho GPU.

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

Vì vậy, thiếu (thực tế không thiếu) bộ nhớ 128 MB được dành riêng cho GPU .

Điều gì gây ra tình trạng này?

Thậm chí /boot/config.txtbao gồm cả dòng gpu_mem=16, có một dòng khác cho phép mô-đun máy ảnh.

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

Vì vậy, việc kích hoạt mô-đun máy ảnh dẫn đến việc đặt trước bộ nhớ 128 MB cho GPU, được ngụ ý ngầm ở đây .

Nói tóm lại, chúng ta có thể nói rằng start_x=1ghi đè gpu_mem=16.

Sau khi vô hiệu hóa mô-đun máy ảnh bằng start_x=0, đây là các giá trị bộ nhớ:

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

2
Yup, máy ảnh mặc định là đặt trước 128Mb. Nó có thể hoạt động với các phần tách thấp hơn (nếu tôi nhớ chính xác, giảm xuống còn 32Mb) nhưng với chức năng hạn chế hơn (bộ nhớ càng ít, độ phân giải bạn có thể xử lý càng thấp). Nếu phần tách quá nhỏ (16Mb là), nó sẽ chỉ mặc định là 128.
Dave Jones

-1

Ngoài tùy chọn cập nhật rpi, dường như còn có một lý do khác (có thể) tại sao bộ nhớ được báo cáo lại ít hơn. Lần này là để phân chia không gian nhân / bộ nhớ không gian người dùng. Bài đăng này nêu chi tiết cách khắc phục liên quan đến việc điều chỉnh cấu hình xây dựng kernel và xây dựng lại từ mã nguồn. Một người dùng đã báo cáo thành công

by tesla01 »Thu Feb 05, 2015 8:04 pm Xin chào, tôi xác nhận rằng tùy chọn 2G / 2G hoạt động khi sử dụng kernel tùy chỉnh

Ngày 5 tháng 2 19:17:12 hạt nhân raspberrypi: [0,000000] Bộ nhớ: 940776K / 966656K

Cảm ơn :)

Bạn sẽ cần phải xác minh này thực sự là nguyên nhân gây ra (bằng cách kiểm tra giá trị của CONFIG_VMSPLITlà một trong hai CONFIG_VMSPLIT=3Ghoặc CONFIG_VMSPLIT=2G) như một số bài viết tiếp tục xuống trong đó thành công báo cáo liên kết như vậy

bởi birdman »Ngày 12 tháng 2 năm 2015 10:01 chiều Chỉ trong phút này đã có bản cập nhật cho libraspberrypi- * và raspberrypi-bootloader. hạt nhân bây giờ 3.18.7-v7 +. bộ nhớ hiện được báo cáo hàng đầu là "KiB Mem: 998096"

Cảm ơn!!

trong khi một số người khác không có kết quả tương tự

Thật không may, tôi không ở gần PI của mình để xác minh bất kỳ khiếu nại nào trong số này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.