DOI: 10.15514/ISPRAS-2026-38(3)-43
М.К. Богданов, ORCID: 0009-0002-3308-7643 <raeinforce@gmail.com>
А.М. Суворов, ORCID: 0009-0000-3921-4805 <andryusha.suvorov@gmail.com>
М.Е. Ивашечкина, ORCID: 0009-0004-4254-7722 <mari.avi00@mail.ru>
Р.Р. Султанов, ORCID: 0009-0009-9628-9737 <ravil.r.sultanov@gmail.com>
Г.С.Лях, ORCID: 0009-0009-0135-6723 <gleb_lyah@mail.ru>
А.П. Булаев, ORCID: 0009-0007-0148-9847 <bulaevap97@gmail.com>
Университет ИТМО,
Российская Федерация, 197101, Санкт-Петербург, Кронверкский пр., д. 49, лит. А.
Аннотация. В работе рассматривается проблема эффективного использования аппаратных ресурсов в компьютерных системах с несколькими графическими адаптерами в задачах визуализации компьютерной графики. Предлагается гибридная реализация к выполнению задач с использованием графического конвейера, которая основана на функциональном разделении вычислений между видеоадаптерами, в отличие от традиционных методов, где распределение нагрузки осуществляется по пространственным или временным критериям. Разработаны и протестированы алгоритмы для трех графических техник: моделирование облаков, расчет теней и окружающего затенения. Благодаря использованию API DirectX 12 в режиме Explicit Multi-Adapter было реализовано взаимодействие между GPU без необходимости использования специализированных аппаратных интерфейсов. Экспериментальные исследования показали прирост производительности до 28% для расчета теней, до 11% для окружающего затенения и до 59% для моделирования облаков в зависимости от конфигурации системы. Полученные результаты демонстрируют перспективность гибридного подхода для практического применения в потребительских устройствах, таких как игровые компьютеры и ноутбуки с комбинированной графикой.
Ключевые слова: гибридный рендеринг; многоадаптерные системы; семейство интерфейсов DirectX 12; компьютерная графика.
Для цитирования: Богданов М.К., Суворов А.М., Ивашечкина М.Е., Султанов Р.Р., Лях Г.С., Булаев А.П. Функциональное распределение вычислительных задач компьютерной графики в гибридных системах. Труды ИСП РАН, том 38, вып. 3, часть 3, 2026 г., стр. 161–176. DOI: 10.15514/ISPRAS-2026-38(3)-43.
Все современные приложения компьютерной графики, такие как игры, системы виртуальной и дополненной реальности, а также инструменты для научной визуализации, предъявляют постоянно растущие требования к производительности графических систем. Для того, чтобы удовлетворить эти требования, производители компьютерных комплектующих предлагают все более мощные графические процессоры (GPU), но ресурсы даже самых современных видеокарт оказываются недостаточными для решения сложных вычислительных задач в режиме реального времени при высоком разрешении вывода изображений [1-2].
В большинстве современных персональных компьютеров и ноутбуков установлены как минимум два графических адаптера: дискретная видеокарта (dGPU) и интегрированное в процессор графическое ядро (iGPU). Согласно данным мониторинга Steam Hardware Survey, около 55% пользователей имеют системы с несколькими графическими адаптерами [3]. Однако существующие подходы к рендерингу с использованием нескольких видеокарт ориентированы на конфигурации с несколькими дискретными GPU, которые соединены специализированными высокоскоростными интерфейсами, такими как SLI, CrossFire, NVLink, XGMI, что делает их неприменимыми для большинства игровых потребительских устройств [4-5].
Основные методы, которые используются в современных подходах к мульти-GPU рендерингу, можно разделить на отдельные категории: альтернативный рендеринг кадров (Alternate Frame Rendering, AFR) и разделенный пространственный рендеринг (Split Frame Rendering, SFR) [6-8]. При использовании AFR каждый адаптер в системе последовательно обрабатывает отдельные кадры. Такой способ рендеринга обеспечивает простоту реализации, но не позволяет эффективно задействовать все ресурсы системы при использовании существенно различающихся по производительности GPU, а также плохо взаимодействует с алгоритмами, в которых есть зависимости от ресурсов, используемых между кадрами [9]. При использовании SFR, в свою очередь, кадр разделяется на отдельные части, каждая из которых обрабатывается отдельным GPU. Этот подход обеспечивает лучшую балансировку нагрузки, но требует сложной синхронизации и передачи данных между адаптерами, особенно при работе с прозрачными объектами и эффектами, затрагивающими всю сцену [8,10]. SFR также плохо масштабируется в рамках конфигураций, в которых используются видеокарты с разным уровнем производительности.
Более современным решением является подход MDScale, который объединяет полноценные системы (CPU+GPU) в единую сеть. Он позволяет обеспечить близкое к линейному масштабирование производительности на большее количество GPU, но требует специализированных интерфейсов связи, что исключает его применение для большинства потребительских конфигураций [11].
Для того чтобы преодолеть ограничения как современных, так и традиционных подходов мы предлагаем гибридный метод распределения вычислительных задач между несколькими адаптерами, который основан на функциональном разделении вычислений. В отличие от существующих методов, наш подход:
В работе представлены результаты разработки и тестирования гибридных алгоритмов для трех графических техник: симуляция и визуализация облаков, расчет теней и расчет окружающего затенения. Эксперименты были проведены на различных конфигурациях оборудования, включая как пары дискретных GPU, так и гибридные системы с дискретными и интегрированными графическими адаптерами.
Современные подходы к реализации параллельного рендеринга сталкиваются с рядом фундаментальных проблем и ограничений при работе с гибридными конфигурациями. Например, в исследованиях Eilemann и др. [12-13] подчеркивается, что традиционные подходы, такие как AFR и SFR, предполагают, что в системе будут использоваться примерно одинаковые по производительности GPU. Данные условия совершенно не соответствуют реальным конфигурациям распространённых гибридных систем с комбинацией дискретного и интегрированного GPU. Результат тестирования алгоритма SFR в гибридной системе представлен на рис. 1.

