2 - 2010

Профессиональные решения NVIDIA для ускорения работы с трехмерной графикой

Создание трехмерной графики — далеко не тривиальный процесс, требующий комплексного подхода как к программному, так и к аппаратному обеспечению. Современные профессиональные графические карты — это сплав высоких технологий, объединяющий в единое целое мощный многоядерный графический процессор (GPU) с параллельной архитектурой и программное обеспечение, позволяющее в полной мере задействовать все ресурсы GPU.

Как известно, параллельная архитектура способна обеспечить многократный рост производительности по сравнению с классической архитектурой CPU далеко не во всех случаях. Прежде всего это дифференциальные уравнения, расчет графики, гидродинамики и т.д. Важным элементом является наличие правильного программного кода, который позволит максимально «распараллелить» выполняемые задачи. Если все эти условия соблюдены, эффективность системы многократно возрастает.

Профессиональная трехмерная графика — это во многом не только создание цифрового трехмерного прототипа. Это еще и ряд специфических задач по расчету динамики физических процессов, фотореалистичной визуализации и других, для решения которых создаются специальные профессиональные графические ускорители.

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

Наиболее интересные программно-аппаратные решения в этой области представляет сегодня компания NVIDIA со своей линейкой профессиональных графических карт NVIDIA Quadro FX.

Вот перечень основных задач, которые способны решать такие карты:

  • быстрый и качественный графический рендеринг в САПР-приложениях;
  • аппаратное ускорение физики силами движка NVIDIA PhysX;
  • поддержка стереоскопического изображения;
  • система расчета трассировки лучей OptiX;
  • поддержка CUDA — среды разработки, позволяющей писать софт для сложных вычислительных задач, не связанных с графикой.

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

NVIDIA Quadro FX — это серия профессиональных графических карт, изначально созданных именно для расчета графики в 3D-приложениях, таких как Autodesk 3ds max, AutoCAD, Autodesk Inventor, Autodesk Revit и т.д. Практически все модели профессиональных видеокарт NVIDIA обеспечивают гораздо более высокую скорость графического рендеринга, нежели обычные пользовательские видеокарты. При этом не стоит забывать о качестве изображения и сроке службы. Эти показатели у профессиональных карт также значительно выше.

Аппаратный физический движок PhysX уже давно завоевал себе место в области видеоигр, где в реальном времени необходимо просчитывать взрывы, огонь, воду, разрушение объектов и т.д. Но эта технология оказалась крайне полезной и для профессионалов. В частности, PhysX в качестве плагина активно используется в Autodesk 3ds max и Autodesk Maya и позволяет создавать симуляцию тканей, флюидов, твердых и мягких тел.

Данный плагин можно бесплатно скачать на сайте NVIDIA.

Функция стереоскопии — технология, которая в последние годы получила второе дыхание. Многие студии, создающие трехмерную мультипликацию, помимо обычной версии в обязательном порядке выпускают стереоверсию для специально приспособленных для этого кинотеатров. Компанией NVIDIA были разработаны очки, которые позволяют работать с трехмерными моделями в стереорежиме. Принцип их работы основан на затворных механизмах, встроенных в очки, что дает возможность передавать изображение в полноценной цветовой гамме, в отличие от простых двухцветных очков.

Безусловно, объемные 3D-мо-дели в видовых окнах позволяют лучше ориентироваться в пространстве сцены. Создание же стереокино без подобной технологии вообще немыслимо.

Система расчета трассировки лучей OptiX — технология, обес-печивающая возможность делать финальный фотореалистичный рендер проекта в разы быстрее! Достаточно сказать, что знаменитое подразделение Lucas Films для создания спецэффектов — компания Industrial Light & Magic, на счету которой визуальные эффекты для фильмов «Пираты Карибского моря», «Железный человек», «Трансформеры», «Индиана Джонс» и др., — в настоящий момент строит новую рендер-ферму именно на базе GPU NVIDIA.

Отметим, что технологии реалистичной визуализации не ограничиваются лишь технологией OptiX. Относительно недавно компания NVIDIA приобрела разработчика рендера mental ray — компанию mental images. После совместной работы на стыке программного обеспечения mental images и аппаратных средств NVIDIA был анонсирован выпуск нового уникального продукта под названием iray. Разработчики утверждают, что iray войдет в состав новой версии mental ray 3.8. Уже совсем скоро мы сможем просчитывать наши проекты средствами mental ray, задействуя при этом не центральный процессор, который, по сути, для такого рода расчетов не предназначен, а GPU NVIDIA.

Несколько слов стоит сказать и о технологии CUDA, которую поддерживают все последние поколения графических карт NVIDIA. CUDA — это архитектура, позволяющая использовать мощь графического процессора для вычислений общего назначения. По сути, это среда разработки, дающая возможность выполнять любые вычисления, для которых предпочтительна именно параллельная архитектура процессора. В данный момент архитектура CUDA поддерживает языки программирования C, С++, Fortran, и это не предел. Платформа CUDA обеспечивает практически ничем не ограниченные возможности по использованию ресурсов GPU для расчетов любой сложности.

Технологии не стоят на месте, скорее, наоборот, в последние годы мы наблюдаем их экспоненциальный рост и появление новых направлений развития. Сегодня графическая карта в компьютере специалиста по 3D — это не только приспособление, увеличивающее частоту смены кадров при работе со сложными трехмерными моделями, но и средство, ускоряющее работу с трехмерной графикой практически во всем ее многообразии.

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

САПР и графика 2`2010