在带有多个video卡的Windows XP中进行OpenGL渲染

我正在为Windows XP开发一个OpenGL应用程序。 目标机器有2个NVIDIA GeForce 9800GT显卡,这是需要的,因为应用程序需要输出2个模拟videostream。

应用程序本身有两个OpenGL窗口,每个video卡一个。 每个video卡都连接到一个监视器。 至于代码,它是基于一个最小的OpenGL的例子 。

如何知道应用程序是否同时使用两个video卡进行渲染?

目前,我不在乎应用程序是只在Windows XP上运行还是只在NVIDIA显卡上运行,我只需要知道两者是如何工作的。

我想你需要阅读WGL_nv_gpu_affinity扩展。 您可以创建亲和力掩码并将wglMakeCurrent()与它们结合使用。 这里有一些指针:

http://developer.download.nvidia.com/opengl/specs/WGL_nv_gpu_affinity.txt

来自NVidia.com的PDF

干杯!

我相信你可以从基于OpenGL的应用程序的gDEBugger获得这样的信息。

如果你不使用这两张卡,你可以检查平行渲染的平衡器 ,这是一个伟大的项目。