Когда мы создаем контекст OpenGL на ПК, есть ли способ выбрать, какое физическое устройство или сколько устройств будет использоваться? Поддерживают ли новейшие API OpenGL (4.5) архитектуру с несколькими графическими процессорами? Если у меня есть две одинаковые видеокарты (например, две карты Nvidia GeForce), как мне правильно запрограммировать API OpenGL, чтобы получить преимущества от того, что у меня две карты? Как перенести программу OpenGL с версии с одним GPU на версию с несколькими GPU с минимальными усилиями?
Поддержка нескольких графических процессоров OpenGL
Ответы (1)
Драйверы OpenGL предоставляют несколько графических процессоров (в конфигурациях Crossfire/SLI), как если бы они были одним графическим процессором. За кулисами драйвер (теоретически) выяснит, как эффективно распределять вызовы рендеринга между двумя графическими процессорами. Для этого существует несколько способов, и у вас нет никакого контроля над тем, какой механизм выберет драйвер.
Если вам нужен более прямой контроль над тем, какой GPU связан с каким контекстом GL, вы должны использовать расширения для конкретного поставщика. У AMD есть WGL_AMD_gpu_association, а у NVIDIA WGL_NV_gpu_affinity.
person
Nicol Bolas
schedule
05.05.2017