Исследование работоспособности технологии NVIDIA PhysX в современных играх (обновлено)

Насколько же реален PhysX?
27 июля 2009, понедельник 00:01
Phoenix_ для раздела Лаборатория

Оглавление

Вступление

К реализации физических эффектов в играх уже давно стремятся многие девелоперы и разработчики игр. С каждым годом это направление становится все актуальнее. В современных играх взаимодействие объектов с окружающей средой осуществляется силами двух движков, набравших наибольшую популярность - Havok и PhysX.

Havok является старейшим движком, на котором пишется немало игр под PC и консоли. Еще в далеком 2006 году, тогда еще независимая ATI, демонстрировала ускорение физических эффектов силами видеокарт Radeon X1900XT. Однако позже Havok купила компания Intel, которая заявила, что физические эффекты будут рассчитываться данным движком силами процессоров.

PhysX был разработан компанией AGEIA, которая реализовывала "физику" акселераторами собственной разработки. Но так сложилось, что, не смотря на большую популярность этого движка среди разработчиков игр, реализация физических эффектов в играх силами специализированных ускорителей оказалась весьма спорной.

И вот в прошлом году компания NVIDIA купила AGEIA PhysX. Были сделано заявление, что посредством оптимизации драйверов движок PhysX будет адаптирован под использование видеокарт GeForce 8800GT и выше. Также было объявлено, что в ближайший год выйдут несколько десятков проектов класса ААА.

