Расход батареи терминалами с GPU-ускорением на macOS
- title
- Расход батареи терминалами с GPU-ускорением на macOS
- type
- summary
- summary
- Почему терминалы с GPU (Ghostty, Alacritty, Kitty) сажают батарею MacBook и что с этим делать
- parent
- gpu-accelerated-terminal
- tags
- macos, terminal, battery, claude-code
- created
- 2026-04-29
- updated
- 2026-04-29
- lang
- ru
- translation_of
- terminal-gpu-battery-cost
- source_updated
- 2026-04-29
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Фернандо работал в кафе Сарагосы на MacBook Air M3 и открыл Activity Monitor, когда батарея села до 15% всего за два часа использования Claude Code. Вкладка Energy показала у Ghostty 3600 накопленных единиц за последние 12 часов. У Brave было 125. У Zoom с видео - 99. У десктопного приложения Claude - 46. Терминал - программа, чья единственная задача показывать буквы, - сжёг в 30 раз больше энергии, чем веб-браузер.
Почему терминалы с GPU потребляют так много
Терминалы с GPU-ускорением, такие как Ghostty, Alacritty и Kitty, рекламируют более плавный рендеринг и чёткие шрифты. Расплата за это - каждый появляющийся на экране символ проходит через Metal, шейдеры и композицию кадров. А поскольку Claude Code непрерывно выводит поток данных - спиннеры, строки логов, результаты вызова инструментов, - конвейер GPU не простаивает ни секунды. Затраты на отрисовку одного git status превышают затраты на видеозвонок.
Второй удар наносит App Nap. macOS приостанавливает фоновые процессы, которые выглядят неактивными, но окно с крутящимся спиннером неактивным не выглядит. Терминал продолжает бодрствовать, даже когда пользователь на него не смотрит.
Три варианта по возрастанию трудозатрат
Terminal.app. Штатный терминал macOS выполняет рендеринг на CPU, корректно засыпает и работает с Claude Code без какой-либо заметной разницы. Простой и старый, без лигатур и анимаций. Работает.
iTerm2 с профилем "Battery". В iTerm2 переключатель GPU-рендеринга пока остался. Сдублируйте существующий профиль, назовите его Battery и снимите флажок с Terminal -> GPU Rendering. Переключаться можно вручную через Profiles -> Battery или автоматически при работе от батареи через инициализацию shell:
# ~/.zshrc
if [[ $(pmset -g batt | grep -c "Battery Power") -gt 0 ]]; then
echo -e "\033]50;SetProfile=Battery\a"
fi
Escape-последовательность \033]50;SetProfile=Battery\a - это протокол смены профиля iTerm2: каждый новый экземпляр shell выполняет её.
Ghostty. Переключателя GPU здесь нет. Единственные варианты смягчить проблему - уменьшить объём того, что GPU приходится перерисовывать: cursor-style-blink = false, mouse-hide-while-typing = true, сворачивание неиспользуемых окон. Вердикт Фернандо: Ghostty создан для производительности, а не для энергоэффективности, и это не тот инструмент, который подходит для регулярной работы от батареи.
Параллель с 1978 годом
VT100 с его ЭЛТ потреблял 30 Вт. Созданный с прицелом на энергоэффективность MacBook Air образца 2026 года превосходит эту цифру, чтобы показать тот же самый текст. Суть не в ностальгии - "современный" и "оптимизированный" могут означать оптимизацию под метрику (задержка от ввода до пикселя в миллисекундах), которая обходится слишком дорого по метрикам, важным при работе от батареи.
Связь с Claude Code
Это скорее проблема рабочего процесса с Claude Code, чем общая проблема терминалов. Сессии в редакторе к ней не приводят, потому что объём вывода ограничен. Агентские сессии транслируют символы непрерывно, поэтому и конвейер GPU работает без остановки. Простейшее решение - выбрать для работы с агентами терминал с рендерингом на CPU.
По материалам your-terminal-is-burning-battery-like-it-s-mining-bitcoin.