Рис. 1. Результат работы подхода SFR на гибридной системе с iGPU и dGPU.
В работах Ren и Lis [14], а также Kim и др. [15], отмечено, что SFR требует значительных затрат на обмен данными между видеопроцессорами в системе, особенно в ситуациях обработки прозрачных объектов и эффектов. Также стоит отметить, что в системах, где нет возможности использования высокоскоростных интерфейсов связи, таких как NVLink и XGMI, пропускная способность шины PCIe существенно ограничивает эффективность передачи данных между большим количеством видеокарт [4,16].
Кроме того, исследования Arunkumar и др. [5] и Miic [17] показывают, что современные алгоритмы глобального освещения, постобработки и временных эффектов имеют сильные зависимости от результатов вычислений между различными кадрами и другими алгоритмами, что делает применение AFR проблематичным. Темпоральные алгоритмы, такие как TAA (Temporal Anti-Aliasing) [18], требуют сохранения состояния между кадрами и не могут быть эффективно распределены по разным GPU без дополнительных затрат на синхронизацию.
Еще одним важным ограничением является зависимость от производителя видеокарты и доступности оборудования, приобретаемого потребителем. Решения, предлагаемые NVIDIA SLI [19] и AMD CrossFire [20], работают только с конфигурациями GPU одного производителя и постепенно теряют как программную поддержку в драйверах, так и аппаратную, поскольку все меньше выпущенных видеокарт имеют механизмы для такого взаимодействия [4].
Появление DirectX 12 расширило возможности разработчиков и предоставило возможность прямого управления несколькими GPU в системе без зависимости от драйверов производителя. В режиме Explicit Multi-Adapter (EMA) приложение само управляет распределением задач и синхронизацией между адаптерами [21]. В EMA доступны два режима работы: Linked Mode и Unlinked Mode. Linked Mode предполагает использование одинаковых GPU с общей виртуальной адресацией памяти, что похоже на традиционные решения SLI/CrossFire. Unlinked Mode позволяет работать с любыми GPU, используя отдельные девайсы, очереди и механизмы синхронизации [21-22]. На рис. 2 представлен пример работы двух GPU в режиме EMA с Unlinked Mode.
Использование Unlinked Mode позволяет работать с любыми конфигурациями графического оборудования, поскольку синхронизация и обновление данных на адаптерах находится в зоне ответственности разработчика и работает через PCIe шину, что убирает требование использования специализированных аппаратных интерфейсов.

Рис. 2. Механизм работы разделенных между адаптерами вычислений.
Для того чтобы определить наиболее подходящие задачи для разделения вычислений между GPU, мы провели анализ рендер-графов современных игровых приложений и движков с использованием инструментов профилирования [23-24]. Исходя из результатов анализа, мы выработали список критериев оценки пригодности задач для разделения вычислений между адаптерами:
Предлагаемая нами архитектура гибридного рендеринга основана на функциональном разделении задач между основным и дополнительным GPU. Основной принцип заключается в выносе на вторичный адаптер вычислительно затратных задач, которые подходят под описанные ранее критерии. Общий механизм работы можно описать следующим образом:
Такая архитектура позволяет полностью перекрывать время вычислений на вторичном GPU с работой основного адаптера, минимизируя общее время построения кадра. На рис. 3 можно наблюдать рендер-граф, который используется в разработанном нами бенчмарке. В нем красным цветом отмечены все исследуемые нами техники. Для каждой из исследуемых графических техник были разработаны специализированные алгоритмы разделения вычислений.

