4

I'm doing some machine learning work that benefits tremendously from using the GPU. I'm kind of at the limits of my current setup (A workstation with a single GTX580) and I really don't have room for another computer at home. So I'm looking to build a GPU Server (and very possible several of them) and trying to find the most cost effective way to do so.

Ideally I'd like to build something like NVidia's tesla servers (e.g. s2075), but with GTX580s instead of Tesla cards. This fits 4 cards into a 1u chassis which is then connected via PCI-e extenders to a host system. A DIY version of this doesn't seem to exist.

So my next plan is going 4u and basically putting a standard quad SLI build in that. I'd probably use 2 850watt PSUs to power the 4 cards. Cooling could also be an issue.

So my questions are specifically this:

  • If I'm primarily using the GPU and only using the CPU for handling basic logic and stuff, is it reasonable to use a low end CPU like an i3?
  • If I want to co-locate, wouldn't this be fairly expensive/use a lot of power?
  • Am I going about this the wrong way and is there a much easier/more cost effective way to build GPU number crunchers and not keep them in my apartment?
Hennes
  • 65,804
  • 7
  • 115
  • 169
Dave S
  • 151

4 Answers4

1

I've done a bit more research and I'm going to answer this one myself in case anyone finds themselves looking to do something similar.

AWS (and other vendors) provide GPU cloud compute services. This works great for certain applications, but certainly not all. As best I can tell, the virtualized GPU clusters tend to be slower than the actual hardware they advertise, and they're expensive if you're using it pretty regularly. Applications where it might make sense to build your own hardware include 3d rendering and certain types of machine learning that benefit from using a GPU. If you're only doing periodic number crunching, cloud gpu is a good choice.

So, to my original question--best bang for your buck for GPU servers. Currently, the GTX580 (~$400) is a great value compared to the MUCH more expensive tesla and quadro cards, and performance is comparable. A Quadro 6000 is currently $6,000 and performs about the same on GPGPU benchmarks (specifically, NQueens) as the 580. The tesla's have more onboard memory. The 680 is crippled for GPGPU and won't perform as well as the 580. So in mid to late 2012, buy GTX 580s.

Quad SLI doesn't necessarily seem to be worth it. 4x SLI isn't 4 times as fast. But you can still put 4 GPUs into your system with 2 2x SLI, this seems to be a pretty good trade off. Or just leave them as separate cards.

Looks like a 4u chassis is what you'll need if you want to put it in a rack. You'll probably want 2 750 watt power supplies.

On CPU--I can't get a straight answer on that. For myself, I'll probably get a lower end i5 rather than an i3.

From there, just build as many of these systems as you need, put them in a rack (co-lo or a server room) and you should be good to go. You're probably looking at less than $2500 per unit for a theoretical 6 tflops from 4 gtx580s. That's pretty good bang for your buck.

For comparison, an nvidia tesla s1070 does 4 tflops and costs something like $8,000-$10,000. But that's the 'enterprise' price for performance you can get much cheaper.

Power bill was something I was curious about too, can't get a straight answer on that, I suspect it will be high.

Dave S
  • 151
1

Most server chassis are not designed for the amount of heat the 4 cards are going to put out. And it sounds like your applications will be pushing the cards to peak levels. You will definitely need to closely monitor the individual cards temperatures, as well as the processor. You very well might need additional fans, or even go to a liquid cooling solution.

Another issue is noise. If its in a colo space, no big deal. However, you said this might go in your apartment and that could be an issue. Fans on consumer graphics cards vary from vendor to vendor. Even "quiet" fans on graphics cards have noise and you will multiply that by 4, not to mention any additional fans used for cooling. Again, a liquid cooling solution might be a good solution.

Keltari
  • 75,447
1

If you need single floating point performance, go with the GTX680, it is also more power efficient, you won't pay as much for electricity. If you need double floating point performance go with GTX 580.
Take a look at this blog post.
Also renderstream had a blogpost about an 8GPU 4U server. It's 14k$. The fixed the BIOS to get it working with all 8 cards. I think just the barebones server is 3k$.
I'm also looking to maybe build such a machine in the future, I'm not sure yet if it's worth the trouble and just rent one when I need it. It might be a good idea to split the cost and share a machine but we might end up stepping on each others toes.

titus
  • 123
0

I'm pretty sure amazon offer such a thing.

Likely for a lot cheaper than you'll be able to do it also.

http://aws.amazon.com/hpc-applications/

http://hpc.nomad-labs.com/archives/65

That would remove a lot of the complexity in what you want to do.

Sirex
  • 11,214