I’m a CUDA programmer. I’ve been working on CUDA 2.x and 3.x before, now I’m getting familiar with CUDA 4.0. I’ve never worked with more that one CUDA device and now I want to use several CUDA devices. I believe Teslas are too expensive, so I will start with regular GTXes.
Suppose I buy two (or four) GTX 580 cards, put it in one PC and I want to render textures using one card, but compute on all available cards. I want to run different kernels on different cards and send results to one card which will be also used for visualisation purposes.
- Should I connect them by SLI cable to be able to compute in CUDA on all devices or SLI is only used to speed-up graphics rendering?
- Is SLI required for peer-to-peer memory transfers in CUDA 4.0?
- What is TCC and UVA and how can it help me?
Thanks for your time, any help will be highly appreciated.
P.S. Sorry if I put my post in wrong group, I couldn’t find better one.