
Если у вас всё ещё живёт MacBook Pro 2016–2020 годов на процессоре Intel, вам наверняка знакома эта картина: вы открываете обычный фильм или ролик на YouTube в Google Chrome, проходит ровно две минуты — и ноутбук превращается в раскалённую сковороду. Температура процессора пробивает 95–99 °C, кулеры выходят на взлётные 7200 RPM, в «Мониторинге системы» просыпается беспощадный kernel_task, съедающий процессор ради спасения чипа от перегрева, видео начинает идти рывками, а батарея тает за час.
В этой статье я расскажу, как обычный вопрос «почему мой ноутбук кипит от одного фильма в браузере?» превратился в многомесячное инженерное расследование. Мы пройдём весь путь:
Ревизия скрытых демонов macOS: как сбой локатора (
searchpartyuseragent) иcontactsdкрутил процессор каждые 30 миллисекунд и почему обычная перезагрузка macOS это не лечит.Аппаратная профилактика и физика старого аккумулятора: что дала чистка, замена термопасты и почему батарея на 1000+ циклов сама становится печкой.
Рождение TurboControl: почему готовые утилиты вроде Turbo Boost Switcher и Macs Fan Control довели меня до белого каления всплывающими окнами паролей при каждом выходе из сна, и как мы написали своё нативное Menu Bar приложение на Swift + SwiftUI + C (прямая работа с регистрами
MSRи чипомAppleSMC).Детектив с Google Chrome (версии 151 vs 153): почему даже с выключенным Turbo Boost и заблокированными кодеками видеочип Intel Iris вдруг оказался загружен на 70%, как Google тихо занёс старые видеочипы Intel в чёрный список и почему флаг
Skia Graphite, спасавший в Chrome 151, в Chrome 153 вдруг начал отключать видеокарту и раскалять проц до 99 °C.
В конце каждого раздела я собрал конкретные шпаргалки с командами и флагами браузера, которые можно применить прямо сейчас, а само приложение выложил в Open Source (MIT) и Homebrew.
Акт 1. «Ноутбук кипит от одного фильма»: миф про Safari, зацикленный Локатор и кодеки
Дано: MacBook Pro 13" 2017 года (двухъядерный Intel Core i5-7360U Kaby Lake с базовой частотой 2.3 ГГц и разгоном Turbo Boost до 3.6 ГГц, встроенная графика Intel Iris Plus Graphics 640, 8 ГБ ОЗУ).
Симптом простой и мучительный: запускаешь один фильм в Chrome — ноутбук раскаляется так, что невозможно держать на коленях, а вентилятор воет как пылесос.
Первая мысль любого маковода из советов в интернете: «У тебя всего 8 ГБ оперативки, Chrome всё сожрал и ушёл в своп, переходи на Safari!». Открываю «Мониторинг системы» и проверяю память. Нагрузка на память — зелёная (занято 5.74 ГБ из 8 ГБ, своп минимальный). А вот попытка открыть всего пару современных тяжёлых вкладок в Safari даже без фильма привела к тому, что процессы com.apple.WebKit.WebContent из‑за агрессивного кэширования страниц съели оперативку куда быстрее Chrome.
Память ни при чём — чип греют вычисления. Переключаемся на вкладку ЦП в «Мониторинг системы» и видим прекрасную картину:

Помимо Google Chrome и WindowServer, в топе висят два подозрительных процесса:
kernel_task(21.3%) — это уже следствие, а не причина. Когда датчики температуры приближаются к критическим значениям, ядро macOS искусственно захватывает потоки процессора «пустыми» циклами ожидания, чтобы физически не дать другим программам греть кремний дальше.contactsd(18.7%) иsiriknowledged(10.4%) — а вот это уже чистый паразит, который вхолостую сжигал почти треть двухъядерного процессора даже без всякого видео!
Расследование бага contactsd + searchpartyuseragent
Попытка просто убить contactsd через крестик в «Мониторинге системы» или выключить синхронизацию контактов в настройках iCloud не дала ничего — демон launchd воскрешал процесс через секунду, и он снова уходил в потолок. Более того, я несколько раз перезагружал ноутбук, но кулеры не успокаивались.
Лезем в системные логи macOS и находим корень зла. Виновником оказался вовсе не список контактов, а фоновый демон службы «Локатор» (searchpartyuseragent):
Каждые 30 миллисекунд он запускал процедуру
reevaluateFamilySharingи фоновое сканирование сети Локатора (Find My Network).Когда поблизости (даже у соседей за стеной) оказывался любой чужой AirTag или устройство Apple, служба пыталась сопоставить его ключ с моей адресной книгой через
contactsd.В локальном демоне учётных записей (
ACDAccountStore) произошёл сбой токена ("The connection to ACDAccountStore was invalidated"). Вместо того чтобы подождать,searchpartyuseragentушёл в бесконечный цикл рестартов, бомбардируяcontactsdсотнями запросов авторизацииtcc_send_request_authorizationв секунду!
Почему не помогала обычная перезагрузка? При штатном ребуте macOS бережно сохраняет состояние фоновых демонов и кэш сокетов межпроцессного взаимодействия (IPC) на диск, а после старта поднимает ту же самую зацикленную сессию.
Разорвать этот круг удалось только жёстким одновременным пристрелом всей тройки демонов, что заставило систему пересоздать IPC‑сокеты с нуля:
killall -9 searchpartyuseragent contactsd accountsd
И чтобы этот баг больше никогда не высаживал батарею в фоне, в Системные настройки → Конфиденциальность и безопасность → Службы геолокации → Системные службы (Детали…) мы отключили бесполезные для ноутбука тумблеры «Важные геопозиции» и «Аналитика Mac», а внизу включили показ иконки геолокации в строке меню, чтобы сразу видеть, если какой‑то демон снова сойдёт с ума.
Кодеки видео: почему Kaby Lake задыхается на современном вебе
Вторая проблема из первого скриншота — сам видеопоток. YouTube и современные онлайн‑кинотеатры по умолчанию отдают видео в кодеках AV1 и VP9. Но у процессоров Intel 7-го поколения (Kaby Lake, 2017 год) вообще нет аппаратного декодера AV1, а аппаратная поддержка VP9 сильно ограничена. В результате браузер перекладывает декодирование видеопотока на центральный процессор (CPU).
Решение здесь классическое, но с важным нюансом — ставим расширение enhanced‑h264ify и настраиваем его так:

