>>17
The problem is with the lack of a proper buffer sharing mechanism. As long as your clients have only single GPU setups (CFX/SLI make one virtual GPU), this is just a matter of either:
D3D: creating multiple SwapChain classes for one Device.
OpenGL: creating two contexts and sharing a buffer handle between them.
On Direct3D, if you create a fullscreen Device, it will create one SwapChain per monitor automatically. On OpenGL you have to manually query and create a context per monitor. This ppt (lol, who has Windows these days) file will explain how to do it for OpenGL:
http://www.cs.uml.edu/~hmasterm/Charts/Managing_Multiple_Windows.ppt
On linux, we're working on solving this multi-GPU nightmare.