Чи включена інтегрована VRAM включена в оперативну пам'ять `kernel_task` в Моніторі діяльності?


11

Я був приголомшений тим, що ядро ​​Mac OS X може споживати 750 Мб оперативної пам’яті. Кілька пов'язаних питань:

Трохи уточнив цю проблему, але залишається одне питання: твердження про те, що відеопам'ять для вбудованої графіки позначена як використовувана ядром .

Це справді правда? Чи входить VRAM в число, яке відображається у "Моніторі діяльності" kernel_task?


Як зауваження, на моєму екрані, що демонстрував 750 Мб оперативної пам’яті для ядра, був MacBook Pro, Retina, 13-дюймовий, на початку 2013 року, з «Intel HD Graphics 4000 1024 МБ» як єдиний GPU, а процесор - 2,6 ГГц Intel Core i5 . Я спробую бігти sysdiagnoseі побачити, чи зможу я зламати ваше основне питання.
bmike

@bmike: Отже, оскільки у вас є 1 ГБ VRAM і kernel_taskвикористовується "лише" 750 Мб, ми щойно встановили, що всі 750 МБ надходять із звичайної ОЗУ, а не з VRAM. Правильно?
sds

У мене 1,8 Гб, взяте ядром, це погано?
Візуалізація

Відповіді:


3

Яку версію Mac OS X ви працюєте?

У kernel_taskMac OS X 10.9 Mavericks займає 1,07 ГБ оперативної пам’яті на моєму MacBook Pro 2012 року (не-Retina) з інтегрованою графікою Intel HD4000 та 16 Гб оперативної пам’яті системи. Так, це цілком необхідно. Якщо у вас більше фізичної оперативної пам’яті, Mac OS X буде використовувати багато для kernel_taskтого, щоб система працювала оптимально.

З кожною новою версією Mac OS X протягом багатьох років у kernel_taskмене забирається все більше пам’яті для запуску Mac OS X.

На мій досвід, якщо ви використовуєте Mac OS X 10.8 Mountain Lion, ваш Mac повинен мати більше 4 Гб оперативної пам’яті для оптимальної роботи (без операційної системи потрібно постійно використовувати swapfile на жорсткому диску, що знижує швидкість роботи). Тепер з'ясовується, що вашому Mac потрібно більше 6 Гб оперативної пам’яті, щоб ефективно запустити Mac OS X 10.9 Mavericks.

Обсяг оперативної пам’яті, необхідний для Microsoft Windows 8.0 та 8.1, порівнянний. Це просто те, що потрібно для новітніх операційних систем персонального комп’ютера у 2013 році.

Зверніть увагу, що в системі працює багато системних функцій kernel_task, і список того, що працює на вашому Mac, змінюється залежно від того, для чого ви використовуєте свій Mac.

Я знайшов хороше пояснення для вас у " Kernel_task, що займає оперативну пам'ять в ОС X " від CNet в 2011 році. Цитата:

... ви побачите інший процес під назвою "kernel_task", який також буде регулярно використовувати кілька сотень мегабайт реальної оперативної пам'яті і, схоже, збільшувати слід оперативної пам'яті при використанні системи.

Ядро в OS X - це архітектура програмного забезпечення, яка відповідає за обробку ресурсів, необхідних процесам і програмам. Сюди входить управління багатозадачним плануванням, віртуальною пам'яттю, введенням і виведенням системи та різними процедурами зв'язку між процесами. Крім того, ядро ​​можна модифікувати та надати йому розширену функціональність, завантажуючи розширення ядра (кекс), щоб забезпечити управління на рівні системи такими функціями, як Bluetooth та Wi-Fi, графічні процесори, стороннє обладнання, доступ до периферійних пристроїв та спеціальної файлової системи підтримка. По суті, ядро ​​відповідає за запуск вашого обладнання та надання апаратних ресурсів для програм та системних служб.

... процес "kernel_task" може займати велику кількість системної пам'яті. Коли система запускається, навіть якщо у вас можуть бути розширення ядра, не всі сервіси активні. Система може бути готовою до їх використання, але не завантажує їх повністю до необхідності. Тому, якщо ви спочатку запустили систему та перевірили Монітор активності, ви можете побачити процес kernel_task, що займає відносно невеликий об'єм оперативної пам’яті. Коли ви почнете використовувати свою систему та активувати такі функції, як камера iSight, послуги Wi-Fi, комутація графічних процесорів та використання зовнішніх пристроїв, то kernel_task скористається ресурсами для цих пристроїв і зросте в розмірах.


2
як це відповідає на власне питання, яке я задав про VRAM?
sds

Я вважаю, що початкове формулювання вашого запитання, коли я його читав, було "Що включено під kernel_task?" і саме на це я намагався відповісти. З цього часу ви переформулювали назву питання.

2
Мені шкода, що моє питання було заплутаним. Я знаю, що таке ядро ​​і робить, моє запитання стосувалося звітування про використання пам'яті.
sds

2

Я здогадуюсь, він включений. У мене є MBP 13 "2015 з Iris, і kernel_task, який також займає багато пам'яті, я досліджував ситуацію, і я виявив чудову zprintкоманду. Він друкує використання зон пам'яті ядра, я бачу, що 2 записи займають більшість пам'ять для мене:

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

На жаль, мені не вдалося знайти достовірну інформацію про IOAcceleratorFamily2 (і не вдалося знайти жодної інформації на vm.pages.array), але назва підказує, що вона повинна щось робити з вводу / виводу та прискорення. З цієї інформації я думаю, що це частина пам'яті, яка відповідає за прискорення відео і присвячена потребам обробки зображень Iris.

Я зробив невеликий тест, запустивши паралельний запис на екрані та два відео з 4K youtube паралельно: com.apple.iokit.IOAcceleratorFamily2 за лічені секунди піднявся до 1,1G, і після того, як я припинив запис та відео, він впав до 630M . Таким чином, я думаю, дуже ймовірно, що він відповідає за VRAM.


Тож немає можливості зменшити цей майже гігабайт оперативної пам’яті? Чи не повинен набір відеочипів мати виділену пам’ять? Взяти мінімум 800 Мб з ОЗУ - це злочин :(
Kamafeather
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.