当我们在 PC 上创建 OpenGL 上下文时,有没有办法选择使用哪个物理设备或使用多少个设备?最新的 OpenGL (4.5) API 是否支持多 GPU 架构?如果我有两张相同的显卡(例如,两张 Nvidia GeForce 卡),我如何正确编程 OpenGL API 以便从我有两张卡的事实中获益?如何以最小的努力将 OpenGL 程序从单 GPU 版本转移到多 GPU 版本?
问问题
4276 次
1 回答
11
OpenGL 驱动程序公开多个 GPU(在 Crossfire/SLI 配置中),就好像它们是单个GPU 一样。在幕后,驱动程序将(理论上)弄清楚如何在两个 GPU 之间有效地调度渲染调用。有几种方法可以做到这一点,您可以零控制驱动程序选择哪种机制。
如果您想更直接地控制哪个 GPU 与哪个 GL 上下文相关联,则必须使用供应商特定的扩展。AMD 有WGL_AMD_gpu_association,而 NVIDIA 有WGL_NV_gpu_affinity。
于 2017-05-05T19:42:23.443 回答