Быстрая диагностика проблем Intel GPU в Linux
Быстрая диагностика проблем Intel GPU в Linux
Руководство по оперативной диагностике проблем с Intel GPU (драйверы i915/xe) в Linux системах. Все команды готовы к копированию и немедленному использованию.
Быстрые проверки текущей сессии
Поиск критических ошибок GPU
Первым делом проверяем журнал ядра на предмет явных проблем с графическим процессором (только warning и выше):
# Поиск критических событий GPU с минимумом шума
journalctl -b -k --priority=4..0 -g 'GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip' || echo "✅ Критических ошибок не найдено"
Альтернативная проверка через dmesg
Проверка через dmesg с фильтрацией по уровням важности:
# Проверка критических событий через dmesg
dmesg --level=err,warn | grep -Ei 'GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip' || echo "✅ Критических ошибок не найдено"
Общий обзор состояния драйвера
Для получения информационной сводки о загрузке компонентов i915:
# Информация о загрузке микропрограмм и инициализации компонентов
journalctl -b -k -g 'i915.*(DMC firmware|GUC firmware|HuC firmware|PSR|PXP|GSC)' | tail -n 80
Анализ предыдущей сессии
После перезагрузки системы важно проверить, что происходило в предыдущей сессии:
# Анализ критических ошибок GPU в предыдущей загрузке
journalctl -b -1 -k --priority=4..0 -g 'GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip' 2>/dev/null || echo "ℹ️ Нет предыдущей загрузки или критических событий"
Мониторинг в реальном времени
Общий мониторинг событий GPU
Для отслеживания событий графической подсистемы в реальном времени:
# Непрерывный мониторинг всех событий GPU
sudo journalctl -k -f -o short-monotonic | grep -Ei 'i915|xe|gpu|hang|wedg|reset|guc|huc|psr'
Мониторинг только критических событий
Отслеживание исключительно серьезных проблем в реальном времени:
# Мониторинг только критических ошибок
sudo journalctl -k -f -o short-monotonic | grep -E 'GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip'
Проверка конфигурации драйвера
Активные параметры ядра и драйвера
# Параметры загрузки ядра
cat /proc/cmdline
# Состояние PSR (Panel Self Refresh)
cat /sys/module/i915/parameters/enable_psr
# Настройки GuC (Graphics Micro Controller)
cat /sys/module/i915/parameters/enable_guc # 0=выкл, 1=включить GuC submission, 2=включить HuC, 3=GuC+HuC
# Управление энергосбережением дисплея
cat /sys/module/i915/parameters/enable_dc
Информация о микропрограммах
Проверка версий загруженных микропрограмм:
# Версии прошивок компонентов GPU
sudo dmesg -T | egrep -i 'DMC firmware|GUC firmware|HuC firmware|Loaded GSC firmware|Protected Xe Path' | tail -n 50
Углубленная диагностика
Анализ состояния GPU при сбоях
# Обеспечиваем доступность debugfs
sudo mount -t debugfs debugfs /sys/kernel/debug 2>/dev/null || true
# Информация о последнем сбое GPU (если доступна)
sudo cat /sys/class/drm/card0/error | sed -n '1,120p' || echo "Информация о сбоях недоступна"
# Расширенная информация о состоянии драйвера
sudo sed -n '1,120p' /sys/kernel/debug/dri/0/i915_error_state 2>/dev/null || echo "Debug-информация недоступна"
Статистика сбоев
# Подсчет критических событий за текущую сессию
journalctl -b -k --priority=4..0 -g 'GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip' | wc -l
Проверка окружения
Информация о графической сессии
# Тип сессии (X11/Wayland)
echo "Тип сессии: $XDG_SESSION_TYPE"
# Установка mesa-utils при необходимости
sudo apt install -y mesa-utils 2>/dev/null || true
# Информация о рендерере OpenGL
glxinfo -B | grep -E 'OpenGL renderer|OpenGL version' 2>/dev/null || echo "glxinfo недоступен"
# Информация о Vulkan (если используется)
vulkaninfo --summary 2>/dev/null | sed -n '1,80p' || echo "vulkaninfo недоступен"
Версии системных компонентов
# Версия ядра
echo "Ядро: $(uname -r)"
# Состояние пакета с микропрограммами
apt policy linux-firmware | sed -n '1,20p'
Дополнительные инструменты диагностики
Intel GPU Tools
Установка и использование официальных инструментов Intel:
# Установка intel-gpu-tools
sudo apt install -y intel-gpu-tools
# Мониторинг загрузки GPU в реальном времени (Ctrl+C для выхода)
sudo intel_gpu_top
Автоматизация через алиасы
Для удобства использования добавьте следующие алиасы в ~/.bashrc:
# Добавление удобных алиасов
cat <<'EOF' >> ~/.bashrc
# Алиасы для диагностики GPU
alias gpucrit='journalctl -b -k --priority=4..0 -g "GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip"'
alias gpudump='journalctl -b -k -g "i915|xe|GUC|HuC|PSR" | tail -n 200'
alias gpumon='sudo journalctl -k -f -o short-monotonic | grep -E "GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip"'
alias gpustat='journalctl -b -k --priority=4..0 -g "GPU HANG|TLB invalid|\bwedged\b|stopped heartbeat|Resetting chip" | wc -l'
EOF
# Перезагрузка оболочки для применения алиасов
exec $SHELL
После добавления алиасов используйте команды:
gpucrit— проверка критических событий в текущей сессииgpudump— общий обзор событий драйвераgpumon— мониторинг критических событий в реальном времениgpustat— количество критических событий за сессию
Интерпретация результатов
Типичные проблемы и их признаки
| Сообщение | Описание | Действия |
|---|---|---|
GPU HANG |
Зависание графического процессора | Проверить параметры драйвера, обновить прошивки |
TLB invalidation ... timed out |
Проблемы с таблицей страниц GPU | Часто на i915 с GuC; проверить ядро и прошивки, отключить PSR временно |
wedged |
Критический сбой драйвера (состояние "застрял") | Обычно после этого следует "Resetting chip" |
Resetting chip |
Принудительная перезагрузка GPU | Нормальная реакция на зависание |
stopped heartbeat |
Потеря связи с GPU | Критическая ошибка, требует анализа |
Failed to load GuC |
Ошибка загрузки микропрограммы GuC | Обновить linux-firmware или отключить GuC |
guc communication error |
Ошибка связи с GuC | Проверить совместимость прошивки и драйвера |
Когда обращаться за помощью
При обнаружении проблем предоставьте:
- Выхлоп одной из команд проверки (20-40 строк вокруг события)
- Версию ядра (
uname -r) - Модель GPU (
lspci | grep VGA) - Активные параметры драйвера
Совет: Запускайте проверки после появления графических артефактов, зависаний или нестабильной работы системы. Регулярный мониторинг поможет выявить проблемы на ранней стадии.