VRAM tích hợp có được bao gồm trong `kernel_task` RAM trong Activity Monitor không?


11

Tôi đã choáng váng khi phát hiện ra rằng hạt nhân Mac OS X có thể tiêu thụ 750 MB RAM. Một vài câu hỏi liên quan:

làm rõ vấn đề một chút, nhưng vẫn còn một câu hỏi: tuyên bố rằng bộ nhớ video cho đồ họa tích hợp trên bo mạch cũng được đánh dấu là sử dụng bởi kernel .

Có thật không? VRAM có được bao gồm trong số được hiển thị bởi Activity Monitor kernel_taskkhông?


Lưu ý, ảnh chụp màn hình của tôi hiển thị 750 MB ram cho Kernel là MacBook Pro, Retina, 13 inch, đầu năm 2013 với "Intel HD Graphics 4000 1024 MB" là GPU duy nhất và CPU là Intel Core i5 2,6 GHz . Tôi sẽ cố gắng chạy sysdiagnosevà xem liệu tôi có thể phá vỡ câu hỏi cốt lõi của bạn không.
bmike

@bmike: Vì vậy, vì bạn có 1GB VRAM và kernel_tasksử dụng "chỉ" 750 MB , chúng tôi chỉ xác định rằng tất cả 750 MB đến từ RAM thông thường, không phải VRAM. Đúng?
sds

Tôi có 1,8GB được lấy bởi kernel, điều này có tệ không?
Render

Câu trả lời:


3

Phiên bản Mac OS X nào bạn đang chạy?

Các kernel_tasktrong Mac OS X 10.9 Mavericks mất 1,07 GB RAM trên của tôi 2012 MacBook Pro (không Retina) với đồ họa và 16GB RAM hệ thống tích hợp Intel HD4000. Vâng, điều này là hoàn toàn cần thiết. Nếu bạn có nhiều RAM vật lý hơn, thì Mac OS X sẽ sử dụng rất nhiều kernel_taskđể làm cho hệ thống chạy tối ưu.

Với mỗi phiên bản Mac OS X mới trong những năm qua, kernel_taskngày càng mất nhiều bộ nhớ hơn để chạy Mac OS X.

Theo kinh nghiệm của tôi, nếu bạn đang chạy Mac OS X 10.8 Mountain Lion, máy Mac của bạn cần có hơn 4GB RAM hệ thống để chạy tối ưu (không cần hệ điều hành phải sử dụng hoán đổi liên tục trên đĩa cứng, làm giảm tốc độ hiệu suất). Bây giờ có vẻ như máy Mac của bạn cần nhiều hơn 6GB RAM để chạy Mac OS X 10.9 Mavericks một cách hiệu quả.

Dung lượng RAM cần thiết cho Microsoft Windows 8.0 và 8.1 là tương đương nhau. Đây chỉ đơn giản là những gì cần thiết cho các hệ điều hành máy tính cá nhân mới nhất năm 2013.

Xin lưu ý rằng nhiều chức năng hệ thống chạy bên dưới kernel_taskvà danh sách những gì đang chạy trên máy Mac của bạn thay đổi dựa trên những gì bạn đang sử dụng máy Mac của mình.

Tôi đã tìm thấy một lời giải thích tốt cho bạn, trong phần " Kernel_task chiếm RAM trong OS X " từ CNet năm 2011. Một trích dẫn:

... bạn sẽ thấy một quá trình khác gọi là "kernel_task" cũng sẽ thường xuyên sử dụng vài trăm megabyte RAM thực và dường như tăng dung lượng RAM của nó với việc sử dụng hệ thống.

