this post was submitted on 26 Dec 2023
9 points (80.0% liked)

Selfhosted

40296 readers
196 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Simple as that, I have a few GPUs hanging around and I want to build a GPU node for my kubernetes cluster. I already have one, GPUs are attached and it can do cool things like transcoding plex easy enough, but I'm starting to look to the horizon for my next big projects.

So, dream machine, how could I accomplish building a big ol' server with the GPUs I have hanging around and maybe a new one?

What CPU/Mobo, and maybe most important, power supply, would you recommend for running maybe even 4x GPUs? Or maybe just 3 and I'm being crazy.

Won't be building tomorrow like I said, but I just thought of this and was like "man, I bet not a lot of consumer hardware would support this..."

you are viewing a single comment's thread
view the rest of the comments
[–] towerful@programming.dev 3 points 10 months ago* (last edited 10 months ago) (1 children)

If you are doing high bandwidth GPU work, then PCIe lanes of consumer CPUs are going to be the bottleneck, as they generally only support 16 lanes.
Then there are the threadrippers, xeons and all the server/professional class CPUs that will do 40+ lanes of PCIe.

A lane of PCIe3.0 is about 1GBps (Byte not bit).
So, if you know your workload and bandwidth requirements, then you can work from that.
If you don't need full 16 lanes per GPU, then a motherboard that supports bifurcation will allow you to run 4 GPUs with 4 lanes each from a CPU that has 16 lanes if PCIe. That's 4GBps per GPU, or 32Gbps.
If it's just for transcoding, and you are running into limitations of consumer GPUs (which I think are limited to 3 simultaneous streams), you could get a pro/server GPU like the Nvidia quadros, which have a certain amount of resources but are unlimited in the number of streams it can process (so, it might be able to do 300 FPS of 1080p. If your content is 1080p 30fps, that's 10 streams). From that, you can work out bandwidth requirements, and see if you need more than 4 lanes per GPU.

I'm not sure what's required for AI. I feel like it is similar to crypto mining, massive compute but relatively small amounts of data.

Ultimately, if you think your workload can consume more than 4 lanes per GPU, then you have to think about where that data is coming from. If it's coming from disk, then you are going to need raid0 NVMe storage which will take up additional PCIe lanes.

[–] grue@lemmy.world 3 points 10 months ago

I’m not sure what’s required for AI. I feel like it is similar to crypto mining, massive compute but relatively small amounts of data.

If you're talking about training models, I think it requires both massive compute and massive amounts of data.