For those interested in try this before I have time to post a full Howto.
The final setup was:
Slot-1 ----9800GX2----
Slot-2 ----8800GT-----
You also need to add the strings for the 9800GX2 on the GeForce, NVResman and NVDANV50Hal extensions.
You also need 2 monitors. One connected on the DVI port 2 of the 8800GT and one on the DVI port 1 of the 9800gx2.
On the final step to make it really work, I had to use NVinject 0.2.2 modified to make the OS not only see 9800gx2 as a valid card(the 8800gt EFI firmware makes the system see all other nvidia cards as valid) but to make the OS actualy load the drivers.
The kexts for OSX 10.5.5 are here:
http://www.unsekure.net/mac9800gx2/9800gx2kexts.tgz
While the system is booting, the gray apple will show on the 8800gt display. Right before the system load the login screen, the display with be auto-switched to the 9800gx2 display (NVinject gets in action and makes the OS recognize the 9800gx2).
In the end, because of NVinject, the system will see all nvidia cards as a 9800gx2, as you can see on the pic below. I still need to fix that.
However, I think it's just a cosmetic thing. Cause in the end, CUDA can see the right cards:
Code:
There are 3 devices supporting CUDA
Device 0: "G92-450"
Major revision number: 1
Minor revision number: 1
Total amount of global memory: 536674304 bytes
Number of multiprocessors: 16
Number of cores: 128
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 16384 bytes
Total number of registers available per block: 8192
Warp size: 32
Maximum number of threads per block: 512
Maximum sizes of each dimension of a block: 512 x 512 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 1
Maximum memory pitch: 262144 bytes
Texture alignment: 256 bytes
Clock rate: 1.51 GHz
Concurrent copy and execution: Yes
Device 1: "G92-450"
Major revision number: 1
Minor revision number: 1
Total amount of global memory: 536674304 bytes
Number of multiprocessors: 16
Number of cores: 128
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 16384 bytes
Total number of registers available per block: 8192
Warp size: 32
Maximum number of threads per block: 512
Maximum sizes of each dimension of a block: 512 x 512 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 1
Maximum memory pitch: 262144 bytes
Texture alignment: 256 bytes
Clock rate: 1.51 GHz
Concurrent copy and execution: Yes
Device 2: "GeForce 8800 GT"
Major revision number: 1
Minor revision number: 1
Total amount of global memory: 536674304 bytes
Number of multiprocessors: 14
Number of cores: 112
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 16384 bytes
Total number of registers available per block: 8192
Warp size: 32
Maximum number of threads per block: 512
Maximum sizes of each dimension of a block: 512 x 512 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 1
Maximum memory pitch: 262144 bytes
Texture alignment: 256 bytes
Clock rate: 0.81 GHz
Concurrent copy and execution: Yes
Test PASSED
All cards are working perfect. Except that after the 9800gx2 gets the display, the 8800gt cant show anything. It wont even detect the display again. But who cares
the 9800gx2 is working.
I tested a couple games (Spore and WoW). And both were at 60fps (with vsync) and 160+ fps without vsync. 1920x1200 with maximum FSAA. Full details.
Of course your mileage may vary depending on your system.
Post any new info you get if you try this. And feel free to contact me asking anything.