Рис. 3. Пример рендер-графа приложения.
Для оценки эффективности разделения вычислительных техник, которые считаются параллельно основному рендер графу, нами был выбран алгоритм отображения облаков посредством создания слоёной кубической текстуры неба с использованием различных шумов [25-26]. Алгоритм выносит на дополнительный GPU вычисление текстуры облаков, в то время как основной GPU обрабатывает остальные этапы рендеринга. Схематичное описание алгоритма представлено на рис. 4. Процесс включает следующие шаги:

Рис. 4. Гибридный алгоритм отображения облаков.
Однако в результате тестирования выяснилось, что данная реализация гибридного алгоритма может вызывать визуальные артефакты. Причина их появления связана с разной частотой отображения сцены и шага симуляции облаков, что особенно распространено в гибридных системах, где есть значительный разброс в уровне производительности видеокарт. Для решения этой проблемы, была внедрен коэффициент масштабирования, расчет которого запускался на старте приложения, а размер результирующей текстуры облаков масштабировался согласно данному коэффициенту. Схематичное описание алгоритма поиска коэффициента масштабирования представлен на рис. 5.
Этот коэффициент показывает во сколько раз необходимо уменьшить результирующую текстуру облаков, чтобы дополнительная видеокарта успевала заполнить ее данными до того, как она понадобится основной видеокарте. Применение коэффициента позволило сбалансировать вычислительную нагрузку на дополнительном адаптере и избежать визуальных артефактов в гибридных системах со значительно отличающимися по производительности видеокартами, а также оставить возможность для увеличения детализации текстуры в системах, где видеокарты сопоставимы по производительности.
Пример сгенерированных алгоритмом облаков показан на рис. 6.

Рис. 5. Расчет коэффициента масштабирования.

Рис. 6. Результат работы гибридного алгоритма отображения облаков.
Для оценки эффективности раздельного вычисления графических техник, которые не имеют входных данных, но чьи результаты используются для финального построения сцены, были выбраны техники отображения теней. На основе анализа работы техник Shadow Maps [27‑28], Cascaded Shadow Maps (CSM) [29] и были разработаны следующие методы разделения задач:
Пример рассчитанных каскадов алгоритма HCSM показан на рис. 7.

Рис. 7. Результат работы гибридного алгоритма Cascaded Shadow Maps.
Чтобы оценить эффективность раздельного вычисления графических техник, которым необходимы результаты других техник и чьи данные используются для финального построения кадра, были выбраны техники локального затенения (Ambient Occlusion). На основе анализа техник Screen Space Ambient Occlusion (SSAO) [30-31] и Horizon-Based Ambient Occlusion (HBAO) [32-33] был разработан гибридный метод:
Выбор SSAO и HBAO в качестве основы для реализации обусловлен их относительной автономностью, предсказуемым объемом данных и совместимостью со всеми тестируемыми комбинациями видеокарт.
Пример рассчитанного окружающего затенения показан на рис. 8.
В ходе разработки предложенных ранее гибридных техник было выявлено, что ключевой проблемой в гибридных системах является обеспечение эффективной синхронизации данных между GPU, а также минимизация накладных расходов на обмен этими данными.
В рамках исследования были использованы различные механизмы взаимодействия:

Рис. 8. Результат работы гибридного алгоритма Ambient Occlusion.
Для тестирования гибридных алгоритмов были использованы конфигурации оборудования, описанные в табл. 1.
Табл. 1. Конфигурации тестовых систем.
| Компьютер 1 | Компьютер 2 | Компьютер 3 | Компьютер 4 | Ноутбук | |
|---|---|---|---|---|---|
| CPU | Intel Core i9-10900K | Intel Core i9-9900K | Intel Core i5-8400 | Intel Core i5-3470 | Intel Core i7-8750H |
| 1 GPU | NVIDIA GeForce RTX 2080 SUPER | NVIDIA GeForce GTX 1080 | NVIDIA GeForce GTX 1060 | NVIDIA GeForce GTX 660 | NVIDIA GeForce GTX 1650 (Mobile) |
| 2 GPU | Intel UHD Graphics 630 | Intel UHD Graphics 630 | Intel UHD Graphics 630 | AMD Radeon RX 470 | AMD Radeon Vega 8 |
| RAM | 32 ГБ DDR4 | 16 ГБ DDR4 | 16 ГБ DDR4 | 8 ГБ DDR3 | 8 ГБ DDR4 |
Тестовая сцена включала камеру, совершавшую вращение вокруг центра мира, набор статических объектов, систему частиц с симуляцией 20 000 полупрозрачных анимированных частиц, а также 15 источников света. Один из источников представлял собой направленный свет, имитирующий солнечное освещение. Общее количество отображаемых полигонов составляло порядка двух миллионов. Для всех источников света в каждом кадре вычислялись динамические тени. Для отображения окружающего пространства сцены ииспользовался алгоритм skybox для которого в рамках гибридных реализаций алгоритма генерации облаков каждый кадр процедурно создавалась трехмерная текстура облаков, во всех других случаях использовалась статическая HDRI текстура окружения. Все эксперименты выполнялись в разрешении Full HD (1920×1080 пикселей) с применением последних стабильных версий драйверов, загруженных с официальных сайтов производителей и актуальных на момент проведения тестирования. В рамках одного запуска бенчмарка осуществлялся сбор статистики о производительности системы каждый кадр в течении 5 минут. Проводилось минимум по 5 запусков для прогревания кэшей драйверов и операционной системы, после чего еще 10 опорных запусков, по которым происходил анализ результатов.
На рис. 9 представлены столбчатые диаграммы, показывающие сравнение среднего времени кадра (Average Frame Time) при использовании одной (Single GPU) и двух (Multi-GPU) видеокарт для семи рассматриваемых техник рендеринга. CloudsV1 и CloudsV2 на диаграммах это алгоритмы отображения облаков до и после введения коэффициента масштабирования соответственно. Каждый график соответствует определенной системной конфигурации. Оси абсцисс соответствуют техники рендеринга. Оси ординат соответствует среднее время кадра, выраженное в относительных процентах, где значение Single GPU (синий столбец) принято за 100%. Внутри столбцов указаны абсолютные значения времени кадра; над красными столбцами приведен процентный прирост производительности, рассчитанный как снижение времени кадра при переходе с Single GPU на Multi-GPU.
Анализ полученных результатов позволяет сделать несколько важных выводов:

