Jump to content

Параллельный рендеринг

(Перенаправлено из распределенного рендеринга )

Параллельный рендеринг (или распределенный рендеринг ) — это применение параллельного программирования в вычислительной области компьютерной графики . Рендеринг графики может потребовать огромных вычислительных ресурсов для сложных сцен, возникающих в научной визуализации , медицинской визуализации , приложениях САПР и виртуальной реальности . Недавние исследования также показали, что параллельный рендеринг можно применять в мобильных играх для снижения энергопотребления и повышения точности графики. [1] Рендеринг — это до неприличия параллельная рабочая нагрузка в нескольких областях (например, пикселях, объектах, кадрах), поэтому он стал предметом большого количества исследований.

Распределение рабочей нагрузки [ править ]

Есть две, часто конкурирующие причины использования параллельного рендеринга. Масштабирование производительности позволяет быстрее отображать кадры, а масштабирование данных позволяет визуализировать большие наборы данных. Различные методы распределения рабочей нагрузки имеют тенденцию отдавать предпочтение одному типу масштабирования над другим. Также могут быть другие преимущества и недостатки, такие как задержки и проблемы с балансировкой нагрузки . Три основных варианта распределения примитивов — это целые кадры, пиксели или объекты (например, треугольные сетки ).

Распределение кадров [ править ]

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

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

Распределение пикселей [ править ]

Наборы пикселей в пространстве экрана могут быть распределены между процессорами, что часто называется рендерингом по сортировке. [2]

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

Распределение объектов [ править ]

Распределение объектов между процессорами часто называют рендерингом с сортировкой по последнему. [3] Он обеспечивает хорошее масштабирование данных и может обеспечить хорошее масштабирование производительности, но требует альфа-композиции промежуточных изображений с узлов обработки для создания окончательного изображения. По мере роста разрешения изображения увеличиваются и затраты на альфа-композицию.

Схема балансировки нагрузки также необходима для поддержания производительности независимо от условий просмотра. Этого можно достичь путем чрезмерного разделения пространства объекта и случайного назначения нескольких частей каждому процессорному блоку, однако это увеличивает количество этапов альфа-композиции, необходимых для создания окончательного изображения. Другой вариант — назначить каждому процессорному блоку непрерывный блок и динамически его обновлять, но для этого требуется динамическая загрузка данных.

Гибридное распространение [ править ]

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

Приложения с открытым исходным кодом [ править ]

Пакет программного обеспечения с открытым исходным кодом Chromium обеспечивает механизм параллельного рендеринга для существующих приложений. Он перехватывает вызовы OpenGL и обрабатывает их, обычно для отправки на несколько блоков рендеринга, управляющих видеостеной .

Equalizer — это платформа рендеринга с открытым исходным кодом и система управления ресурсами для многоконвейерных приложений. Equalizer предоставляет API для написания параллельных масштабируемых приложений визуализации, которые настраиваются во время выполнения сервером ресурсов. [4]

OpenSG с открытым исходным кодом — это система графов сцен , которая обеспечивает возможности параллельного рендеринга, особенно в кластерах. Он скрывает сложность параллельных многопоточных и кластерных приложений и поддерживает отрисовку как по первой, так и по последней сортировке. [5]

Golem — это децентрализованное приложение с открытым исходным кодом, используемое для параллельных вычислений , которое в настоящее время работает с рендерингом в Blender и планирует расширить возможности его использования. [6]

См. также [ править ]

Концепции
Реализации

Ссылки [ править ]

  1. ^ Ву, К.; Ян, Б.; Чжу, В.; Чжан, Ю. (2017). «На пути к высокой производительности мобильных графических процессоров посредством совместной разгрузки рабочей нагрузки» . Транзакции IEEE в параллельных и распределенных системах . ПП (99): 435–449. дои : 10.1109/tpds.2017.2754482 . ISSN   1045-9219 .
  2. ^ Молнар, С., М. Кокс, Д. Эллсворт и Х. Фукс. « Сортировочная классификация параллельного рендеринга ». Компьютерная графика и алгоритмы IEEE, страницы 23–32, июль 1994 г.
  3. ^ Молнар, С., М. Кокс, Д. Эллсворт и Х. Фукс. « Сортировочная классификация параллельного рендеринга ». Компьютерная графика и алгоритмы IEEE, страницы 23–32, июль 1994 г.
  4. ^ «Эквалайзер: параллельный рендеринг» . Архивировано из оригинала 11 мая 2008 г. Проверено 30 апреля 2020 г.
  5. ^ «ОпенСГ» . Архивировано из оригинала 6 августа 2017 г. Проверено 30 апреля 2020 г.
  6. ^ «Сеть големов» . golem.network . Проверено 16 мая 2021 г.

Внешние ссылки [ править ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4c235b6499b1fbcd8cc16ed11a8f5588__1699253460
URL1:https://arc.ask3.ru/arc/aa/4c/88/4c235b6499b1fbcd8cc16ed11a8f5588.html
Заголовок, (Title) документа по адресу, URL1:
Parallel rendering - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)