Ставим галочки: Блокировать VP8, Блокировать VP9, Блокировать AV1.
Оставляем снятой галочку Блокировать h264 (AVC) — теперь плеер отдаёт поток в старом добром H.264, который аппаратно щёлкает блок Intel Quick Sync.
Важный лайфхак для Retina‑экранов: если поставить галочку «Блокировать 60 к/с видео», ролик пойдёт в стандартных 30 fps. Для обычного фильма или разговорного видео разницы нет, а вот нагрузка на отрисовку пикселей экрана
2560×1600падает ровно в 2 раза.
Смотрим в «Мониторинг системы» через минуту после убийства зацикленного Локатора и включения H.264:

Процессы contactsd и siriknowledged исчезли полностью, а нагрузка Google Chrome упала с 26.5% до 2.0%!
? Шпаргалка № 1: Первая помощь при фоновом нагреве macOS
Если в топе CPU висит
contactsdилиaccountsd, сбросьте цепочку IPC‑сокетов:killall -9 searchpartyuseragent contactsd accountsdПроверьте статус теплового троттлинга в терминале:
pmset -g therm(в норме должно бытьCPU_Speed_Limit = 100иNo thermal warning).Проверьте скрытых демонов автозагрузки (например, у меня в фоне постоянно висел демон
AnyDesk, которого не было видно в обычном списке «Объекты входа»). Отключается навсегда через:sudo launchctl disable system/com.philandro.anydesk.Frontend
Акт 2. Чистка, замена термопасты, «эффект 1014 циклов» и ловушка Intel Turbo Boost
Казалось бы — победа? Как бы не так. В тот же день я решил довести дело до идеала: разобрал MacBook, вычистил радиатор от пыли, заменил высохшую заводскую термопасту на свежую, собрал обратно и включил двухчасовой фильм.
Ноутбук всё равно ощутимо грелся снизу, а батарея продолжала таять!
Проводим глубокую аппаратную диагностику контроллера питания (ioreg -rn AppleSmartBattery) и находим сразу две физические причины:
Внутреннее сопротивление изношенного аккумулятора (
1014 циклов): На моём макбуке батарея прошла 1014 циклов (статусService Recommended, остаточная ёмкость ~68%). У пожилых литий‑полимерных ячеек сильно возрастает внутреннее химическое сопротивление. Когда ноутбук при просмотре фильма потребляет 15–20 Ватт, сама батарея при отдаче такого тока начинает ощутимо разогреваться изнутри, подогревая алюминиевое днище.Агрессивный алгоритм Intel Turbo Boost: Замеры через
powermetricsпоказали абсурдную вещь. Базовой частоты процессора Core i5 (2.3 ГГц) хватает с трёхкратным запасом, чтобы крутить любое видео без единого дропа кадров. Но при малейшем всплеске активности в браузере (подгрузка чанка видео, выполнение JS‑скрипта на странице) процессор мгновенно врубает Intel Turbo Boost и задирает частоту до 3.6 ГГц. Из‑за нелинейного роста напряжения энергопотребление чипа подскакивает с комфортных 10–12 Вт до 28–35 Вт, кристалл за секунды пробивает 85–90 °C, а следом за ним раскаляется и старая батарея!
Почему меня выбесил сторонний софт для отключения Turbo Boost
Чтобы запретить процессору бессмысленно уходить в разгон при просмотре кино, мне посоветовали классическую утилиту Turbo Boost Switcher. Я поставил её бесплатную версию, отключил Turbo Boost — и действительно, процессор перестал прыгать выше 2.3 ГГц. Но радость длилась ровно до первого закрытия крышки ноутбука.
Каждый раз, когда MacBook выходил из сна, посреди экрана выскакивало вот это окно:

