Làm thế nào và tại sao tôi nên chỉ định mtrr_gran_size / mtrr_chunk_size?


8

Hôm nay tôi nhận thấy /var/log/dmesgcó vài chục dòng thông tin về một thứ được gọi gran_size*BAD*gran_sizetheo sau là những gì dường như là một chỉ dẫn cho tôi:

[    0.000000] mtrr_cleanup: can not find optimal value
[    0.000000] please specify mtrr_gran_size/mtrr_chunk_size

Tôi có cần phải làm những gì nó nói? Tôi sẽ như thế nào

Câu trả lời:


5

MTRR là viết tắt của các thanh ghi phạm vi Loại bộ nhớ, là một cách mới để phân vùng và quản lý tài nguyên bộ nhớ trong hệ thống của bạn. Tính năng này đã được đặt trong bộ xử lý do kích thước bộ nhớ ngày càng lớn hơn. Phải có một cách để bộ nhớ có thể được phân bổ và sử dụng hiệu quả hơn.

Một tính năng chính của MTRR là ánh xạ vị trí của các thành phần PCI hoặc AGP trong hệ thống của bạn để phần mềm, trình điều khiển có thể truy cập chúng nhanh chóng và hiệu quả.

(từ Gentoo Wiki )

Sau khi đọc Giải quyết các vấn đề MTRR của linux, có vẻ như lỗi bạn thấy được báo cáo khi mtrr sanitizer không thể chọn từ một số tùy chọn bố trí bộ nhớ. Nó sẽ in một danh sách các tùy chọn có thể bên cạnh thông báo lỗi. Để làm cho tin nhắn biến mất, bạn cần chỉ định một cái gì đó như

enable_mtrr_cleanup mtrr_spare_reg_nr=1 mtrr_gran_size=32M mtrr_chunk_size=128M

trong các tham số khởi động kernal (trong đó các giá trị thực tế đến từ một trong các tùy chọn được đề xuất bởi chất khử trùng).

Tác giả của bài báo tuyên bố rằng

Bây giờ 24MiB ram đã biến mất, nhưng khối lượng công việc 3d của tôi, về cơ bản là nội dung webgl và trình mô phỏng chuyến bay ẩn bên trong google earth, chạy cả hai ở tốc độ khung hình tốt hơn đáng kể.

Điều này làm cho tôi rất quan tâm ... cần phải kiểm tra dmesgtrên tất cả các máy của tôi.


0

Theo [Kiến thức của Redhat] [1] cho RHEL6, được cập nhật vào tháng 1 năm 2017, "vui lòng chỉ định mtrr_gran_size / mtrr_chunk_size" có nghĩa là:

  • Những tin nhắn này không phải là một vấn đề và chỉ đơn giản là cảnh báo. Họ có thể bỏ qua.
  • Thêm vô hiệu hóa_mtrr_cleanup vô hiệu hóa_mtrr_trim vào các tham số kernel trong /boot/grub/grub.conf sẽ vô hiệu hóa đường dẫn mã khởi tạo các lỗi này và có thể ngăn chúng xuất hiện trên hệ thống.

Tất nhiên tôi biết rằng Redhat không phải là Ubuntu, nhưng nhìn chung họ chạy cùng một kernel nên tôi rất ngạc nhiên nếu nó không giống với Ubuntu. Câu trả lời này được đưa ra như một "ý kiến ​​thứ hai".

[1]: https://access.redhat.com/solutions/2852191 - (yêu cầu đăng ký)

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.