I’m designing my first CUDA system and I’m not sure how to handle video output. I will be using an overclocked GTX260 as my main GPU, but the motherboard has no on-board graphics chipset. Can I run video output from a card that is currently being used for processing, or should I buy a cheap PCI video card to handle video out?
I checked the FAQ and most of the top threads so I hope this kind of intro question has not already been answered in plain view. Thanks!
Either could be fine, depending on how your CUDA programs work. A single card will alternate between running your CUDA kernels and running the display. If your kernels are long, the display will appear jumpy, and if they are too long (more than a few seconds), the driver will terminate them to let the display update. If you have a lot of short kernels, display updates between each kernel will slow down your program.
Getting a second card (should be another GeForce 8 or later to avoid the complexity of mixed drivers) will eliminate these problems. If you run Linux with X disabled, then you won’t have any of these problems either.
Thanks, that is just what I needed to know!
Another issue I saw though, depending on your motherboard, if the the two PCIe x 16 slots sit on the same controller you will get only 8 channels per card instead of 16 so your CPU <–> GPU transfers will be slower
Be careful what MB you are using if you have a lot of communications, or if you don’t care about the graphics (just to run the machine) you can try to look for a PCI card instead of a PCIe card. They are hard to come by though (old ones don’t always run the screen and unless you are running linux, drivers will probably be an issue and I think there is about one model from nvidia which is current and very hard to find)