> > > > Прототип драйвера AMD для решения проблемы микро-подёргиваний - первые результаты

Прототип драйвера AMD для решения проблемы микро-подёргиваний - первые результаты

Опубликовано:

amd-radeon-logo-2013Вчера мы опубликовали обзор новой видеокарты AMD Radeon HD 7990 с двумя GPU, которая показала убедительную производительность - разве что вопросы цены и микро-подёргиваний остались открытыми. Проблема для AMD не новая, но раньше компания не акцентировала на ней внимание, поскольку решения не существовало.

Сначала позвольте напомнить, в чем заключается феномен микро-подёргиваний: игровой движок рассчитывает данные для отображения на экран на видеокартах, при этом он пытается вывести картинку как можно быстрее. В зависимости от сложности сцены, на подготовку картинки может уйти некоторое время. Если средняя частота кадров составляет 60 fps, то один кадр подготавливается, в среднем, за 16,7 мс. Впрочем, данное значение является средним, поскольку в реальности время прорисовки отдельных кадров может существенно отличаться. Например, первый кадр будет просчитываться за 10 мс, а второй - за 40 мс. Подобную разницу в скорости вывода кадров геймер как раз и воспринимает как микро-подёргивания. Нынешнее поколение драйверов Catalyst оптимизировано под вывод кадров с минимальной задержкой.

Но у данной оптимизации есть преимущество: обеспечивается максимально высокая частота кадров в секунду. Также и задержка ввода оказывается минимально возможной. Поэтому действия геймера как можно быстрее обрабатываются игровым движком. Тем не менее, AMD попыталась найти правильный баланс между низкими задержками и одинаковым временем вывода кадров.

AMD решила подойти к решению проблемы со стороны драйверов. На данный момент компания работает над драйвером, содержащим так называемый алгоритм "Frame Pacing". Если верить AMD, драйвер находится еще в состоянии прототипа, то есть ранней альфа-версии. Выход бета-версии в ближайшем будущем не ожидается, до финальной версии пройдёт не меньше нескольких месяцев. Возможно, бета-версия появится в июне или июле.

На данном этапе AMD опирается на алгоритм для расчета задержки ожидания. Уже просчитанный кадр задерживается на некоторый промежуток времени, определяемый по средней частоте кадров. Нынешняя версия драйвера не имеет опции выбора между режимами "Frame Pacing" и "Frame Latency". Такая опция была бы интересной для пользователей, которые желают выбрать между минимальным эффектом микро-подёргиваний и минимально возможной задержкой ввода. Также драйвер не содержит последние улучшения производительности, которые появились в версиях Catalyst 13.3 Beta или Catalyst 13.5.

Мы взяли четыре игры, для которых провели измерения частоты кадров с новым драйвером и без него, чтобы оценить работу принципа "Frame Pacing" на практике. Серым показана частота кадров без "Frame Pacing" (обычный драйвер), красным - частота кадров с активной "Frame Pacing" (альфа-версия драйвера).

AMD Radeon HD 7990 mit Prototypen-Treiber und
AMD Radeon HD 7990 mit Prototypen-Treiber und
AMD Radeon HD 7990 mit Prototypen-Treiber und
AMD Radeon HD 7990 mit Prototypen-Treiber und

Как можно видеть, новый драйвер действительно сглаживает частоту кадров. Это видно на глаз, а также подтверждается результатами тестов. Технология помогла даже в играх Battlefield 3 и Far Cry 3, в которых мы подобрали сценарий худшего случая. Но NVIDIA всё равно сильнее продвинулась вперёд в решении данной проблемы, поскольку занялась вопросом ещё до выхода поколения "Kepler". Что касается AMD, то возникает закономерный вопрос: почему разработчики компании стали работать над решением проблемы только сейчас?

AMD реализовала правильную концепцию, но ей все равно придётся потратить некоторое время на тонкую оптимизацию. По информации AMD, ей приходится преодолевать серьёзные трудности, поэтому на доработку драйвера уйдет некоторое время. AMD представила новый драйвер только журналистам, попросив не публиковать его в открытый доступ. Мы со своей стороны будем внимательно следить за разработкой нового драйвера.