Рис. 9. Результаты тестов.
Сравнение с традиционными методами мульти-GPU рендеринга показывает преимущества нашего гибридного подхода в системах с несколькими видеокартами. В отличие от AFR, гибридный подход работает эффективнее с алгоритмами, в которых используются данные нескольких кадров. По сравнению с алгоритмами, основанными на SFR [13–15], гибридный подход требует меньше данных, как для построения кадра, так и для передачи между GPU, а также проще в реализации и не требует специализированных аппаратных интерфейсов, что позволяет им работать с любой конфигурацией GPU, которые поддерживают DirectX 12.
Среди ограничений подхода можно выделить зависимость от графического API DirectX 12, что снижает совместимость с некоторыми старыми аппаратными конфигурациями систем. Также трудность может представлять необходимость ручной модернизации и модификации графического конвейера, используемого в приложения, для создания, прототипирования и интеграции гибридных алгоритмов, а также сложность балансировки нагрузки в системах с существенно различающейся производительностью GPU.
В ходе исследования была разработана и протестирована архитектура гибридного рендеринга для систем с несколькими графическими процессорами. Предложенный нами подход основан на функциональном распределении задач между GPU с использованием современных возможностей DirectX.
Основные результаты работы:
В качестве направлений дальнейших наших исследований можно выделить следующие:
Полученные результаты открывают новые возможности для разработки эффективных графических приложений, способных адаптироваться к наличию аппаратных ресурсов в системе и обеспечивать оптимальное качество визуализации при заданных ограничениях производительности.
Михаил Константинович БОГДАНОВ – аспирант факультета прикладной информатики в Университете ИТМО. Научные интересы включают методы визуализации в реальном времени, разработку и анализ графических алгоритмов, параллельные вычисления на графических процессорах, а также масштабирование рендеринга в многопроцессорных графических системах.
Андрей Максимович СУВОРОВ – студент бакалавриата факультета “Школа разработки видеоигр” в Университете ИТМО. Научные интересы включают физически корректный рендеринг, процедурную генерацию графического контента, а также исследование и реализацию графических систем на базе низкоуровневых API.
Мария Евгеньевна ИВАШЕЧКИНА – студент магистратуры факультета “Школа разработки видеоигр” в Университете ИТМО. Научные интересы связаны с компьютерной графикой, включая разработку и оптимизацию алгоритмов визуализации, процедурную генерацию контента, а также методы повышения производительности интерактивных систем.
Равиль Радикович СУЛТАНОВ – студент магистратуры факультета “Школа разработки видеоигр” в Университете ИТМО. Научные интересы включают высокопроизводительные вычисления, параллельные алгоритмы обработки данных, а также оптимизацию вычислительных процессов в системах реального времени и графических приложениях.
Глеб Сергеевич ЛЯХ – студент магистратуры факультета “Школа разработки видеоигр” в Университете ИТМО. Научные интересы включают разработку игровых движков, проектирование архитектуры программных систем, а также методы оптимизации и эффективного управления вычислительными ресурсами.
Андрей Петрович БУЛАЕВ – разработчик, графический инженер. Научные интересы включают разработку графических движков, физически корректный рендеринг, оптимизацию алгоритмов на графических процессорах, а также построение высокопроизводительных систем визуализации.