Почему это происходит? Когда Mac засыпает и просыпается, macOS сбрасывает модельно‑специфичные регистры процессора (MSR) к заводским настройкам (снова включая Turbo Boost). Чтобы вернуть бит отключения в регистр ядра, нужны права root. В бесплатной версии Turbo Boost Switcher автор намеренно не стал делать привилегированного фонового демона, превратив отсутствие этого назойливого окна в главную платную фичу Pro‑версии.
Я сначала спросил ИИ‑ассистента: «А можешь просто исправить код этого приложения, чтобы оно не спрашивало пароль?». Но бинарник закрыт и подписан цифровой подписью Apple (Code Signature) — любое вмешательство в машинный код сломает подпись, и Gatekeeper просто не даст его запустить.
К тому же, когда мы заглянули в GitHub‑репозиторий rugarciap/Turbo-Boost-Switcher и соседние проекты, выяснилось, что проблема куда шире:
В Issue #182 пользователи с 2022 года просят возможность переключать Turbo Boost через скрипты и CLI — решения нет.
В Issue #126 и Issue #169 люди жалуются на троттлинг и просят совместить управление Turbo Boost с ранним включением вентиляторов — тоже тишина.
В популярном мониторе exelban/stats (Issue #645) автор прямо отказался добавлять тумблер Turbo Boost.
А держать одновременно запущенными Turbo Boost Switcher (который клянчит пароль) и Macs Fan Control (который умеет крутить кулеры, но не умеет выключать Turbo Boost) — сомнительное удовольствие.
Тогда я сказал: «Нам нужно своё приложение. Замер температур и нагрузки не только проца, но и видеочипа, управление оборотами винта, переключение Turbo Boost в один клик без единого пароля, автозапуск и красивый нативный интерфейс в верхней панели. Делай!»
Акт 3. Пишем свой TurboControl на Swift, C и IOKit
Мы решили не тащить в проект ни Electron, ни даже громоздкий .xcodeproj — всё приложение собирается за 3 секунды прямым скриптом build_app.sh через clang и swiftc, весит в оперативной памяти около 15 МБ и потребляет 0.1% CPU.
Вот из каких технических кирпичиков сложилась архитектура TurboControl.
1. Укрощение регистра MSR_IA32_MISC_ENABLE и беспарольный хелпер
На процессорах Intel технология Turbo Boost управляется на аппаратном уровне через модельно‑специфичный регистр MSR_IA32_MISC_ENABLE (адрес 0x1A0 / 0x1FC), а именно — 38-м битом:
Если бит
38равен0— Turbo Boost включён.Если записать в бит
38единицу (1) — процессор жёстко фиксируется на базовой частоте (для моего i5-7360U это2.3 ГГц) и никогда не превышает базовый теплопакет TDP.
В пользовательском пространстве (ring 3) выполнить инструкции ассемблера rdmsr / wrmsr нельзя — это привилегия ядра (ring 0). Поэтому мы использовали крошечное безвредное расширение ядра DisableTurboBoost.kext и написали вокруг него привилегированный диспетчер /usr/local/bin/turbocontrol-helper.
Чтобы навсегда избавиться от ввода пароля при переключении режимов, выходе из сна или перезагрузке, установочный скрипт один раз при инсталляции прописывает строго ограниченное правило в /etc/sudoers.d/turbocontrol:
%admin ALL=(ALL) NOPASSWD: /usr/local/bin/turbocontrol-helper
В результате Swift‑приложение переключает состояние процессора мгновенно вызовом sudo -n /usr/local/bin/turbocontrol-helper disable | enable, а сам хелпер можно дёргать из любых собственных bash‑скриптов или Быстрых команд macOS.
2. Почему заводская логика кулеров Apple вредит старым Intel Mac (и как мы написали драйвер AppleSMC)
Когда мы вывели на экран реальные датчики из чипа AppleSMC (температуру процессора TC0P/TC0E, температуру видеочипа Intel Iris TCGC и текущие обороты кулера F0Ac), вскрылась поразительная деталь заводской настройки Apple:
Процессор уже раскалился до 89 °C, видеочип — 75 °C, а вентилятор крутится всего на 1990 RPM (28% мощности)!
Инженеры Apple настроили кривую охлаждения в угоду абсолютной тишине: система упорно держит минимальные обороты (1200–1900 RPM) вплоть до 85–90 °C. К тому моменту, когда прошивка наконец решает раскрутить турбину, тепловая трубка и весь алюминиевый корпус уже находятся в состоянии глубокого теплового насыщения. Охладить раскалённый брусок алюминия на 2000 RPM невозможно, поэтому через минуту кулер в панике взлетает на максимальные 7200 RPM.
При этом на оборотах 2500–3400 RPM вентилятор MacBook Pro работает практически бесшумно (лёгкий шелест воздуха), но если включить эти обороты превентивно при 55 °C, тепло сдувается с радиатора сразу и корпус вообще не успевает нагреться выше 65–72 °C!
Для прямого управления кулером мы написали на чистом C утилиту smc_fan_writer.c, которая общается с контроллером AppleSMC через IOKit:
Переводит битовую маску режима вентилятора в ключе
FS!(типui16, 2 байта): запись0x00 0x01переводит кулер № 0 в ручное управление, а0x00 0x00возвращает контроль заводскому автомату Apple.Записывает целевые обороты в ключ
F0Tgв специфичном для Apple 14-битном формате с фиксированной точкойfpe2(Unsigned Fixed Point 14.2), где значение RPM сдвигается на 2 бита влево (RPM << 2) и упаковывается в Big‑Endian:
// Запись целевых оборотов в AppleSMC (формат fpe2: RPM * 4 в Big-Endian) int raw = rpm << 2; uint8_t fpe2[2] = { (uint8_t)((raw >> 8) & 0xFF), (uint8_t)(raw & 0xFF) }; smc_write_key(conn, "F0Tg", 'fpe2', fpe2, 2);
На базе этого драйвера в TurboControl появились 4 режима работы кулера:
Умный (Ранний) — наша кастомная кривая: тишина (
1200 RPM) до 50 °C, мягкий старт1800–3400 RPMв зоне50–65 °C, активное удержание3400–4900 RPMв зоне65–75 °C.Авто (Apple) — штатный заводской профиль macOS.
Макс (
7200 RPM) — продувка в 1 клик, чтобы за минуту остудить ноутбук.Ручной — плавный слайдер от
1200до7200 RPMс дебаунсом в 150 мс.
А чтобы при закрытии приложения кулер случайно не остался зафиксированным на ручных оборотах, в applicationWillTerminate срабатывает автоматический возврат в Авто (Apple).
3. Подводные камни UI на macOS: прыгающие шкалы и ловушка Fullscreen
По ходу ежедневного использования приложения мы наткнулись на три неочевидных бага macOS/SwiftUI, решение которых пригодится любому macOS‑разработчику:
Честное сохранение выбора пользователя (
UserDefaults): В первой версии приложения мы сделали ошибку: при каждом старте и выходе из сна программа принудительно выключала Turbo Boost. Когда мне однажды понадобился включённый Turbo Boost, после перезагрузки он снова сам выключился. Мы переписали логику: теперь приложение намертво запоминает вUserDefaultsименно ваш последний выбор (ВКЛЮЧЕН или ОТКЛЮЧЕН) и после сна восстанавливает строго его.Анимация полос прогресса («прилёты снизу»): Если в SwiftUI повесить модификатор
.animation(...)на контейнер сGeometryReaderили динамическим текстом разной ширины (49°C→50°C), при каждом тике таймера окноNSPopoverмикро‑дёргается по вертикали, а полоски визуально «выпрыгивают снизу». Мы жёстко зафиксировали высоту карточек (68 px), перевели цифры на моноширинный шрифт.monospacedи привязали анимацию исключительно к ширине заполняемой капсулы.Обрезание шапки окна в полноэкранном режиме (Fullscreen): Стандартный системный
NSPopoverжёстко привязывается к системному окну строки меню (NSStatusBarWindow). Когда вы смотрите фильм на весь экран, поднимаете мышь наверх, открываете приложение в трее и опускаете курсор ниже — macOS автоматически прячет верхнюю строку меню вверх за пределы экрана (y > screen.maxY) и утягивает за собой верхнюю частьNSPopoverвместе с кнопкой настроек! Решение: мы полностью отказались отNSPopoverи заменили его на собственную плавающую панельFloatingPanel: NSPanelс флагом.fullScreenAuxiliaryи жёстким расчётом экранных координат (maxTopY = screenFrame.maxY - 28.0). Теперь даже когда верхнее меню в полноэкранном фильме уезжает вверх, окноTurboControlостаётся целиком на экране.
Вот как выглядит интерфейс TurboControl в штатном режиме (Turbo Boost включён, кулер на профиле Apple Auto):

А вот — после переключения в холодный режим (Turbo Boost: ОТКЛЮЧЕН, кулер в режиме «Умный (Ранний)») и окно настроек приложения:

Акт 4. Поворот сюжета: «Почему с выключенным Turbo Boost он всё равно греется в Chrome?!»
Несколько дней я пользовался TurboControl и заметил странную вещь. Я открываю видео в Chrome, выключаю Turbo Boost, включаю его обратно — а температура всё равно ползёт к 85–89 °C! И тут наше приложение впервые показало то, чего не видно в обычном «Мониторинге системы» macOS (который показывает только загрузку CPU):
Загрузка CPU была всего 30%.
А вот загрузка встроенного видеочипа GPU (Intel Iris Plus 640) застыла на отметке 70%!
В процессорах Intel 13-дюймовых MacBook Pro центральный процессор и графическое ядро Intel Iris находятся на одном общем кремниевом кристалле под одной медной тепловой трубкой. Даже если зажать частоту ядер CPU на 2.3 ГГц, раскалённый от 70%‑ной нагрузки видеочип точно так же разогревает весь процессор до 89 °C!
Но почему видеочип загружен на 70%, если кодеки VP9/AV1 уже заблокированы через enhanced-h264ify? Мы полезли внутрь конфигурации Chrome и самого плеера YouTube.
Три скрытых пожирателя ресурсов в YouTube и Chrome
«Фоновая подсветка» (Ambient Mode) в плеере YouTube: Несколько лет назад YouTube незаметно включил по умолчанию эффект динамического размытого свечения вокруг границ видеоплеера. На современных чипах M1–M4 он незаметен, но на встроенной графике Intel 2017 года постоянный рендеринг размытия (Gaussian Blur) каждого кадра на Retina‑разрешении в реальном времени отъедает +30–40% мощности GPU впустую! Лечение: нажимаем на шестерёнку в правом нижнем углу плеера YouTube → выключаем тумблер «Фоновая подсветка» (Ambient Mode).
Блокировщик рекламы и переход Chrome на Manifest V3: Анализ папки расширений показал установленный старый
Adblock Plus, который активно дёргал CPU на динамических страницах. При этом классическийuBlock Originв свежем Chrome уже был отключён с плашкой «Это расширение больше не доступно, так как оно не соответствует рекомендациям» (из‑за отказа Google от Manifest V2). Лечение: удалили старый блокировщик и поставили официальный uBlock Origin Lite (uBO Lite). Он работает целиком через нативный движок браузераdeclarativeNetRequest, не держит фоновых JS‑процессов и вообще не нагружает ни CPU, ни оперативную память.Встроенная выгрузка вкладок: В
chrome://settings/performanceвключили «Экономию памяти» (Memory Saver) (а вот переключатель «Экономия энергии» в новых версиях Chrome на macOS скрывается, когда ноутбук подключен к зарядке, и работает автоматически при питании от батареи).
Акт 5. Финальный босс: Chrome 151 против Chrome 153, Skia Graphite и чёрный список видеокарт Intel
Но самое интересное ждало нас на странице chrome://gpu. Этот раздел я рекомендую прочитать всем, у кого старый Intel Mac тормозит или греется в современном Chrome, потому что за один месяц мы попали в две противоположные ловушки от разработчиков Google.
Эпизод 1: Chrome 151 и прожорливый Skia Graphite
В конце августа (на версии Chrome 151) мы открыли отчёт chrome://gpu и увидели такую строчку:
Graphics Feature Status ======================= * Canvas: Hardware accelerated * Skia Graphite: Enabled * Video Decode: Hardware accelerated
В свежих версиях Chrome компания Google включила новый экспериментальный движок 2D‑рендеринга и композитинга Skia Graphite (пришедший на смену старому Skia Ganesh). Под архитектуру Apple Silicon (M1/M2/M3/M4) его вылизали отлично, а вот на старых интегрированных чипах Intel Iris Plus 640 в версии 151 он вызывал дикий перегруз шейдерных блоков — видеочип молотил на 70% даже на простом видео.
Тогда в Chrome 151 мы открыли chrome://flags/#skia-graphite, переключили его в Disabled и перезапустили браузер. Результат в TurboControl был мгновенным:
Параметр |
Chrome 151 ( |
Chrome 151 ( |
|---|---|---|
Нагрузка на видеочип (GPU) |
70% (постоянный перегруз) |
0% — 5% |
Температура процессора (CPU) |
89 °C (оранжевая зона) |
66 °C (зелёная зона) |
Температура видеочипа (GPU) |
75 °C |
56 °C |
Ноутбук стал холодным и бесшумным. Я спокойно смотрел фильмы две с половиной недели, пока в середине сентября не перезагрузил Mac.
Эпизод 2: Внезапное обновление до Chrome 153, «99 °C» и слайд‑шоу на весь экран
После перезагрузки ноутбука начался кошмар:
Видео в Chrome вдруг стало дико тормозить (будто упал FPS), а процессор снова начал греться.
Попытка сбросить флаги кнопкой
Reset allи перезапустить окно браузера сначала вообще ничего не меняла (потому что на macOS закрытие окна на красный крестик не выгружает процесс Chrome из памяти — нужен полный выход черезCmd + Q).А когда мы наконец перезапустили браузер и покрутили настройки — процессор за минуту раскалился до 99 °C, кулер взвыл на 7200 RPM, а при развороте видео на весь экран картинка превратилась в слайд‑шоу!
Я уже был готов взорваться: «В браузере графическое ускорение включено! Теперь видео на весь экран тормозит! Мы долго по кругу ходить будем?!»
Мы прекратили гадать и полезли напрямую в конфигурационный JSON‑файл Chrome (~/Library/Application Support/Google/Chrome/Local State) и аргументы командной строки запущенных процессов Google Chrome Helper (GPU).
И вот какая двойная ловушка обнаружилась внутри:
Ловушка А: Внутренний «чёрный список» оборудования Chrome (Software Rendering List)
В файле Local State действительно стояло "hardware_acceleration_mode": { "enabled": true }. То есть в настройках браузера галочка «Использовать графическое ускорение» была включена! Но в реальных процессах macOS висели принудительные флаги:
--use-gl=disabled --disable-gpu-compositing
Почему? Потому что у Chrome есть встроенный чёрный список старых видеокарт и драйверов (Software Rendering List). В новых версиях браузера встроенная графика Intel Iris Plus 640 (2017 года) попала под блокировку: несмотря на включённый тумблер в настройках, Chrome втихую отключает GPU и переводит отрисовку всех пикселей Retina‑экрана (2560×1600) в аварийный программный режим на двухъядерный центральный процессор! Чтобы запретить браузеру блокировать видеокарту, жизненно необходим флаг: chrome://flags/#ignore-gpu-blocklist (Override software rendering list → Enabled). Когда мы нажали Reset all, этот флаг слетел, и видеокарта вырубилась.
Ловушка Б: В Chrome 153 флаг Skia Graphite = Disabled стал ломать видеокарту!
Но почему тогда, когда мы включили ignore-gpu-blocklist и снова поставили Skia Graphite = Disabled (как делали в августе), видео на весь экран начало тормозить?
Оказалось, что пока ноутбук работал без перезагрузки, Google обновил браузер с версии 151 до Chrome 153. И в версии 153 разработчики Chromium изменили архитектуру графического пайплайна на macOS:
В Chrome 151 отключение
Skia Graphite(Disabled) аккуратно переключало браузер на старый быстрый движокSkia Ganesh.А в Chrome 153+ старый пайплайн убрали, и теперь принудительное значение
Skia Graphite = Disabledвызывает фатальный фоллбэк: Chrome полностью отключает аппаратный композитинг (--use-gl=disabled)! При этом сам баг с перегрузом GPU внутриSkia Graphiteв 153-й версии разработчики наконец‑то починили.
Как только мы вернули chrome://flags/#skia-graphite в положение Default, оставив включённым ignore-gpu-blocklist = Enabled, и перезапустили браузер через Cmd + Q — всё встало на свои места! Аппаратное ускорение заработало на 100%, 4K и FullHD на весь экран пошли идеально плавно, загрузка GPU упала до нескольких процентов, а температура процессора вернулась к комфортным 60–66 °C.
? Шпаргалка № 2: Идеальная конфигурация Google Chrome для MacBook на Intel
Аппаратное ускорение: Откройте
chrome://settings/system→ убедитесь, что тумблер «Использовать графическое ускорение (при наличии)» включён.Обход чёрного списка старых GPU Intel (Обязательно!): Откройте
chrome://flags/#ignore-gpu-blocklist(Override software rendering list) → переключите вEnabled. Без этого флага современный Chrome может втихую отключить Intel Iris даже при включённом тумблере в настройках.Движок
Skia Graphite(зависит от вашей версии Chrome): Откройтеchrome://flags/#skia-graphite:
Если у вас Chrome 153 и новее — обязательно оставьте
Default(значениеDisabledв новых версиях отключает аппаратный рендеринг!).Если у вас старая сборка (Chrome 140–151) и в
TurboControlвы видите загрузку GPU 60–80% на простом видео — переключите вDisabled.Правильный перезапуск: После смены любых флагов закрывайте Chrome строго через
Cmd + Q(а не красным крестиком окна), затем проверьте на страницеchrome://gpu, что напротив Compositing и Video Decode горит зелёный статусHardware accelerated.Расширения и плеер:
enhanced‑h264ify — блокируем
VP8,VP9,AV1и (по желанию)60fps.uBlock Origin Lite — лёгкий блокировщик рекламы под Manifest V3 без фоновой нагрузки на CPU.
В шестерёнке плеера YouTube выключаем «Фоновую подсветку» (Ambient Mode).
Итоги: замеры «До и После»
Когда вся система заработала в комплексе — вычищены фоновые демоны macOS, настроен аппаратный пайплайн Chrome 153, а в строке меню дежурит наш TurboControl (с выключенным Turbo Boost и профилем кулера «Умный ранний») — ноутбук 2017 года буквально обрёл вторую молодость:
Параметр при просмотре фильма / YouTube 1080 p |
До (штатный режим macOS и дефолтный Chrome) |
После (настроенный Chrome + TurboControl: Cold & Smart Fan) |
|---|---|---|
Температура процессора (CPU) |
92 — 99 °C (красная зона, троттлинг) |
60 — 68 °C (зелёная комфортная зона) |
Температура видеочипа (GPU Intel Iris) |
75 — 85 °C |
54 — 60 °C |
Загрузка CPU / GPU при видео |
80–100% CPU / 70% GPU |
5–12% CPU / 3–8% GPU |
Обороты кулера и шум |
Прыжки от тишины до воя 7200 RPM |
Неслышный шелест 2200 — 3000 RPM |
Температура днища корпуса |
Обжигает колени (~50 °C) |
Едва тёплый (~35 °C) |
Поведение |
|
|
Выход в Open Source (и забавный курьёз с контрибьютором из США)
Изначально мы писали TurboControl исключительно под себя, но когда привели код, локализацию (RU / EN) и установщик в порядок, стало понятно, что с точно такой же болью каждый день сталкиваются тысячи владельцев Intel MacBook Pro и MacBook Air (2015–2020 гг.).
Кстати, при первой публикации репозитория на GitHub случился забавный курьёз. Мы разрабатывали проект в паре с ИИ‑ассистентом (Google Antigravity / Gemini), и я попросил указать его в соавторах коммита (Co-authored-by). Ассистент недолго думая вписал в трейлер коммита вымышленный адрес antigravity@google.com. Через минуту я открываю страницу репозитория на GitHub и с удивлением вижу в блоке Contributors рядом со своим профилем улыбающегося незнакомого парня:

Оказалось, что GitHub автоматически ищет по базе, к какому аккаунту привязан email из Co-authored-by, и этот адрес почему‑то оказался закреплён за реальным американским разработчиком Шимоном Шварцем (@shimonenator)! Пришлось быстро переписывать историю коммита и менять адрес на официальный сервисный бот @gemini-code-assist.
Где скачать и как попробовать TurboControl
Проект полностью открыт под лицензией MIT — без рекламы, платных Pro‑версий, телеметрии и запросов паролей.
? Репозиторий на GitHub (исходники и готовый релиз
TurboControl.zip): https://github.com/vladsboev‑web/TurboControl-
? Установка в одну строчку через Homebrew:
brew install --cask vladsboev-web/tap/turbocontrol(В
postflightскрипт один раз попросит пароль администратора для регистрации беспарольного хелпера в/etc/sudoers.d/turbocontrolи снимет карантин Gatekeeper, после чего приложение появится в верхней строке меню). ? Установка для тех, кто не любит терминал: Скачайте архив из Releases, распакуйте и просто дважды кликните по файлу
Install TurboControl.command.
Если у вас остался рабочий MacBook на Intel (Pro или Air 2015–2020 годов) — пробуйте настройки Chrome и утилиту, пишите в комментариях свои замеры температур до/после и делитесь, какие ещё скрытые флаги или системные процессы приходилось укрощать вам!
Вся разработка Gemini 3.8 flash high, потом рефакторинг и заливка на гитхаб — Gemini 4 Argon, все в Antigravity. Статья и скрины от Gemini 4.
Комментарии (4)

spmbt
28.10.2026 15:42Добавлю что, действительно, настройки Хрома, изменившиеся в последние месяца 4-6, и мне "дали прикурить" с неожиданной стороны на старом ноуте i5-3xxx. Нет он не грелся, но неожиданно стал резко тормозить. Причин могло быть несколько, например, забитость 1 из дисков (не SSD) данными. Неожиданно, по другой причине заглянув в настройки Хрома, увидел "скрытый ИИ для безопасности" и всё понял: надо чистить добрый заботящийся Хром от его стараний. Нашлась ещё пара настроек не по делу, и Гугл-ИИ только подтвердил диагноз. Такая же "забота", но неудаляемая настройками, есть и у Оперы. Нет её - у Вивальди. Разработчики Вивальди сознательно отказались от заботы ИИ над "глюпими" хомячками. Для более новых ноутов и компов это не так критично и незаметно. Выводы...
\*) Опера навязчиво заботится о хомячках, да так, что сознательные пользователи не могут ничего поделать. Не знаю, учитывает ли она старость железа, скорее - нет.
\*) Хром заботится, но уважает интересы пользователей старого железа; молча. Если вовремя заметить скрытые сигналы в сообщениях "Что нового", есть шансы догадаться.

Markscheider
28.10.2026 15:42@vladsboev - спасибо за статью. Интересен один вопрос: а у Сафари таких же тараканов, как у Хрома, нет? Но наверняка есть и свои собственные?
Вы не пробовали проводить тесты с Youtube на Сафари - он так же греет проц?
Дисклеймер:
я не тормозу меня на макбуке есть Хром, однако я знаю немало людей, которые предпочитают дефолтный (и ecosystem-friendly) Сафари.
vladsboev Автор
28.10.2026 15:42Давно не пользовался сафари, запустил сейчас проверить и удивился - 11 вкладок, ролик 1440р в полный экран, параллельно хром с 13 вкладками, CPU не выше 75°, GPU не выше 65°, даже память в мониторинге зеленая, использование не выше 6.7 гб, раньше такого не было. Но разница в том, что сафари все вкладки сбрасывает, и через некоторое время при их открытии они обновляются, в хроме такого нет, держит все в памяти длительно без перезагрузки ноута. Далее я провел ресерч на тему вашего вопроса про сафари, моих наблюдений по текущей оптимальной работе сафари, а также работы ноута по настроению (иногда стоя на столе и ролике 720р на разных сериальных стримингах греется и напрягается, а иногда на коленях работает тихо и без нагрева), вот что получил в ответ:
Я изучил тему перегрева Safari на Intel MacBook Pro 2017 в сети, а заодно проверил текущее состояние твоей системы (
macOS Ventura 13.7.8,Safari 18.6, и твой новый аккумулятор: 53 цикла, ёмкость 5239 mAh, статусNormalпротив старых 1014 циклов).Картина сложилась интереснейшая. Давай разберём по порядку: 1) как обстоят дела с Safari в сети (настройки и расширения), 2) почему у тебя в Safari проблема полностью исчезла даже на 1440p, и 3) почему ноутбук иногда ведёт себя «по настроению» (720p на столе греется, а на коленях холодный).
1. Что пишут в сети про Safari на MacBook Pro 2017 (Intel) + какие там есть настройки и расширения
На форумах (MacRumors, Reddit
r/macbookpro, Apple Support) жалобы на Safari на macOS Monterey и Ventura делятся на две категории: кодеки видео и жор памяти процессомcom.apple.WebKit.WebContent.А. Почему Safari умеет крутить 1440p/4K аппаратно, а Chrome с
h264ify— нет?В этом кроется главный технический секрет твоего процессора Intel Core i5-7360U (Kaby Lake, 7-е поколение) и графики Intel Iris Plus 640:
В чипе Kaby Lake ЕСТЬ полноценный аппаратный декодер
VP9(8-bit и 10-bit) на уровне кремния (Intel Quick Sync), но НЕТ декодераAV1(он появился только в 11-м поколении Intel).Когда ты открываешь YouTube в Safari, YouTube видит, что этот Mac не поддерживает аппаратный
AV1, и не отдаёт ему тяжёлый AV1 вообще, а отдаёт поток вVP9(для 1440p и 4K) илиH.264(для 1080p).И самое главное: Safari декодирует
VP9напрямую через низкоуровневый системный фреймворк AppleVideoToolbox, который идеально пробрасывает поток прямо в аппаратный блокIntel Quick Syncбез лишних прослоек. Поэтому в Safari ролик 1440p (VP9) крутится силами видеочипа (твои 66 °C на GPU и 75 °C на CPU тому прямое доказательство!).
Б. Есть ли в Safari аналог
chrome://flags?Да, есть! Он спрятан в меню разработчика:
Открываешь
Safari→Настройки (Cmd + ,)→ вкладка «Дополнения» (Advanced).В самом низу ставишь галочку «Показывать функции для веб-разработчиков» (в старых версиях — «Показывать меню “Разработка” в строке меню»).
В верхней строке меню macOS появляется пункт «Разработка» (Develop) → «Функциональные флаги» (Feature Flags) (или Experimental Features).
Там сотни внутренних тумблеров движка WebKit. Что там обычно трогают на Intel-маках при проблемах с видео:
VP9 decoder/VP9 SW decoder on battery— управление декодером VP9.GPU Process: Canvas Rendering/GPU Process: DOM Rendering— отвечает за вынос графики в отдельный процессcom.apple.WebKit.GPU(аналогSkia Graphiteв Chrome).WebGL via Metal— трансляция 3D-графики через движок Apple Metal.
В. Есть ли для Safari расширения вроде
h264ifyи блокировщиков?Обычный магазин расширений Chrome к Safari не подходит — у Safari свои расширения из Mac App Store (и они часто платные), но есть три проверенных решения:
Userscripts (Бесплатно, Open Source в App Store) — менеджер пользовательских скриптов для Safari. В него в один клик ставится скрипт
h264ifyс GreasyFork, если нужно принудительно заблокировать VP9/60fps.Vinegar — Tube Cleaner (популярная нативная утилита для Safari, ~$2) — полностью вырезает тяжёлый JavaScript-плеер YouTube (вместе с рекламой и фоновой подсветкой) и заменяет его на чистый системный HTML5-плеер Apple
<video>. На старых маках снижает нагрузку на CPU почти до нуля.wBlock или AdGuard для Safari — бесплатные нативные блокировщики контента, которые используют системный
Content Blocker API(работают так же легковесно, какuBlock Origin Liteв Chrome).
2. Почему у тебя проблема с Safari внезапно ушла сама (и память больше не забивается)?
Тут совпали три реальных фактора, которые произошли на твоём ноутбуке с августа по октябрь:
Safari тихо обновился до свежей ветки
18.6: Хотя у тебя стоитmacOS Ventura 13.7.8, Apple обновляет Safari отдельно от основной ОС. Сейчас у тебя стоит свежайший Safari 18.6. В ветке Safari 18 Apple кардинально переработала менеджер памяти процессовWebKit.WebContent(добавили агрессивную сборку мусора для неактивных вкладок) и починили утечки памяти на YouTube. Поэтому несколько вкладок + 1440p видео больше не сжирают 8 ГБ ОЗУ.-
Замена аккумулятора (
1014 циклов→53 цикла, статусNormal) + свежая термопаста: Это огромная победа по физике, о которой мало кто задумывается:Во-первых, твой новый аккумулятор на 53 циклах имеет низкое внутреннее сопротивление — он перестал сам работать как грелка под тачпадом при отдаче тока.
Во-вторых, на MacBook Pro с уставшей батареей (
Service Recommended) контроллер питания SMC периодически просаживает шину питания, вызывая микро-троттлинг процессора и скачкиkernel_task. С новой батареей (5239 mAh) шина питания держит стабильное напряжение, а свежая термопаста моментально отводит тепло от кристалла на медную трубку.
Мы убили фоновую связку
searchpartyuseragent+contactsd: Когда в августе ты впервые открыл Safari, треть твоего 2-ядерного процессора уже была занята зацикленным демоном Локатора иkernel_task. Любая вкладка Safari тут же упиралась в потолок CPU. Сейчас фоновая нагрузка системы близка к 0%.
3. Загадка: почему ноутбук работает «по настроению» (иногда греется на столе от 720p в Chrome, а иногда холодный на коленях)?
Это не мистика, а набор из 4 конкретных триггеров, которые срабатывают незаметно для глаз:
-
Разные плееры и реклама на разных сайтах (720p на условном онлайн-кинотеатре vs 1440p на YouTube):
На YouTube видео идёт через чистый аппаратный декодер.
А когда ты включаешь сериал в 720p в онлайн-кинотеатре (HDRezka, Кинопоиск, VK Видео, пиратские балансеры Kodik/Alloha), поверх плеера часто крутятся тяжёлые обфусцированные JS-скрипты, невидимые рекламные баннеры на
Canvas, трекеры или HLS-поток (.m3u8), который расшифровывается прямо на процессоре через JavaScript (hls.js), минуя аппаратный декодер видеокарты! В итоге ролик всего 720p, но он декодируется программно на CPU и греет ноутбук сильнее, чем честные 1440p на YouTube.
-
Питание от розетки (На столе) vs Питание от батареи (На коленях):
Когда ноутбук стоит на столе на зарядке, контроллер питания
AppleSMCодновременно подаёт ток заряда в аккумулятор (процесс зарядки литий-ионной батареи сам по себе выделяет ощутимое тепло!) + macOS разрешает процессору и фоновым службам (mds_stores/ Spotlight,photoanalysisd, синхронизации Google Drive) работать на полную мощность.Когда ты берёшь ноутбук на колени (от батареи), контроллер зарядки не греет плату, а macOS и Chrome автоматически переводят фоновые таймеры в энергосберегающий режим.
Сброс состояния после сна без запущенного
TurboControl: Если ноутбук проснулся, аTurboControlбыл выключен (или в нём стоял режимTurbo Boost: ВКЛЮЧЕН), то любой фоновый чих в Chrome подкидывает частоту процессора с2.3 ГГцдо3.6 ГГц, мгновенно нагревая чип с 55 °C до 80+ °C.Аппаратное ускорение видео
VideoToolboxиногда «занимает» только одна вкладка: У аппаратного декодера Intel Iris 640 ограниченное число аппаратных сессий. Если на фоновой вкладке в браузере уже открыта соцсеть (Telegram Web, Twitter/X, лента с автовоспроизведением гифок/видео), она может занять аппаратный конвейер, а основное видео во второй вкладке тихо свалится в программный рендеринг.
Как мгновенно понять, почему вдруг начал греться ролик 720p в Chrome: В следующий раз, когда заметишь, что на каком-то ролике температура полезла вверх — нажми в самом Chrome сочетание клавиш
Shift + Esc(откроется внутренний Диспетчер задач самого Chrome). Он сразу покажет в процентах, кто именно жрёт процессор:Процесс GPU, конкретная вкладка с фильмом, фоновая вкладка или какое-то расширение!Неожиданно, я сам раньше пользовался ecosystem-friendly Сафари, перешел в хром только из-за экономии ресурсов при работе (раньше это было ужасно тяжело для ноута) и блокировщика рекламы, а теперь выясняется что оба вопроса закрыты в сафари. Будем пробовать.
urvanov
А я ещё думал, что я из-за линукса много с настройками ковыраюсь.