Новая статья: GeForce RTX больше не нужен? Тесты трассировки лучей на ускорителях GeForce GTX 10 и 16
После того как NVIDIA продемонстрировала трассировку лучей в реальном времени на видеокартах серии GeForce RTX, трудно сомневаться в том, что именно за этой технологией (в разумном сочетании с алгоритмом растеризации) будущее компьютерных игр. Однако графические процессоры на основе архитектуры Turing со специализированными RT-ядрами до недавнего времени считались единственной категорией дискретных GPU, которая располагает подходящей для этого вычислительной мощностью.
Как показали тесты первых игр, освоивших Ray Tracing (Battlefield V, Metro Exodus и Shadow of the Tomb Raider), даже ускорители GeForce RTX (особенно младший из них — RTX 2060) испытывают существенное падение частоты смены кадров в задачах гибридного рендеринга. Несмотря на первые успехи, трассировку лучей в реальном времени еще нельзя считать зрелой технологией. Лишь тогда, когда не только самые передовые и дорогостоящие устройства, но и графические карты среднего ценового уровня достигнут прежних стандартов быстродействия в играх новой волны, можно будет объявить, что смена парадигм, запущенная компанией Дженсена Хуанга, наконец, совершилась.
Трассировка лучей на «Паскалях» — за и против
Но уже сейчас, пока еще не сказано ни слова о будущем преемнике архитектуры Turing, NVIDIA решила подстегнуть прогресс. На мероприятии GPU Technology Conference в прошлом месяце зеленая команда сообщила, что ускорители на чипах Pascal, а также младшие представители семейства Turing (серия GeForce GTX 16) приобретут функцию трассировки лучей в реальном времени наравне с продуктами под маркой RTX. Сегодня обещанный драйвер уже можно скачать на официальном сайте NVIDIA, а список устройств включает модели семейства GeForce 10, начиная с GeForce GTX 1060 (версия 6 Гбайт), профессиональный ускоритель TITAN V на чипе Volta, и, разумеется, новоприбывшие модели средней ценовой категории на чипе TU116 — GeForce GTX 1660 и GTX 1660 Ti. Обновление коснулось и ноутбуков с соответствующими GPU.
С технической точки зрения здесь нет ничего сверхъестественного. Графические процессоры с унифицированными шейдерными блоками могли выполнять Ray Tracing задолго до появления архитектуры Turing, хотя в то время не располагали достаточным быстродействием для того, чтобы эта возможность была востребована в играх. Кроме того, отсутствовал единый стандарт программных методов, помимо закрытых API наподобие фирменного NVIDIA OptiX. Теперь, когда существует расширение DXR для Direct3D 12 и аналогичные библиотеки в интерфейсе программирования Vulkan, игровой движок может обращаться к ним вне зависимости от того, оснащен ли графический процессор специализированной логикой — лишь бы драйвер давал такую возможность. У чипов Turing для этой цели есть отдельные RT-ядра, а в GPU архитектуры Pascal и процессоре TU116 трассировка лучей реализована в формате вычислений общего назначения на массиве шейдерных ALU.
Однако все, что нам известно об архитектуре Turing со слов самой NVIDIA, говорит о том, что Pascal не годится для приложений с поддержкой DXR. В прошлогодней презентации, посвященной флагманским моделям семейства Turing — GeForce RTX 2080 и RTX 2080 Ti — инженеры приводили следующие выкладки. Если бросить все ресурсы лучшей из потребительских видеокарт прошлого поколения — GeForce GTX 1080 Ti — на вычисления трассировки лучей, то итоговая производительность не превысит 11 % от того, на что в теории способен RTX 2080 Ti. Не менее важно и то, что свободные CUDA-ядра чипа Turing в то же время можно использовать для параллельной обработки других компонентов изображения — выполнения шейдерных программ, очереди неграфических расчетов Direct3D при асинхронном исполнении и так далее.
В реальных играх ситуация сложнее, ведь на существующем железе разработчики дозированно пользуются функциями DXR, а львиную долю вычислительной нагрузки по-прежнему занимает растеризация и шейдерные инструкции. К тому же часть различных эффектов, которые создаются при помощи трассировки лучей, неплохо исполняются и на CUDA-ядрах чипов Pascal. К примеру, зеркальные поверхности в Battlefield V не подразумевают вторичного отражения лучей, а следовательно, являются посильной нагрузкой для мощных видеокарт прошлого поколения. То же относится и к теням в Shadow of the Tomb Raider, хотя рендеринг сложных теней, сформированных несколькими источниками света, уже представляет собой более трудную задачу. А вот глобальное освещение в Metro Exodus с трудом дается даже «Тьюрингу», и от Pascal нельзя ожидать в какой-либо степени сопоставимых результатов.
Как ни крути, речь идет о многократной разнице в теоретическом быстродействии между представителями архитектуры Turing и их ближайшими аналогами на кремнии Pascal. Причем в пользу Turing играет не только присутствие RT-ядер, но и многочисленные усовершенствования общего характера, свойственные ускорителям нового поколения. Так, чипы Turing умеют параллельно выполнять операции над вещественными (FP32) и целочисленными (INT) данными, несут большой объем локальной кеш-памяти и отдельные CUDA-ядра для расчетов сниженной точности (FP16). Все это значит, что Turing не только лучше справляется с шейдерными программами, но и может сравнительно эффективно обсчитывать трассировку лучей без специализированных блоков. Ведь настолько ресурсоемким рендеринг при помощи Ray Tracing делает не только и не столько поиск пересечений между лучами и элементами геометрии (которым занимаются RT-ядра), сколько вычисление цвета в точке пересечения (shading). И между прочим, перечисленные достоинства архитектуры Turing в полной мере относятся к GeForce GTX 1660 и GTX 1660 Ti, хотя в чипе TU116 нет RT-ядер, поэтому тесты этих видеокарт с программной трассировкой лучей представляют отдельный интерес.
Но довольно теории, ведь мы уже собрали данные о производительности «Паскалей» (а также младших «Тьюрингов») в Battlefield V, Metro Exodus и Shadow of the Tomb Raider на основе собственных измерений. Заметим, что ни драйвер, ни сами игры не регулируют количество лучей для того, чтобы снизить нагрузку на GPU без RT-ядер, а значит, качество эффектов на GeForce GTX и GeForce RTX должно быть одинаковым.
Показатели средней и минимальной кадровых частот выводятся из массива времени рендеринга индивидуальных кадров, который записывает встроенный бенчмарк (Metro Exodus, Shadow of the Tomb Raider) или утилита OCAT, если в игре его нет (Battlefield V).
Средняя частота смены кадров на диаграммах является величиной, обратной среднему времени кадра. Для оценки минимальной кадровой частоты вычисляется количество кадров, сформированных в каждую секунду теста. Из этого массива чисел выбирается значение, соответствующее 1-му процентилю распределения.
Участники тестирования
В тестировании производительности приняли участие следующие видеокарты:
Battlefield V
Благодаря тому, что Battlefield V сама по себе является довольно нетребовательной игрой (особенно в режимах 1080p и 1440p), а трассировка лучей в ней применяется фрагментарно, испытание GeForce 10-й серии с опцией DXR принесло обнадеживающие результаты. Впрочем, из всех моделей без поддержки Ray Tracing на уровне кремния нам пришлось ограничиться моделями GTX 1070/1070 Ti и GTX 1080/1080 Ti. Игры Electronic Arts с подозрением реагируют на частую смену конфигурации железа и блокируют пользователя на период в одни или несколько суток. Поэтому замеры производительности GeForce GTX 1060 и двух устройств серии GeForce GTX 16 появятся в этой статье позже, как только Battlefield V снимет ограничения с нашей тестовой машины.
В процентном выражении любой из участников тестирования испытывает примерно одинаковое падение быстродействия при различных установках качества трассировки лучей вне зависимости от разрешения экрана. Так, быстродействие видеокарт под маркой GeForce RTX 20 снижается на 28–43 % при низком и среднем качестве эффектов DXR, а при высоком и максимальном — на 37–53 %.
Если речь идет о старших моделях семейства GeForce 10, то на уровнях трассировки лучей Low и Medium игра теряет от 36 до 42 % FPS, а при высоком качестве (настройки High и Ultra) DXR съедает уже 54–67 % частоты смены кадров. Заметим, что во многих, если не в большинстве игровых сцен Battlefield V нет выраженной разницы между настройками Low и Medium, а также между High и Ultra — ни по четкости изображения, ни по быстродействию. В надежде на то, что графические процессоры Pascal окажутся более чувствительными к этому параметру, мы провели тесты при всех четырех настройках. И действительно, проявились определенные различия, но только при разрешении 2160p и в пределах 6% FPS.
В абсолютных показателях любой из старших ускорителей на чипах Pascal может поддерживать кадровую частоту выше 60 FPS в режиме 1080p при сниженном качестве отражений, а GeForce GTX 1080 Ti претендует на аналогичный результат даже при трассировке на уровне High. Но стоит перейти к разрешению 1440p, и уже лишь GeForce GTX 1080 и GTX 1080 Ti обеспечивают комфортный фреймрейт на уровне 60 FPS и выше при качестве трассировки лучей Low или Medium, а в режиме 4К ни одна из карт прошлого поколения не обладает подходящей вычислительной мощностью (как, впрочем, и любой Turing за исключением флагманского GeForce RTX 2080 Ti).
Если искать параллели между конкретными ускорителями под маркой GeForce GTX 10 и GeForce RTX 20, то лучшая модель прошлого поколения (GeForce GTX 1080 Ti), которая в задачах стандартного рендеринга без DXR является аналогом GeForce RTX 2080, опустилась на уровень GeForce RTX 2070 при сниженном качестве трассировки лучей, а при высоком может бороться разве что с GeForce RTX 2060.