Оригинал материала: https://3dnews.ru/1129482

Энтузиасты докопались до причин лагов и статтеров на ноутбуках Asus ROG — виноваты ошибки в BIOS

Игровые ноутбуки серии Asus ROG изобилуют ошибками в BIOS, которые приводят к сбоям в работе системы: подтормаживаниям при просмотре YouTube, зависаниям во время звонков Discord, подвисаниям при движении мыши и другим раздражающим явлениям. Таковы результаты исследования, проведённого энтузиастом под псевдонимом Zephkek — специалистом по низкоуровневому программированию.

Он установил, что проблема игровых ноутбуков Asus не в «раздутом» предустановленном ПО, не в старых драйверах или ОС — она находится глубоко в BIOS, где осуществляются системные операции и производится управление компонентами. Чтобы установить причину, исследователь воспользовался программой LatencyMon, которая измеряет задержку прерываний процессора. Задержка прерываний процессора — важный показатель. Это время, необходимое, чтобы процессор переключился с текущей задачи на другую, более важную. На ноутбуках серии Asus ROG, в том числе на модели Zephyrus M16, одно из ядер процессора — обычно первое, которое наиболее часто используется программами, — «зависает» при обработке прерываний более чем на 90 секунд. На это время оно блокируется и не выполняет никаких задач, что приводит к подтормаживанию, если на машине запущена чувствительная ко времени реакции рабочая нагрузка.

Проблема оказалась в реализации ACPI.sys стандарта Advanced Configuration and Power Interface (ACPI), который выступает связующим звеном между ОС и BIOS, помогая им управлять функциями питания: спящим режимом, гибернацией, зарядом аккумулятора и данными о температуре. Он же отвечает за обнаружение устройств Plug-and-Play и настройку ресурсов. В реализации ACPI.sys производится интерпретация машинного языка ACPI (AML) — её код создаёт разработчик BIOS, в данном случае, Asus.

Ноутбуки Asus ROG часто комплектуются двумя видеокартами: дискретными, например, Nvidia GeForce RTX 30/40, и встроенными в процессоры Intel. При реализации различных сценариев питания, например, от сети или аккумулятора управление ими осуществляет мультиплексорный переключатель (MUX), который работает некорректно — он запускает циклы циклического включения и выключения, в которых нет логического смысла. Так, при подключении ноутбука к внешнему дисплею должна работать только дискретная видеокарта — например, Nvidia, а встроенная Intel должна быть полностью отключена. Но на деле система постоянно, каждые 15–30 секунд включает и выключает дискретную, хотя только она и должна функционировать.

Автор исследования приводит несколько причин возникших аномалий. Во-первых, система неправильно воспринимает контекст прерывания, то есть информацию о том, что вызвало прерывание, и как его следует обрабатывать. Во-вторых, есть недостатки в обработке прерываний — BIOS не умеет быстро справляться со срочными сигналами, что вызывает зависания процессора. В-третьих, BIOS не осуществляет проверок, в каком режиме действует система — например, включена ли дискретная или встроенная видеокарта, из-за чего, например, BIOS может циклически включать и выключать дискретную видеокарту, когда нужна именно она. Проблема обнаружена на ноутбуках Asus модельного ряда с 2021 по 2024 годы — она затрагивает модели серии ROG в линейках Strix, Scar и Zephyrus.

Asus не стала отмаливаться и отреагировала на инцидент. «Мы видели недавние сообщения о сбоях в работе некоторых ноутбуков ROG и хотим сообщить, что наша команда активно расследует эти случаи. Понимаем, что стабильная и бесперебойная работа критически важна для таких высокопроизводительных машин как эти, и выделили ресурсы на решение проблемы. Ваши отзывы и подробные сообщения неоценимы, и далее мы будем держать вас в курсе и оказывать поддержку по нашим официальным каналам», — заявили в компании и поблагодарили потребителей за терпение.



Оригинал материала: https://3dnews.ru/1129482