Running GPU programs on multi GPUs on a single server

The situation is I have a nvidia grid k2 card, which contains 2 GK104, and I want to execute 2 OpenGL program separately on each GK104 card.
What I have tried:

  1. Run a single X server with 2 screen, each using one individual “monitor” and “device(using busid to specify a GK104)”. The X server and the OpenGL program on screen 0 (by export DISPLAY=:0.0) can run properly, but the OpenGL program ran on screen 1 (by export DISPLAY=:0.1) arise a “MakeCurrent” error.

  2. Run 2 individual X server by specifying config file using “-config” of X, and each one using 1 GK104. I can run the OpenGL program properly. But when I start the second X server, the screen on the first one is interfered, and no normal screen shows up.

  3. Try to config SLI, can’t success. I don’t know how to config the BusId, if not specify busid, NVIDIA driver will not be used, MGA instead. If I specify the busId, an error “Failed to find a valid SLI configuration.” arise.

Can anybody help me?