Ранее на портале isicad.ru были опубликованы две фундаментальные статьи Дмитрия:
— Autodesk Maya 2016: Производительность, инструменты, процесс и что нового и
— Виртуализация рабочих станций с использованием платформы NVIDIA GRID.
Блог Д.Чехлова: dimson3d.
С помощью данной статьи вы познакомитесь с двумя решениями, предлагаемыми корпорацией NVIDIA своим клиентам; модулем расширения NVIDIA Iray+ for 3ds Max и серверным решением NVIDIA Iray Server. Вы узнаете об основных возможностях Iray+ for 3ds Max, а также сможете сравнить с реализацией ядра Iray поставляемого с 3ds Max по умолчанию и познакомитесь с поддержкой распределённых вычислений реализуемых с помощью NVIDIA Iray Server. Около 5 лет назад я опубликовал обзор системы визуализации NVIDIA Iray в пакете расширений SAP для Autodesk 3ds Max 2011. Проект интеграции Iray в 3ds Max развивался и сейчас представляет собой мощный и гибкий инструмент для визуализации трехмерных сцен и анимации с возможностью применения GPU от компании NVIDIA и технологии NVIDIA CUDA для ускорения вычислений в процессах визуализации. Он реализован на основе концепции, заложенной разработчиками Autodesk, а это накладывает определенные ограничения на реализации ряда важных функций самого ядра визуализации Iray и внедрение новых технологий. Ядро системы визуализации Iray разрабатывается усилиями NVIDIA, а с недавних пор на его основе компания самостоятельно создает свои собственные расширения для таких пакетов как Autodesk 3ds Max, Autodesk Maya, Autodesk Revit, Rhinoceros и специальную редакцию NVIDIA Iray Server, используемую для распределенных вычислений. С помощью данной статьи вы познакомитесь с двумя решениями, предлагаемыми корпорацией NVIDIA своим клиентам: модулем расширения NVIDIA Iray+ for 3ds Max и серверным решением NVIDIA Iray Server. Вы узнаете об основных возможностях Iray+ for 3ds Max, а также сможете сравнить с реализацией ядра Iray, поставляемого с 3ds Max по умолчанию и познакомитесь с поддержкой распределённых вычислений реализуемых с помощью NVIDIA Iray Server.
Содержание:
- Немного о вычислениях на GPU
- Что такое NVIDIA Iray+ for 3ds Max?
- Распределенная визуализация с помощью NVIDIA Iray Server
- Тестирование производительности GPU в визуализации с NVIDIA Iray Server
- Лицензирование NVIDIA Iray+ for 3ds Max и NVIDIA Iray Server
- Итог
- Полезные ссылки
Немного о вычислениях на GPU
Одной из важнейших особенностей современных центральных процессоров является поддержка нескольких ядер, которые определяются операционной системой как логические процессоры. В большинстве задач данный подход позволяет добиться хорошей производительности, например, в распараллеливаемых процессах, таких как визуализация.Центральные процессоры в первую очередь ориентированы на выполнение последовательных алгоритмов, которые далеко не всегда могут хорошо выполняться в нескольких параллельных потоках, а следовательно, без соответствующей оптимизации, производительность приложений с последовательными алгоритмами может значительно снижаться.
Одной из особенностей центральных процессоров было следование так называемому "Закону Мура", который описывает повышение количества транзисторов, частоты и производительности процессоров в два раза каждые 18 месяцев. Но за последнее десятилетие процессоры достигли определенного предела, когда повышение частоты и количества транзисторов на одно ядро переставали оказывать должное влияние.
Этот предел, можно сказать, стал началом новой эры – эры многоядерных процессоров и параллельных вычислений, доступных обычному пользователю. Современные процессоры используют от 2 до 18 ядер, но это ощутимо меньше по сравнению с множеством, хоть и упрощенных, но не менее производительных, ядер графических процессоров. В отличие от центральных процессоров (CPU), в современных графических ускорителях (GPU), в зависимости от модели, доступно более 512 вычислительных ядер, а с помощью специализированных API можно получить высокий прирост скорости вычислений в хорошо распараллеливаемых задачах.
Рис. 1. Общая схема архитектур современных CPU и GPU
Каждое новое поколение архитектур графических процессоров увеличивает свою производительность раз в два или три года. На данный момент наиболее производительной архитектурой графических ускорителей NVIDIA является архитектура Maxwell, а уже в 2016 году будет анонсирована архитектура следующего поколения, получившая имя Pascal.
Рис. 2. Производительность архитектур GPU NVIDIA в тесте SGEMM / W
Алгоритмы, используемые в процессе визуализации, превосходно распараллеливаются, а такие физические модели как волновая теория света превосходно поддаются математическому описанию и вычислениям на GPU. Такие инструменты визуализации, как NVIDIA Iray, NVIDIA mental ray, Chaos Group V-Ray RT, Otoy Octane Renderer, Cebas moskitoRender и др., поддерживают ускорение вычислений с помощью GPU и используют их возможности для повышения скорости визуализации.
Что такое NVIDIA Iray+ for 3ds Max?
Модуль расширения NVIDIA Iray+ является физически корректным средством визуализации с поддержкой материалов на основе стандарта NVIDIA Material Definition Language (NVIDIA MDL). Ядро визуализации позволяет создавать высококачественные изображения и анимационные последовательности с реалистичными материалами, камерами и освещением. Освещение в визуализируемом с помощью Iray+ изображении аналогично освещению в реальном мире и опирается на то, как свет рассеивается и взаимодействует с материалами и объектами.Инструментарий Iray+ предоставляет больше возможностей по сравнению с текущей реализацией Iray в Autodesk 3ds Max, включая новые возможности, такие как полная поддержка стандарта NVIDIA MDL, интерактивная визуализация, вычисления по сети и улучшенное решение для создания физически корректных и реалистичных материалов на основе концепции Layering Shaders.
Модуль Iray+ представлен двумя версиями Iray+ и Iray+ Interactive. В режиме Iray+ создаются изображения высокого качества, выполняется анализ освещенности, а режим Iray+ Interactive позволяет вам выполнять быструю навигацию по трехмерной сцене и управлять сценой в режиме реального времени без значительного снижения производительности. Возможности Iray+ Interactive базируются на функциях библиотеки трассировки луча NVIDIA OptiX.
Совместно с компанией Lightworks была разработана обширная библиотека высококачественных материалов и интуитивно понятный пользовательский интерфейс для их редактирования, который позволяет создавать необходимые материалы за считанные минуты. Фотометрические источники света и физически достоверная модель системы небосвода позволяют имитировать освещение сцены аналогично тому, как это происходит в реальном мире. Iray+ также поддерживает удаленную/распределенную визуализацию по сети, которая позволит вам использовать облачные решения с GPU и создавать собственные фермы для визуализации.
Система визуализации NVIDIA Iray+ может быть использована со всеми современными GPU линеек NVIDIA GeForce, NVIDIA Quadro и NVIDIA Tesla, поддерживающими NVIDIA CUDA. Разработчики рекомендуют использовать GPU на основе архитектур Fermi, Kepler и Maxwell. Наибольшей производительности в вычислениях и скорости визуализации можно достигнуть за счет применения GPU на основе архитектуры Maxwell, например NVIDIA Quadro M4000 или NVIDIA Quadro M6000.
Рис. 3. Интерфейс Autodesk 3ds Max 2016 с выбранным в качестве текущей системы визуализации NVIDIA Iray+
Режим визуализации Iray+ Interactive использует дополнительные алгоритмы аппроксимации, чтобы имитировать реалистичность при минимизации нежелательных шумов. Это дает вам бо́льшую скорость в рабочем процессе. Возможность использовать оба режима визуализации одновременно означает, что вы можете быстро просмотреть сцену с помощью визуализации в режиме Iray+ Interactive на рабочей станции и в то же время выполнять финальную визуализацию удаленно в режиме Iray+, отправив задания на удаленный узел с NVIDIA Iray Server.
Система визуализации NVIDIA Iray+ for 3ds Max разработана, чтобы дополнять существующие рабочие процессы, а не переделывать их заново. Разработчики минимизировали интерфейс Iray+ до минимума и где это возможно. Добавили собственные объекты и параметры с четким представлением в знакомых форматах, используемых в 3ds Max.
Визуализатор разработан с учетом оптимального применения графических процессоров (GPU) для придания уверенности в том, что процесс визуализации будет быстрым и качественным, на столько, на сколько это возможно. Полностью поддерживается визуализация, как на локальном компьютере, так и визуализация на удаленных узлах в сети, а также может быть выполнена совместно с множеством инструментов для пакетной визуализации, например Autodesk Backburner или Thinkbox Software Deadline.
Система визуализации NVIDIA Iray+ для 3ds Max является одним из нескольких продуктов в линейке NVIDIA Iray, включая функции обмена данными и совместимости c другим программным обеспечением. Это означает, что материалы на основе MDL и другие элементы могут быть использованы на каждом этапе в процессе создания образа: от этапа прототипа, моделирования и до производства. NVIDIA Iray+ для 3ds Max включает в себя инструменты преобразования материалов на основе шейдеров mental ray и Autodesk Materials Library, а также инструменты преобразования сцен.
Система визуализации NVIDIA Iray используется специалистами во многих отраслях промышленности, включая автомобилестроение, ювелирные изделия, архитектуру, дизайн интерьера и многое другое. Обширная библиотека материалов обеспечивает основу для создания практически любого материала. Материалы на основе спецификаций NVIDIA MDL дают возможности создания и обмена любым материалом между системами визуализации, поддерживающими ее, например, будущий релиз V-Ray RT GPU for 3ds Max должен получить поддержку NVIDIA MDL.
Интерфейс NVIDIA Iray+
Глобальные параметры системы визуализации находятся в диалоговом окне Render Settings. С их помощью вы можете выполнить настройку времени визуализации и количества образцов выборки для получения желаемого качества, получаемого в процессе вычислений изображения. Параметры Iray+ сосредоточены в трех вкладках: Iray+, Settings и Render Elements.Рис. 4. Параметры визуализатора Iray+
Рис. 5. Пример визуализации сцены интерьера с различным количеством образцов выборки. Слева 50 образцов на кадр, слева 2500 образцов на кадр
Рис. 6. Пример визуализации сцены интерьера с применением различных методов и алгоритмов выборки: Basic Sampler, Caustic Sampler и Architectural Sampler
Благодаря режиму аппроксимации отраженного света (Approximate Bounced Light) вы можете добавить аппроксимацию непрямого освещения в сцене. В то же время благодаря режиму аппроксимации площадных источников света (Approximate Area Lights) можно выполнить оптимизацию за счет замены площадных источников света на более простые в плане вычислений точечные источники (point lights).
Вкладка Settings предоставляет возможность тонкой настройки Iray+ для визуализации сцены. С помощью этой вкладки пользователь может выполнить настройку тонов, температуру, интенсивность бликов, тени, насыщенность и экспозицию визуализируемого изображения.
Рис. 7. Пример визуализации изображений без коррекции тонов, с коррекцией тонов в Adobe Photoshop и с активной в глобальных параметрах визуализатора коррекцией тонов
Рис. 8. Пример применения различных профилей баланса белого при активном режиме Tone Mapping
Рис. 9. Диалоговые окна Queue Server и Streaming Server используемые для настройки подключения к удаленным вычислительным узлам
Рис. 10. Очередь заданий на удаленном компьютере с Iray Server
Совет. Для понимания конфигурации multi-GPU систем и оптимальной настройки драйвера NVIDIA для работы с GPU-accelerated визуализаторами рекомендую прочитать пост «Особенности настройки multi gpu системы для V-Ray 3.0 for Maya» в моем блоге. В данном посте я описал процесс настройки нескольких GPU для визуализации с V-Ray RT GPU, но принципы, описываемые в нем, применимы к NVIDIA Iray+ и другим системам визуализации с GPU ускорением.
Для визуализации сцен с учетом проходов можно использовать возможности вкладки Render Elements. При использовании формата OpenEXR появляется возможность сохранять данные отдельных элементов в виде каналов изображения и впоследствии использовать их на этапе композитинга и пост-обработки.
В отличие от mental ray for 3ds Max, помимо вывода отдельных элементов (проходов) изображения, Iray+ позволяет использовать возможности новой парадигмы на основе Light Path Expressions. Каждый из элементов изображения, записанный в виде канала файла OpenEXR, определяется с помощью несложного уравнения, которое может быть использовано для любой сцены и любого объекта.
Рис. 11. Пример визуализации сцены с интерьером и вывода нескольких элементов
Разработка материалов в Iray+ и библиотека vMaterials
В отличие от NVIDIA Iray, входящего в поставку 3ds Max, NVIDIA Iray+ предоставляет пользователям больше возможностей для разработки материалов на основе родных шейдеров и новейшего языка NVIDIA Material Definition Language (NVIDIA MDL).Пользователи, использующие NVIDIA Iray включенный в поставку 3ds Max, знают, что он поддерживает возможности стандартного шейдера Arch&Design, а также для него разрабатывается отдельный шейдер iray Material, доступный на форуме NVIDIA ARC. Но разработчики Iray+ пошли дальше и реализовали поддержку новой парадигмы разработки материалов на основе многослойных шейдеров.
Рис. 12. Шейдеры материалов Iray+ доступные в Slate Material Editor
Рис. 13. Блок-схема шейдера материала Iray+ Material
Рис. 14. Пример материала, содержащего три слоя и его визуализация с помощью Iray+
Если вы планируете разрабатывать свои собственные материалы с применением языка NVIDIA Material Definition Language http://www.nvidia-arc.com/products/iray/mdl-materials.html , NVIDIA Iray+ предоставляет удобные инструменты для управления библиотеками материалов MDL и их применения на основе Iray+ Material.
Когда вы импортируете файл *.mdl, параметры материала будут преобразованы в элементы интерфейса редактора материалов. Это позволяет разрабатывать собственные материалы с множеством параметров и реализовывать их интерфейс за счет простых функций языка MDL.
Рис. 15. Глобальные параметры путей к материалам MDL и пример интерпретации функций параметров в интерфейсе редактора материалов
Функции импорта и экспорта материалов *.mdl позволяют сохранять разработанный вами шейдер Iray+ Material в универсальном формате, что позволяет впоследствии использовать материал повторно или в другом приложении, у которого есть поддержка NVIDIA Iray (например, Maya, Rhino, Revit или mental ray Standalone).
Рис. 16. Пример визуализации материала, разработанного с помощью языка NVIDIA MDL
Совет. Для знакомства с языком NVIDIA MDL и его базовыми функциями, вы можете загрузить мою презентацию «Введение в NVIDIA Material Definition Language: разработка шейдеров для mental ray и iray» с международной конференции CG EVENT 2015, а также презентацию «Sharing Physically Based Materials Between Renderers with MDL» с SIGGRAPH 2015. Также я рекомендую познакомиться с гидом NVIDIA MDL Handbook, предоставляющим введение в концепцию и методы разработки материалов на основе MDL.
Для обеспечения большей производительности художников и дизайнеров, разработчики NVIDIA создали целую библиотеку материалов с применением языка NVIDIA MDL. Библиотека vMaterials http://www.nvidia.com/object/vmaterials.html доступна бесплатно и может быть использована с любой из реализаций NVIDIA Iray и NVIDIA mental ray, так как вы можете просто импортировать файлы *.mdl и выполнять визуализацию.
Рис. 17. Пример визуализации нескольких материалов из библиотеки vMaterials
Совет. Если вы используете стандартную реализацию MDL Material в Autodesk 3ds Max 2016 и Autodesk Maya 2016, можно установить библиотеку vMaterials и использовать входящие в нее материалы вместе с NVIDIA iray и NVIDIA mental ray входящими в поставку 3D редакторов.
Если вы раньше работали с mental ray, Iray+ предоставляет инструмент для преобразования данных сцены 3ds Max из mental ray в Iray+. В основном меню 3ds Max необходимо выбрать Iray => Iray+ Scene Converter. И в появившемся диалоговом окне Iray+ Scene Converter вы сможете увидеть, какие элементы сцены можно/нельзя преобразовывать и что поддерживается для визуализации с помощью NVIDIA Iray+.
Рис. 18. Диалоговое окно Iray+ Scene Converter. С помощью данного окна можно выполнять преобразование данных в сцене 3ds Max
Источники света и камеры
Как и любая другая система визуализации, представленная в виде отдельного модуля расширения для 3ds Max, новый NVIDIA Iray+ предоставляет возможности использовать собственные источники света, полноценно реализующие функционал ядра визуализации по освещению и теням. Задача NVIDIA Iray+ заключается в предоставлении пользователю удобных и простых инструментов для получения реалистичных изображений за короткое время. Чтобы не тратить время на дополнительные исследования и запоминание множества параметров, разработчики реализовали источники света Iray+, включенные в отдельную категорию объектов 3ds Max.После установки NVIDIA Iray+, в разделе объектов Lights будет доступен одноименный раздел, включающий в себя три типа объектов: Light, IBL и PhysSky. Источник света типа Light предоставляет возможность создавать направленные, площадные и объемные источники света, имитирующие физически достоверную модель распространения лучей света.
Рис. 19. Сцена с источниками света типа Iray+ Light и их свойства
Рис. 20. Пример визуализации сцены с различными настройками источников света Iray+ Light и применением профилей IES
Для реализации освещения от физически корректной модели небосвода и Солнца, NVIDIA Iray+ предоставляет специальный тип источника света, - PhysSky. Данный источник аналогичен стандартному источнику света Sun&Sky, доступному в 3ds Max, но оптимизирован под работу с Iray и заложенными в нем алгоритмами.
Рис. 21. Интерьер, в котором освещение смоделировано с помощью источника Iray+ PhysSky`
Рис. 22. Интерьер, в котором освещение смоделировано с помощью источника Iray+ IBL
Для реализации эффекта глубины резкости и размытия движения, NVIDIA Iray+ использует возможности стандартной камеры 3ds Max, в которую добавлен новый тип многопроходного эффекта Depth Of Field (Iray+).
Рис. 23. Пример визуализации эффекта глубины резкости
Эффект размытия движения в NVIDIA Iray+ реализуется стандартными инструментами камеры 3ds Max. Для этого достаточно выбрать, в качестве многопроходного эффекта, эффект Motion Blur и выполнить его настройку. Если активен режим визуализации ActiveShade, все изменения можно наблюдать в режиме реального времени.
Анализ освещения с помощью NVIDIA Iray+
Для получения реалистичного освещения в сцене и для проведения исследований освещенности интерьеров или экстерьеров, система визуализации NVIDIA Iray+ предоставляет дизайнерам возможность выполнения визуального анализа освещения и его цветового представления.Данная функция доступна, когда в режиме ActiveShade выбрано ядро Iray+. В диалоговом окне буфера кадров и расположенной ниже него панели инструментов, можно поставить специальный флажок Enable Analysis.
После активации режима анализа освещения появится несколько дополнительных инструментов, позволяющих настроить представление данных анализа и значения, в пределах которых будет выполнено цветовое представление модели освещения сцены.
Рис. 24. Пример визуализации модели интерьера с активным анализом освещения
Распределенная визуализация с помощью NVIDIA Iray Server
Процесс визуализации требователен к производительности компьютеров. Любая современная система визуализации требует от рабочей станции CG-художника большой производительности и наличия нескольких CPU и GPU. Платформа Iray от компании NVIDIA не является исключением и рассматриваемое в данном обзоре решение предоставляет не только возможности для выполнения вычислений на локальной системе, но также может быть использовано вместе с серверным вариантом NVIDIA Iray. Это позволяет избежать зависимостей от конкретного программного обеспечения и выполнять вычисления с помощью серверной редакции ядра визуализации Iray.Все иллюстрации в данной статье визуализировались на нескольких компьютерах с NVIDIA Iray Server, это позволило избежать излишней нагрузки на основную рабочую станцию и даже использовать мобильную рабочую станцию небольшой производительности.
Рис. 25. Общая диаграмма применения NVIDIA Iray Server
Такой подход позволяет увеличить производительность вычислений и скорость работы дизайнеров, а также обеспечивает возможность применения серверов с NVIDIA Iray Server в дата-центрах с серверами виртуализации, где дизайнеры работают не с физическими рабочими станциями, а на виртуализированных рабочих станциях с поддержкой VDI и NVIDIA GRID.
Рис. 26. Отправка задания в очередь на Iray Server из Iray+ for 3ds Max
После установки и развертывания NVIDIA Iray Server вам станет доступна возможность выполнить его настройку с помощью простого и понятного Web интерфейса. Данный интерфейс позволяет управлять заданиями в очереди на визуализацию, обеспечивает контроль пользователями и аппаратными ресурсами.
Рис. 27. Страница входа в систему управления NVIDIA Iray Server
Рис. 28. Страницы Queue и Results с текущими и выполненными заданиями очереди визуализации
Рис. 29. Параметры и ресурсы NVIDIA Iray Server
Если используется аппаратно-программное решение NVIDIA Quadro VCA, администратор может задать подключение к нему и выполнять перенаправление заданий очереди на сервер VCA. Что позволит использовать богатые вычислительные возможности 8 GPU NVIDIA Quadro M6000.
Все результаты визуализации могут быть загружены пользователем на локальный компьютер в виде архивов или отдельных файлов. Стоит отметить, что в процессе визуализации изображения обновляются, можно проследить изменения качества получаемого изображения и принять решение о том, удовлетворяет результат или нет.
Если необходимо быстро обновить задание на визуализацию и сделать новый вариант изображения, можно воспользоваться простой функцией копирования задания очереди. Это значительно проще и быстрее, чем открывать сложную полноценную сцену в 3D редакторе и создавать новое задание.
Рис. 30. Пример создания копии задания очереди
В процессе подготовки иллюстраций к статье были использованы два компьютера с NVIDIA Iray Server. Финальные изображения визуализировались на компьютере с двумя GPU, а предварительные тестовые визуализации проводились в режиме ActiveShade с применением потокового режима визуализации NVIDIA Iray Server на другой удаленной системе.
Все компьютеры или серверы с NVIDIA Iray Server в единой локальной сети могут быть объединены в единый вычислительный кластер, что позволяет создавать масштабируемые системы для повышения производительности в визуализации образов. Когда несколько узлов с NVIDIA Iray Server объединены, в разделе ресурсов (Resources) будет отображена информация о том, что Iray Server работает в режиме кластера.
Тестирование производительности GPU в визуализации с NVIDIA Iray Server
В процессе исследования возможностей NVIDIA Iray Server я провел ряд тестов производительности графических ускорителей различных моделей. Тестирование проводилось на основе рабочих станций с графическими ускорителями NVIDIA Quadro производства компании PNY Technologies и процессорами Intel Xeon.Тест заключается в определении максимального количества итераций (Iterations) вычисляемых с помощью CPU или GPU в процессе визуализации в заданный промежуток времени (продолжительность). Каждому тесту было отведено по 120 минут (7200 секунд), а максимальное количество итераций равно 20000. Чем больше итераций может выполнить элемент вычислительной системы, тем более производительным он является. Задание теста отправлялось с отдельной системы представленной мобильной рабочей станцией с Autodesk 3ds Max 2016 и NVIDIA Iray+ for 3ds Max.
Так как участвующие в первом и втором тестировании системы значительно отличаются по техническим характеристикам, я решил сконцентрировать максимум внимания на производительности графических процессоров и определить ее прирост в зависимости от архитектуры.
В тесте принимали участие три рабочих станции, 4 графических ускорителя линейки NVIDIA Quadro производства компании PNY Technologies и 1 графический ускоритель производства компании HP на основе мобильного графического чипа NVIDIA Quadro K3100M. Для чистоты эксперимента в тестах GPU мы отключали вычисления на CPU в глобальных параметрах ресурсов Iray Server. Это позволило получить чистый результат в скорости вычислений исключительно средствами графических ускорителей. Перед тем как мы рассмотрим результат тестирования производительности GPU в визуализации с помощью NVIDIA Iray Server, рекомендую познакомиться с характеристиками рабочих станций принявших участие в первом тесте, посвященном GPU на архитектуре NVIDIA Kepler:
Рабочая станция от FORSITE обладает важным козырем: двумя GPU. Оба GPU могут быть использованы для вычислений в NVIDIA Iray Server и в любом другом CUDA приложении, это может обеспечить более высокую производительность системы. А по условиям нашего теста, чем больше итераций будет выполнено, тем производительнее система и используемые в ней компоненты.
Рис. 31. Результат тестирования CPU Intel Xeon и GPU NVIDIA Quadro
Первый тест целиком посвящен графическим ускорителям на основе GPU архитектуры NVIDIA Kepler. Профессиональные графические ускорители PNY NVIDIA Quadro K4000 и HP NVIDIA Quadro K3100M практически идентичны по техническим характеристикам, это позволило достигнуть идентичного результата в проведенных тестах. Разница в 47 итераций незначительна и на итоговом результате визуализации это не так заметно. Но используя возможности Multi-GPU системы можно значительно увеличить производительность вычислений и добиться большей производительности. Так, при использовании двух GPU в системе от FORSITE в процессе тестирования удалось достичь лучшего качества и большей скорости визуализации по сравнению с системой с одним GPU.
Но развитие технологий не стоит на месте. Я обратился к своим старым партнерам из компании FORSITE для проведения второго теста, но на этот раз тестированию подверглись графические ускорители новейшего поколения на основе архитектуры NVIDIA Maxwell производства компании PNY Technologies.
Результаты второго теста были поразительны. Такие задачи визуализации как трассировка лучей, отражение/смешивание света и визуализация глянцевых отражений выполнялись гораздо быстрее, а это позволило значительно повысить качество изображений теста по сравнению с тестированием систем в первом тесте. Система во втором тесте продемонстрировала высокую скорость вычислений множества итераций, превосходя результаты предыдущего теста минимум в 2 раза. И это только один графический ускоритель. Наибольшей производительности удалось достичь с помощью применения двух графических ускорителей. Благодаря их совместной работе было достигнуто максимальное количество итераций, превышающее 12 тысяч из условных 20 тысяч. Подчеркну, что все вычисления выполнялись исключительно силами GPU, функция вычислений на CPU была отключена в глобальных параметрах NVIDIA Iray Server.
Графические ускорители на основе архитектуры NVIDIA Maxwell продемонстрировали очень высокую производительность в вычислениях общего назначения, а также высокую эффективность в балансе нагрузки на ресурсы оборудования в процессе вычислений. В то время как в процессе выполнения CUDA приложений, GPU предыдущих поколений использовали максимум производительности чипа (100%), новая архитектура и новые версии драйвера позволяют балансировать производительность в зависимости от нагрузки. Например, в процессе визуализации сцен с множеством итераций GPU PNY NVIDIA Quadro M6000 работал в диапазоне от 80 до 98%. А это существенно помогает в экономии энергии и продлевает жизненный цикл оборудования в целом.
По результатам проведенного тестирования я могу с большой уверенностью рекомендовать обновление графических ускорителей на современные модели. Если вы использовали GPU на основе архитектуры NVIDIA Fermi или одни из первых моделей на основе NVIDIA Kepler, можете смело присматриваться к современным GPU на основе архитектуры NVIDIA Maxwell. Можно заметить невооруженным взглядом значительный прирост производительности как в графических вычислениях, так и в вычислениях общего назначения. Притом же это позволит использовать приложения, разработанные с учетом возможностей API NVIDIA CUDA версии 7, оптимизированного под последнюю архитектуру GPU.
Изображения полученные в результате тестирования, вы можете загрузить единым архивом (55Мб).
Лицензирование NVIDIA Iray+ for 3ds Max и NVIDIA Iray Server
Система визуализации NVIDIA Iray+ лицензируется по модели подписки и доступна для приобретения, как частным пользователям, так и компаниям. При этом вы можете приобрести NVIDIA Iray+ напрямую с сайта корпорации NVIDIA. Разработчики оценивают NVIDIA Iray+ for 3ds Max в $295 USD/год. Это по карману большинству дизайнеров и специалистов по визуализации, желающим полностью использовать возможности платформы и решений от NVIDIA.Серверная версия NVIDIA Iray находится в стадии интенсивной разработки и доступна по программе beta-тестирования для всех желающих. О доступности для коммерческого приобретения по электронной почте будет выслано специальное уведомление. С января 2016 года доступны версии для Windows и Linux. Вы можете установить на свои Render Nodes несколько экземпляров NVIIDA Iray Server и протестировать его совместно с NVIDIA Iray для 3ds Max, Maya, Revit и Rhino.
Итог
С момента появления архитектуры и технологии NVIDIA CUDA прошло почти десятилетие, за это время было создано множество разнообразных решений, как для вычислений физических моделей и научных исследований, так и для визуализации. Каждое новое поколение архитектур GPU повышает производительность в вычислениях и предоставляет множество возможностей для создания программного обеспечения для решения самых разнообразных задач.Ядро визуализации NVIDIA Iray разрабатывается с 2008 года, и за прошедшее время было реализовано множество возможностей присущих высококачественному инструменту визуализации. А теперь это ядро входит в портфель продуктов компании, куда включены все необходимые инструменты для профессионалов, позволяющие создавать высококачественную визуализацию образов и объединенные единой экосистемой. В список профессиональных решений входят такие инструменты, как GPU NVIDIA Quadro и NVIDIA Tesla, библиотеки и инструменты для разработчиков NVIDIA CUDA и NVIDIA OptiX, NVIDIA DesignWorks, NVIDIA Iray и NVIDIA mental ray.
Система визуализации NVIDIA Iray+ for 3ds Max продемонстрировала хороший результат в управлении и в оптимизации рабочих процессов, когда не требуется использовать множество различных параметров, а можно обойтись управлением несколькими основными настройками. В современном мире визуализации для индустрии дизайна и проектирования это – важное условие. Богатая библиотека материалов на основе гибкого и функционального языка NVIDIA Material Definition Language может быть сразу использована в рабочем конвейере пользователя, а возможность внесения правок позволяет экспериментировать с материалами любой сложности и передавать их в любое другое приложение, использующее NVIDIA Iray или поддерживающее NVIDIA MDL.
Возможности удаленной и распределенной визуализации по сети, доступные в Iray+, позволяют с легкостью выполнять визуализацию сцен без нагрузки на основную рабочую станцию. А поддержка NVIDIA Iray Server и платформы NVIDIA Quadro VCA предоставляет высокую скорость в процессе подготовки модели за счет режима удаленной визуализации и демонстрации визуализируемого изображения с высокой скоростью обновления.
Полезные ссылки
NVIDIA IrayNVIDIA Material Definition Language
Благодарю компании NVIDIA и FORSITE за предоставленные возможности познакомиться с перспективными разработками в инструментах визуализации и новейшими графическими ускорителями.