Hạt nhân trong OS X là kiến ​​trúc phần mềm chịu trách nhiệm xử lý các tài nguyên mà các quy trình và chương trình cần. Chúng bao gồm quản lý lập lịch đa nhiệm, bộ nhớ ảo, đầu vào và đầu ra hệ thống và các thói quen giao tiếp khác nhau giữa các quy trình. Ngoài ra, kernel có thể được sửa đổi và cung cấp chức năng nâng cao bằng cách tải các phần mở rộng kernel (kexts) để cung cấp quản lý các tính năng ở cấp hệ thống như Bluetooth và Wi-Fi, bộ xử lý đồ họa, phần cứng của bên thứ ba, truy cập vào thiết bị ngoại vi và hệ thống tệp đặc biệt ủng hộ. Về bản chất, kernel chịu trách nhiệm chạy phần cứng của bạn và cung cấp tài nguyên phần cứng cho các ứng dụng và dịch vụ hệ thống.

... Quá trình "kernel_task" có thể chiếm một lượng lớn bộ nhớ hệ thống. Khi hệ thống khởi động, mặc dù bạn có thể tải phần mở rộng kernel, nhưng không phải tất cả các dịch vụ đều hoạt động. Hệ thống có thể sẵn sàng sử dụng chúng, nhưng sẽ không tải chúng đầy đủ cho đến khi cần. Do đó, nếu ban đầu bạn khởi động hệ thống của mình và kiểm tra Activity Monitor, bạn có thể thấy quá trình kernel_task chiếm một lượng RAM tương đối nhỏ. Sau đó, khi bạn bắt đầu sử dụng hệ thống của mình và kích hoạt các tính năng như máy ảnh iSight, dịch vụ Wi-Fi, chuyển đổi GPU và sử dụng các thiết bị bên ngoài, thì kernel_task sẽ sử dụng tài nguyên cho các thiết bị này và sẽ tăng kích thước.


2
Làm thế nào để trả lời câu hỏi thực tế tôi đã hỏi về VRAM?
sds

Tôi tin rằng từ ngữ ban đầu của câu hỏi của bạn, khi tôi đọc nó, là "Những gì được bao gồm trong kernel_task?" và đó là những gì tôi đã cố gắng trả lời. Kể từ thời điểm đó, bạn đã đặt lại tiêu đề của câu hỏi.

2
Tôi xin lỗi câu hỏi của tôi đã gây nhầm lẫn. Tôi biết kernel là gì và làm gì, câu hỏi của tôi là về báo cáo sử dụng bộ nhớ.
sds

2

Tôi đoán, nó được bao gồm. Tôi có MBP 13 "2015 với Iris và kernel_task cũng chiếm rất nhiều bộ nhớ, tôi đang điều tra tình huống và tôi đã phát hiện ra một zprintlệnh tuyệt vời . Nó in sử dụng vùng nhớ kernel, tôi thấy 2 mục nhập chiếm phần lớn ký ức cho tôi:

  • com.apple.iokit.IOAcceleratorF Family2 - 758044K
  • vm.pages.array - 221204K

Đáng buồn thay, tôi đã không tìm thấy thông tin đáng tin cậy trên IOAcceleratorF Family2 (và không tìm thấy bất kỳ thông tin nào trên vm.pages.array), nhưng cái tên cho thấy nó phải làm gì đó với I / O và tăng tốc. Từ thông tin đó tôi đoán, đó là một phần của bộ nhớ, chịu trách nhiệm tăng tốc video và dành riêng cho nhu cầu xử lý hình ảnh của Iris.

Tôi đã thực hiện một thử nghiệm nhỏ, bắt đầu quay video màn hình và hai video youtube 4K song song: com.apple.iokit.IOAcceleratorF Family2 tăng lên 1.1G trong vài giây và sau khi tôi dừng ghi và video, nó đã giảm xuống còn 630M . Vì vậy, tôi nghĩ rằng, rất có khả năng, nó chịu trách nhiệm về VRAM.


Vì vậy, không có cách nào để giảm RAM gần hết gigabyte? Chipset video có nên có bộ nhớ chuyên dụng không? Lấy tối thiểu
800 MB
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.