В данной статье мы решили проверить работоспособность технологии NVIDIA PhysX. Нами были выбраны 25 игр, поддерживающих эту технологию. Проанализировав российскую розницу, мы взяли средневзвешенную цену видеокарт. То есть были взяты цены нескольких крупных магазинов и нескольких производителей видеокарт (ASUS, PowerColor, Gainward, Palit, MSI, Zotac и Sapphire), и на их основе рассчитан среднеарифметический ценник видеокарты.

  • GeForce GTX 275 896Mb - 270 $
  • GeForce GTS 250 1024Mb - 170 $
  • Приступим к нашему сегодняшнему исследованию.

    Тестовая конфигурация, инструментарий

    Конфигурация тестового стенда:

  • Процессор: Intel Core 2 Quad Q6600, 2.4 ГГц, 1.3 В, L2 2 x 4 Мбайт, FSB: 1066 МГц (Kensfield, G0);
  • Материнская плата: GigaByte GA-X38-DS4;
  • Система охлаждения CPU: Zalman VF 9700 LED (~1000 об/мин);
  • Оперативная память: 4 x 1024 Мбайт DDR2 Hynix (Spec: 800 МГц / 5-5-5-15-2t / 1.9 В);
  • Дисковая подсистема: SATA-II 500 Гбайт, WD 5000KS, 7200 об/мин, 16 Мбайт;
  • Привод: IDE DVD RAM & DVD±R/RW & CD±RW Pioneer DVR-109;
  • Видеокарта GigaByte Radeon HD 4870 512Mбайт (750/3600 МГц);
  • Видеокарта MSI GeForce GTX 275 896 Mбайт (666/1476/2300 МГц);
  • Видеокарта Gainward GeForce GTS 250 1024 Mбайт (746/1840/2200 МГц);
  • Корпус: ATX CoolerMaster Centurion 590;
  • Панель управления и мониторинга: Zalman ZM-MFC2;
  • Блок питания: FSP Epsilon 700 Ватт (штатный вентилятор: 120-мм на вдув);
  • Монитор: 24" BenQ V2400W (Wide LCD, 1920x1200 / 60 Гц);
  • RivaTuner 2.24.
  • Для уменьшения зависимости производительности видеокарт от скорости системы, во время тестирования центральный процессор был разогнан до частоты 3.6 ГГц с увеличением напряжения до 1.475 В:

    При этом оперативная память функционировала на частоте в 900 МГц с таймингами 5-5-5-15-2t при напряжении в 1.9 В.

    В корпусе установлены на вдув и выдув 120-мм корпусные вентиляторы GlacialTech на ~1000 об/мин, на боковой стенке - такие же два вентилятора на ~1000 об/мин, в верхней стенке еще два вентилятора на ~1000 об/мин.

    Все тесты были проведены в операционной системе Windows Vista Ultimate Edition x86 SP1. Использовались драйверы видеокарт ATi Catalyst 9.6, GeForce 186.18 и NVIDIA PhysX 2.8.1.

    Методика тестирования

    Cryostasis (demo), PT Boats: Knights of the sea (demo) тестировались при помощи прогона демок.

    Brothers in Arms: Hell's Highway, Clive Barker's: Jericho, Cryostasis (game), Damnation, Gears of War, Ghost Recon Advanced Warfighter 2, Gothic 3: Forsaken Gods, Mass Effect, Medal of Honor: Airborne, Mirrors Edge, Sacred 2: Fallen Angel, Terminator Salvation, Turok, Unreal Tournament 3: Titan, Velvet_Assasin, WarFare и X-Men Origins: Wolverine тестировались с помощью утилиты FRAPS v2.9.6 build 7637.

    Во всех играх замерялись min и avg значения FPS.

    В бенчмарках и демках, у которых отсутствовал показатель min fps, это значение замерялось при помощи утилиты FRAPS.

    Тестирование проводилось в разрешении 1920х1200.

    VSync при проведении тестов был отключен.

    Активация PhysX

    При обсуждении первой редакции данного материала в нашей конференции многие пользователи указали на нашу ошибку, а именно на то, что в Windows Vista нельзя установить драйвера на видеокарты разных вендоров. Мы признаем свой недочет, но решили оставить описание попыток активировать Gainward GeForce GTS 250 1024 Mбайт под ускорение физики в паре с Radeon HD 4870 512 Mбайт, чтобы неопытные пользователи могли убедиться в их тщетности.

    Для начала мы попытались запустить для работы с NVIDIA PhysX видеокарты GigaByte Radeon HD 4870 512 Mбайт и Gainward GeForce GTS 250 1024 Mбайт. Но нас ждало полное фиаско. Опишем процесс наших мучений.

    В систему с уже установленной Radeon HD 4870 была добавлена GeForce GTS 250. Драйверы на Radeon и NVIDIA PhysX уже были предустановленны. Однако во время установки драйверов на GeForce GTS 250 выскочила надпись: "Один или несколько видеоадаптеров в системе были отключены, поскольку их драйверы несовместимы с драйвером для адаптера VGA".

    Тем не менее, драйверы успешно установились, и система была перезагружена.

    После перезагрузки мы попытались активировать GeForce GTS 250 для расчетов физических эффектов, но у нас ничего не получилось, т.к. панель управления оказалась деактивирована.

    Заглянув в диспетчер устройств, мы обнаружили, что видеокарта GeForce находится в безработном состоянии.

    Обескураженные такой картиной мы не опустили руки и продолжили свои попытки активировать NVIDIA PhysX.

    Нами были удалены все драйвера на видеокарты, в том числе и NVIDIA PhysX, и с помощью утилиты … подчищены от них реестры.

    Затем были установлены драйвера в следующей последовательности на NVIDIA PhysX, GeForce и Radeon. Однако после перезагрузки системы панель NVIDIA PhysX была вновь деактивирована, заглянув в диспетчер устройств, мы обнаружили следующую обескураживающую картину:

    Мы запаслись терпением и продолжили наши попытки запустить этот злосчастный тандем. Вновь были удалены все драйверы и подчищены все реестры.

    С третьей попытки нам удалось установить драйверы на обе видеокарты. Последовательность их установки оказалась следующей: Radeon, GeForce и NVIDIA PhysX. После перезагрузки обе видеокарты определились в диспетчере задач и даже заработали демки в панели активации NVIDIA PhysX. Но активировать GeForce GTS 250 так и не получилось, т.к. панель управления видеокартами оказалась вновь деактивирована.

    Нами были проведены пробные тесты демки Cryostasis и Sacred 2: Fallen Angel с активированной аппаратной реализацией физических эффектов, но никаких приростов производительности обнаружено не было.

    На этом мы оставили бесполезные попытки активировать данный тандем.

    Система вновь была очищена от драйверов и в нее были установлены:

  • MSI GeForce GTX 275 896 Mбайт - для ускорения графики;
  • Gainward GeForce GTS 250 1024 Mбайт - для ускорения физики.
  • Драйверы на GeForce и NVIDIA PhysX были установлены с первой попытки.

    После перезагрузки системы мы первым делом заглянули в диспетчер устройств и обнаружили, что обе видеокарты определились системой:

    Панель управления видеокартами NVIDIA PhysX оказалась интегрирована в панель управления драйверами, и мы без проблем установили GeForce GTS 250 на ускорение физических эффектов.

    Обрадованные таким успехом мы приступили непосредственно к тестам.

    Результаты тестов: сравнение производительности. Часть 1 - NVIDIA PhysX OFF (для GeForce GTX 275)

    Для выявления максимальной разницы производительности между системой с одной GeForce GTX 275 и системой на базе GeForce GTX 275 + GeForce GTS 250, мы отключили в панели управления PhysX реализацию физических эффектов у одиночной видеокарты GeForce GTX 275. Это можно было не делать, но у нас возникло желание выяснить, влияет-ли активация этой опции на производительность одиночной видеокарты.

    Brothers in Arms: Hell's Highway

    DirectX 9.0, полноэкранное сглаживание (AA) 0, качество текстур - very high, качество текстур теней - very high, детали теней - very high.


    График min и avg FPS

    В Brothers in Arms: Hell's Highway мы не обнаружили физические эффекты. Как следствие производительность от добавления в систему GeForce GTS 250 не изменилась.

    Clive Barker's: Jericho

    DirectX 9.0, полноэкранное сглаживание (АА) 4, тени - high, фактура - high, размытость - high.


    График min и avg FPS

    В Jericho система на основе GeForce GTX 275 + GeForce GTS 250 показала равную производительность с системой GeForce GTX 275.

    Cryostasis

    DirectX 10.0, полноэкранное сглаживание (AA) on, анизотропная фильтрация (AF16), аппаратная физика - on, качество текстур - high, карты нормалей - high, карты отражений - high, тени - high, размытие движений - on, отражение в воде - on, каустика - on.


    График min и avg FPS


    График процентного соотношения производительности видеокарт

    В игровой сцене Cryostasis система на базе GeForce GTX 275 + GeForce GTS 250 продемонстрировала 30% прирост производительности по сравнению с системой на базе одиночной GeForce GTX 275.


    График min и avg FPS


    График процентного соотношения производительности видеокарт

    А вот при прогоне технической демки игры, в которой реализовано аппаратное ускорение физических эффектов прирост производительности от добавления в систему GeForce GTS 250 составил потрясающие 314%.

    Damnation

    DirectX 9.0, полноэкранное сглаживание (AA) 0, качество постобработки - high, качество текстур - high, качество персонажей - high, игровые эффекты - high, качество теней - high, качество декалей - static & dinamic.


    График min и avg FPS

    В Damnation система на базе GeForce GTX 275 + GeForce GTS 250 показала равную производительность с системой основанной на GeForce GTX 275.

    Gears of War

    DirectX 10.0, полноэкранное сглаживание (АА) - on, качество постпроцессов - very high, качество постобработки - high, качество текстур - very high, детализация персонажа - high, детализация визуальных эффектов - high, качество освещения - динамическое, качество теней - high.


    График min и avg FPS

    В Gears of War нами не было обнаружено никаких физических эффектов и как следствие системы на базе GeForce GTX 275 + GeForce GTS 250 и GeForce GTX 275 показали равную производительность.

    Ghost Recon Advanced Warfighter 2

    DirectX 9.0, полноэкранное сглаживание (AA) - сглаживание краев, анизотропная фильтрация (AF) 16, физика - norm&max, детализация окружения - max, качество текстур - high, качество эффектов - high, динамические тени - high, постэффекты - high, динамические огни - on.


    График min и avg FPS


    График процентного соотношения производительности видеокарт

    Ghost Recon Advanced Warfighter 2 стала первой игрой в сегодняшнем тестировании (не путать с демкой Cryostasis), которая на аппаратном уровне поддерживает ускорение физики. Добавление в систему GeForce GTS 250 увеличило производительность на 427%.

    Gothic 3: Forsaken Gods

    DirectX 9.0, полноэкранное сглаживание (AA) 4, анизотропная фильтрация (AF) 16, дистанция (высокодетализированная) - high, дистанция (низкодетализированная) - high, кеш ресурса - high, детализация объекта - high, версия шейдеров - 3.0, качество текстур - high, качество теней - high, HDR - on.


    График min и avg FPS

    В Gothic 3: Forsaken Gods добавление в систему GeForce GTS 250 не принесло никаких дивидендов.

    Mass Effect

    DirectX 9.0, полноэкранное сглаживание (AA) 0, анизотропная фильтрация 16, динамические тени - on, детализация текстур - very high, размытость движений - on, зернистость - off.


    График min и avg FPS

    В Mass Effect видеокарты тестировались в сцене езды вездехода по заснеженной планете. Погодный условия в этой сцене весьма неблагоприятны - это снежный буран. Мы думали, что взаимодействие множества снежных частиц приведет к загрузке центрального процессора при обсчете физических эффектов, и как следствие падение производительности системы с одной GeForce GTX 275. Но наши надежды оказались неоправданными - добавления в систему GeForce GTS 250 для расчетов физики не принесло никаких дивидендов.

    Medal of Honor

    DirectX 9.0, полноэкранное сглаживание (AA) 0, качество - high.


    График min и avg FPS

    Medal of Honor стала еще одной игрой, в которой системы на базе GeForce GTX 275 + GeForce GTS 250 и GeForce GTX 275 показали равную производительность.

    Mirrors Edge

    DirectX 9.0, полноэкранное сглаживание (AA) 4, детализация текстур - high, качество изображения - high.


    График min и avg FPS


    График процентного соотношения производительности видеокарт

    В Mirrors Edge добавление в систему GeForce GTS 250 подняло ее производительность на 24.

    PT Boats: Knights of the sea

    DirectX 10.0, полноэкранное сглаживание (AA) 2, качество - high.

    График min и avg FPS


    Полным разочарованием стала для нас PT Boats: Knights of the sea - демка этой игры насыщенна взрывами и как следствие в ней взаимодействуют множество объектов. Плюс эта игра разрабатывалась в плотном сотрудничестве с NVIDIA. Но не смотря на вышеперечисленные условия обе системы на базе GeForce GTX 275 + GeForce GTS 250 и GeForce GTX 275 показали равную производительность.

    Sacred 2: Fallen Angel

    DirectX 9.0, полноэкранное сглаживание (АА) 2, детализация теней - very high, детализация рендринга - very high, детализация земли - very high, детализация эффектов - very high, детализация травы - very high, погода - on.


    График min и avg FPS

    В Sacred 2: Fallen Angel первоначально тоже не было обнаружено никаких приростов производительности от добавления в систему GeForce GTS 250.


    График min и avg FPS


    График процентного соотношения производительности видеокарт

    Но после активации PhysX в меню игры система на базе GeForce GTX 275 + GeForce GTS 250 ушла в отрыв от системы с GeForce GTX 275, величина которого составила 767%.

    Terminator Salvation

    DirectX 9.0, полноэкранное сглаживание (АА) 4, настройки по умолчанию.


    График min и avg FPS

    В Terminator Salvation наличие физических эффектов не было обнаружено.

    Unreal Tournament 3: Titan

    DirectX 9.0, полноэкранное сглаживание (AA) 0, анизотропная фильтрация (AF) 0, пост процессы - intence, Hardware PhysX - on, детали текстур - very high, motion blur - on, качество теней - very high, детали моделей - very high.


    График min и avg FPS

    В Unreal Tournament 3: Titan нами были замечены эффекты от попадания пуль в объекты, но добавление в систему GeForce GTS 250 не привело к увеличению производительности.

    В оставшихся играх мы так и не обнаружили явных физических эффектов и как следствие установка в систему GeForce GTS 250 не принесло никаких дивидендов.

    Velvet Assasin

    DirectX 9.0, полноэкранное сглаживание (AA) 4, анизотропная фильтрация (AF) 0, качество текстур - very high, качество теней - very high, качество шейдеров - very high.


    График min и avg FPS

    WarFare

    DirectX 9.0, полноэкранное сглаживание (AA) 4, качество графики - very high, качество текстур - high, качество теней - high, качество травы - high, улучшенные эффекты - on, тени от эффектов - on.


    График min и avg FPS

    X-Men Origins: Wolverine

    DirectX 9.0, полноэкранное сглаживание (AA) 0, качество изображения - high.


    График min и avg FPS

    В оставшихся играх физические эффекты обнаружены не были.

    Результаты тестов: сравнение производительности. Часть 2 - NVIDIA PhysX ON (для GeForce GTX 275)

    Проведя вышеуказанные тесты, мы включили в панели управления драйверов опцию PhysX для системы с одной GeForce GTX 275. Сделано это было для того, чтобы выявить ускоряет одна видеокарта NVIDIA физику в играх или нет.

    Cryostasis


    График min и avg FPS


    График процентного соотношения производительности видеокарт


    График распределения FPS по времени - fps/sec

    В игровой сцене Cryostasis система с одной GeForce GTX 275 показала равный результат с системой, в которой физику ускоряет отдельная видеокарта.


    График min и avg FPS


    График процентного соотношения производительности видеокарт


    График распределения FPS по времени - fps/sec

    В технической демо-версии игры система на базе GeForce GTX 275 + GeForce GTS 250 сумела значительно оторваться от системы с одной GeForce GTX 275.

    Ghost Recon Advanced Warfighter 2


    График min и avg FPS


    График процентного соотношения производительности видеокарт


    График распределения FPS по времени - fps/sec

    В Ghost Recon Advanced Warfighter 2 компьютер с одной GeForce GTX 275 вплотную приблизился к компьютеру на базе GeForce GTX 275 + GeForce GTS 250, что сделало покупку второй видеокарты для ускорения физики абсолютно бесполезной затеей.

    Mirrors Edge


    График min и avg FPS


    График процентного соотношения производительности видеокарт


    График распределения FPS по времени - fps/sec

    В Mirrors Edge система с одной GeForce GTX 275 смогла вплотную приблизиться к системе на базе GeForce GTX 275 + GeForce GTS 250.

    Sacred 2: Fallen Angel


    График min и avg FPS


    График процентного соотношения производительности видеокарт


    График распределения FPS по времени - fps/sec

    В Sacred 2: Fallen Angel нас вновь ждала неожиданность - обе системы показали равную производительность, хотя мы ожидали, что из-за аппаратной реализации физических эффектов система на базе GeForce GTX 275 + GeForce GTS 250 уйдет в значительный отрыв от конкурента.

    Заключение

    Подведем итог сегодняшнему тестированию. В четырех играх из восемнадцати протестированных установка в систему GeForce GTS 250 или активация в драйверах функции PhysX для одиночной GeForce GTX 275 приводят к значительному росту производительности.

    Отдельно стоит отметить игры, в которых ускорение физики происходит на аппаратном уровне - Cryostasis, Ghost Recon Advanced Warfighter 2 и Sacred 2: Fallen Angel. В них отчетливо видно, что процессор при ускорении физики не в состоянии конкурировать с видеокартами - разрыв в производительности между ними составляет 400-800%.

    Также нами было сделано весьма важное открытие: при активации функции PhysX в драйверах GeForce NVIDIA система с одной GeForce GTX 275 показывала близкую, а зачастую и равную производительность с системой на базе GeForce GTX 275 + GeForce GTS 250. Как следствие, покупка GeForce GTS 250 для ускорения физики становится бессмысленной.

    У этого открытия есть еще одна важная подоплека - конкуренция с видеокартами Radeon. Если в игре есть опция отключения физических эффектов, то владельцам Radeon ничего не грозит, но при этом они лишаются глубины погружения в атмосферу игры. Но если эта опция в игре отсутствует, то компьютеры на базе видеокарт GeForce получают неоспоримое преимущество перед конкурентами.

    В дальнейшем мы будем внимательно отслеживать работоспособность технологии NVIDIA PhysX в выходящих новинках игровой индустрии. И постараемся максимально оперативно доносить до Вас эту информацию.

    Дмитрий Прилепских aka Phoenix_

    P.S.

    Использование для тестирования игр утилиты FRAPS в этой статье вызовет критику многих людей. Они считают, что результаты замеров в этом случае неточные и содержат недопустимую погрешность. Подобные доводы были опровергнуты в специальном исследовании, с которым просим всех ознакомиться: "Современные методы тестирования игр".