Multi-GPU programming What's the best approach to sharing the workload across multiple G


So I have an OpenCL program written that successfully runs on a single GPU and the next step in the project is to redesign it to work across multiple GPUs. For the time being I’ve been brainstorming on ideas and approaches, and trying to get feedback on other’s experiences. I didn’t see any examples in the SDK but I may have missed it, so if there are examples, please point me in the right direction. How have you tackled this issue and what problems/obstacles have you run into?

Also, I was not sure how the platform would behave in the following situation (I unfortunately don’t have the resources to test this, so if someone can, I would appreciate it):
On a GTX 295, which has two GPUs and over a gig of memory, how is the memory made available to the GPUs? Is it split in half or is everything made available to each GPU?

Any thoughts/suggestions on programming on multiple GPUs is appreciated!

I can’t explain how to do it, but you may want to take a peek at this OpenCL program:

It just started supporting multiple GPU’s. Maybe you can get some info from the boys talking?

Start at post 123.

Thanks, I’ll talk to fellix who appears to be heading the project. I also found the source code, which should come in handy in understanding how it shares the workload. That seems like a great project. And you seem to be sitting on some sweet hardware. Once I get my code working on multiple GPUs, mind giving it a test run?

Thanks… Glad it helped.

I love BETA testing and if I could, my dream in life would be to work for Nvida from Ohio.

I would be glad to test your app, and I would also call on the gang at EVGA and Xtreme Systems to join in.

I also have posted this idea:

I hope they consider it… :)

The SDK, atleast the newest beta, includes oclSimpleMultiGPU which you may want to check out.