С драйверами для ATI Radeon еще предстоит разобраться
При выполнении 3DMark03 некоторые шейдеры теста заменялись драйверами nVidia на внутренние, адаптированные под архитектурные особенности GeForce. Эффект от такой замены — более быстрое выполнение эталонных тестов

Срочно готовить обновление тестового пакета 3DMark03, применяющегося для оценки производительности видеоподсистем ПК, была вынуждена в конце мая компания Futuremark (прежде известная как MadOnion.com). Причина: в последних версиях драйверов фирмы nVidia для видеокарт на основе популярных графических процессоров семейства GeForce были обнаружены так называемые детекторы — фрагменты кода, позволяющие отслеживать запуск тестовых утилит и, как следствие, подтасовывать результаты тестов.

Первым забил тревогу сайт ExtremeTech (www.extremetech.com), являющийся участником программы бета-тестирования 3DMark03. Проверка подтвердила правоту ExtremeTech и Beyond3D. Как говорится в отчете, опубликованном на сайте Futuremark, в драйверах Detonator FX версий 44.03 и 43.51, которые, кстати, к тому времени уже успели получить сертификат подразделения WHQL (Windows Hardware Quality Labs) корпорации Microsoft, было найдено по восемь детектирующих вхождений. Причем часть из них обнаружили и в более ранних версиях.

(Интересно, что на момент подготовки этого номера Computerworld Россия к печати из архива программ на сайте nVidia был изъят драйвер версии 43.51, а в отношении Detonator FX 44.03 указывалось, что он сертифицирован WHQL только для использования с операционными системами Windows 2000 и XP. — Прим. ред.)

Между тем далеко не все специалисты склонны драматизировать ситуацию. К примеру, Питер Гласковски, главный редактор журнала Microprocessor Report, считает, что тестовый пакет 3DMark03 изначально предоставлял более выгодные условия графическим процессорам канадской компании ATI Technologies — главного конкурента nVidia. В частности, некоторые из вызовов функций и процедур DirectX в 3DMark03, по его словам, лучше задействуют механизмы поддержки этого набора программных интерфейсов, реализованные в продуктах ATI. Гласковски считает, что nVidia «всего лишь» пыталась уравнять шансы, конвертируя «спорные» вызовы в инструкции, поддерживаемые на аппаратном уровне графическими процессорами GeForce. «Столкнувшись с проблемой, nVidia попыталась ее решить. Другое дело, что с точки зрения Futuremark предложенное решение выглядит некорректным», — сказал он.

Примерно так же, но, естественно, несколько по-иному расставляя акценты, описывают ситуацию и представители Futuremark. Действительно, речь идет о том, что некоторые шейдеры 3DMark03 (загружаемые и исполняемые графическими процессорами мини-программы, с помощью которых элементам графических сцен, в частности различным поверхностям, придается реалистичность) заменяются драйверами nVidia на внутренние, адаптированные под архитектурные особенности GeForce. Эффект от такой замены — более быстрое выполнение эталонных тестов. Впрочем, nVidia уличили и в другом, а именно в искусственном уменьшении нагрузки на графический процессор при выполнении тестов. (В частности, по словам представителей Futuremark, в некоторых случаях игнорируются команды очистки буферов. — Прим. ред.) Результаты тестов 3DMark03 — в обновленной версии, блокирующей детекторы nVidia, — для графических карт на основе GeForce, конечно, будут не такими высокими, как прежде. Представители самой Futuremark говорят о разнице в 24% (при использовании GeForceFX 5900 Ultra и выпущенного в середине мая драйвера Detonator FX версии 44.03).

Реакция на случившееся со стороны nVidia оказалась довольно своеобразной. Компания предпочла не отвечать по существу на предъявленные упреки и выступила с официальным заявлением, в котором говорится следующее: «Поскольку nVidia не участвует в программе бета-тестирования Futuremark, у нас нет возможности работать совместно с этой компанией в написании шейдеров, как это могло быть в случае с реальными разработчиками приложений. Нам неизвестно, что было сделано Futuremark. Но выглядит это так, будто они с самого начала намеревались создать ситуацию, выставляющую наши продукты в невыигрышном свете».

Интересно, что результаты тестов с обновленной версией 3DMark03 у графических карт на основе процессоров ATI тоже оказались ниже, чем раньше. В частности, у Radeon 9800 Pro с драйвером Catalyst версии 3.4 общий регресс составил чуть менее 2%, но на одном из этапов теста результат оказался хуже на 8%. Представители Futuremark считают, что это также свидетельствует о наличии детектора (как минимум, одного) в драйверах ATI и намерены продолжить их проверку.

Поделитесь материалом с коллегами и друзьями