Всего было анонсировано три модели: Quadro RTX 5000, Quadro RTX 6000 и Quadro RTX 8000. Все новинки основаны на архитектуре Turing. Уже известно, что площадь новых GPU составляет 754 мм2, а количество транзисторов достигает 18,6 млрд. При этом у старшей из карт 4608 ядер CUDA. Напомним, GPU GV100 имеет площадь 815 мм2, содержит 21,1 млрд транзисторов и включает 5376 ядер CUDA (CUDA – это архитектура параллельных вычислений от NVIDIA, позволяющая существенно увеличить вычислительную производительность благодаря использованию GPU процессоров).
Архитектура Turing оснащена специальными процессорами для трассировки лучей – ядрами RT. Они ускоряют расчеты перемещения света и звука в 3D-средах до 10 миллиардов лучей в секунду. Turing позволяет осуществлять трассировку лучей в реальном времени в 25 раз быстрее по сравнению с предыдущим поколением GPU Pascal, а финальный рендеринг эффектов в фильмах на GPU в 30 раз быстрее, чем на CPU.
Архитектура Turing существенно улучшает производительность растеризации по сравнению с предыдущим поколением GPU Pascal благодаря улучшенным процессам обработки графики и программируемым технологиям шейдинга.Технологии включают в себя Variable-Rate Shading, Texture-Space Shading и Multi-View Rendering, которые обеспечивает гибкую интерактивность с большими моделями и сценами, а также улучшенными возможностями в VR.
Turing оснащена новыми тензорными ядрами; эти процессоры ускоряют тренировку и инференс глубоких нейронных сетей, обеспечивая до 500 трлн тензорных операций в секунду. Данный уровень производительности существенно ускоряет такие функции на базе искусственного интеллекта, как шумоподавление, масштабирование разрешения и изменение скорости видео, а также позволяет быстрее создавать приложения с новыми производительными возможностями.
GPU на базе архитектуры Turing оснащены новым мультипотоковым процессором, который поддерживает до 16 трлн операций с плавающей точкой параллельно с 16 трлн целочисленных операций в секунду. Разработчики могут использовать до 4608 ядер CUDA с поддержкой NVIDIA CUDA 10 и SDK FleX и PhysX, создавая сложные симуляции частиц или динамики жидкостей для научной визуализации, виртуальных сред и эффектов. Что касается параметров самих ускорителей, они таковы:
Адаптеры |
Кол-во ядер CUDA |
Объем памяти, ГБ |
Частота памяти ГГц |
Кол-во тензорных ядер |
Цена $ |
Quadro RTX 5000 |
3072 |
16(GDDR6) |
14 |
384 |
2300 |
Quadro RTX 6000 |
4608 |
32(GDDR6) |
14 |
576 |
6300 |
Quadro RTX 8000 |
4608 |
48(GDDR6) |
14 |
576 |
10000 |
Nvidia называет новые ускорители первыми графическими решениями для трассировки лучей. Поэтому стоит отметить, что для младшей карты заявлена скорость в 6 GigaRays/s, а для двух старших — в 10 GigaRays/s. Использование интерфейса NVLink позволяет объединять адаптеры в связки по два. Что касается портов, то карты получили по четыре DisplayPort 1.4 и по одному VirtualLink.
Что такое трассировка лучей, чем в принципе отличаются разные методы рендеринга и какие у них существуют достоинства и недостатки?
Для расчета глобального освещения, отрисовки теней и других эффектов приходится использовать хитрые хаки, основанные на той же растеризации. В результате, за все эти годы GPU стали весьма сложными, научились ускорять обработку геометрии в вершинных шейдерах, качественно отрисовывать пиксели при помощи пиксельных шейдеров и даже применять универсальные вычислительные шейдеры для расчета физики, постэффектов и множества других вычислений. Но основа работы GPU все время оставалась той же.
У трассировки же лучей основная идея совершенно другая, но в теории чуть ли не проще. При помощи трассировки имитируется распространение лучей света по 3D-сцене. Трассировка лучей может выполняться в двух направлениях: от источников света или от каждого пикселя в обратном направлении, далее обычно определяется несколько отражений от объектов сцены в направлении камеры или источника света, соответственно. Просчет лучей для каждого пикселя сцены менее требователен вычислительно, а проецирование лучей от источников света дает более высокое качество рендеринга.
Для достижения фотореалистичности нужно учитывать характеристики материалов в виде количества отражаемого и преломляемого ими света, и для расчета цвета пикселя нужно провести еще лучи отражения и преломления. Их можно мысленно вообразить как лучи, отраженные от поверхности шара и преломленные ей. Такой улучшенный алгоритм трассировки лучей был изобретен уже несколько десятков лет назад, и эти дополнения стали большим шагом по увеличению реалистичности синтетической картинки. К сегодняшнему дню метод обрел множество модификаций, но в их основе всегда лежит нахождение пересечения лучей света с объектами сцены.
Компания Nvidia, еще на SIGGraph 2009 анонсировала технологию OptiX, предназначенную для трассировки лучей в реальном времени на графических процессорах их производства. Новый API открыл доступ к выполнению трассировки лучей в профессиональных приложениях с необходимой гибкостью, в частности —двунаправленному path tracing и другим алгоритмам. Основанные на технологии OptiX рендереры уже существуют для многочисленного профессионального ПО, вроде Adobe AfterEffects, Bunkspeed Shot, Autodesk Maya, 3ds max и других приложений, и используются профессионалами в работе. К рендерингу реального времени это можно отнести лишь с определенными допущениями, потому что при высокой частоте кадров получалась очень шумная картинка. Лишь через несколько лет индустрия вплотную подошла к применению аппаратного ускорения трассировки лучей уже в играх.
Техника рендеринга с трассировкой лучей отличается высоким реализмом, по сравнению с растеризацией, так как она имитирует распространение лучей света очень похоже на то, как это происходит в реальности (естественно, все равно не на 100% точно). Трассировка позволяет воссоздать весьма реалистичные тени, отражения и преломления света, и поэтому она давно ценится в архитектурных приложениях и промышленном дизайне. Технология помогает специалистам этой сферы задолго до физического воплощения понять, как будут смотреться материалы при различном освещении в реальном мире.
В явные достоинства трассировки можно также включить то, что вычислительная сложность метода мало зависит от геометрической сложности сцены, а вычисления отлично распараллеливаются — можно легко и независимо трассировать несколько лучей одновременно, разделяя поверхность экрана на зоны для их трассировки на разных вычислительных ядрах. Также очень полезно и то, что отсечение невидимых поверхностей является логическим следствием работы алгоритма.
Но важнее все же именно то, что метод имитирует реальное распространение лучей света, получая итоговую картинку более высокого качества, по сравнению с растеризацией.
3D-разработчики приложений реального времени достигнут предела существующего метода растеризации, и им придется перейти на метод с продвинутой моделью освещения, похожей на то, что происходит в реальности. Скорее всего, это будет именно трассировка лучей. Но так как трассировка лучей весьма затратный метод и ее вряд ли потянут даже самые мощные системы, то поначалу могут быть использованы гибридные методы рендеринга, сочетающие производительность растеризации и качество трассировки лучей. Есть вариант смешения двух методик. К примеру, основу геометрии можно растеризовать с высокой производительностью, а затем при помощи трассировки лучей просчитывать только мягкие тени и отражения. Хотя растеризация продолжит играть важнейшую роль и в ближайшие годы с появлением гибридного рендеринга, доля алгоритмов трассировки лучей в таких движках будет постепенно расти исходя из роста вычислительных возможностей будущих GPU.