Graphics card setup for the CUDA beginner

First of all - hello!
I’ve made a decision to go into CUDA waters and I have a beginners dilemma - which card(s) to use?
My budget is around 200 $, and I am not sure which is better - to have a single, more powerful card, or two weaker ones.
I know that the single card will be faster, but I am thinking that with two weaker cards I will be able to master programming code that will make use of multiple cards simultaneously, which will probably be beneficial to me in the future. So it boils down to this - to buy a 550 Ti or two GT 440s, that is - is programming for multiple cards simultaneously so much different than for a single card or isn’t? I hope this is understandable :tongue:
My primary area of interest are artificial neural networks.
:thanks:

Programming for multiple CUDA devices is somewhat challenging, as you have to find a way to divide your data and calculation between the two cards. If you are new to CUDA, I would suggest buying one card to start with, and then only buy the second card after you become comfortable with CUDA on one card. If staging the purchases this way means you can buy a faster card now, that’s even better. :)

A single card it is! :thumbup:
And one last question - will a GTX 640 or 650 be a better choice over a Fermi equivalent?
I know that the new Kepler isn’t as powerful as the Fermi in the GPGPU department (at least that’s the case with the GTX 680 vs. GTX 580).
So it is logical for me to assume that the same will be with the mid-end Keplers. But the dilemma arises on the basis of info from this site, according to them both the GTX 640 and 650 should have more RAM than the 550 Ti or 560. Assuming this is true, I am not sure what is more important for me at the beginning of my CUDA journey - more memory or “raw GPU power”?

Just beware that there are now cards with 6xx numbering that are actually Fermi boards.

Look for PCIe 3.0 support and some multiple of 192 cores as a sign that it’s actually a Kepler board.

I’ve read that GK107 boards are coming to OEMs … but I don’t think you can buy one yet.

If you can’t wait then you can still get a huge amount of GPU power with a ~$200 Fermi.

For the mix of applications I work on, I generally get best results when I maximize the memory bandwidth of the card. In terms of memory capacity, you probably want 1 GB because the CUDA driver these days seems to eat a few hundred MB of space on the card. If you know your problem requires storing a lot of data on the GPU, then you will want to find a card with more memory. Otherwise, there is no benefit to extra GPU memory.

For maximum information overload, I find this table useful:

http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#GeForce_500_Series

(Scroll down for the 600 series.) The “code name” column will indicate what actual GPU is being used on the card: “GF” for Fermi and “GK” for Kepler. At this point, I would not buy any GeForce 600 series cards using Fermi chips, as you can probably find the same thing in a 500 series card possibly marked down.

I don’t see a GTX 640 or 650 on the list yet, but a GTX 560 is a decent card that maximizes the memory bandwidth given your budget.