• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

General purpose machine learning build - sanity check

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

hroent

New Member
Joined
Aug 11, 2016
Hi All,

I'm designing a computer for machine learning work. I'll be running different kinds of algorithms, some optimized for GPU and some that are better suited to multi-threaded CPU execution. Data sets will range in size from ~100 MB to roughly tens of GB.

(I know this isn't the most cost-efficient way to run my models, as opposed to AWS etc, but the convenience benefits justify it for me.)

The main priorities for the build are multi-threaded CPU performance, memory capacity, and GPU performance. I'd like to be able to read large datasets into memory quickly while testing. Single-threaded speed is secondary.

I started this build with very little hardware knowledge, but I've been googling around for several days and have learned a fair amount. I've reached the point where I feel confident in most of these choices. That said, it's very possible that I've overlooked something obvious, or made an error with compatibility, or am wasting money on something that won't give me any real benefit.

If you think that's the case, please let me know! Questions, comments, suggestions, please fire away. I get one shot at this, and I'd like to do it right.

Here's the build:

Motherboard: SuperMicro X10DRi-LN4+
2x LGA 2011-3, 2x PCIe 3 x16, "enhanced extended ATX" = 13.68x13"

CPUs: 2x Xeon E5-2699 v4
22-core, 2.2 GHz (planning to OC to ~2.6), 55 MB L3 cache, 40 PCIe 3 lanes
CPU cooling: 2x Noctua U12DXi4

GPU: NVidia Titan X Pascal
3584 CUDA cores, 1.5 GHz, 12 GB DDR5X
GPU cooling: NXZT Kraken G10

Memory: 24x Kingston ValueRAM 32GB
Registered DDR4-2133, 15-15-15

Storage 1 (os): Samsung 850 EVO 120 GB

Storage 2 (data in use): Samsung 950 PRO M.2 SSD 512 GB
M.2 -> PCIe 3 x4 adapter: Lycom DT-120

Storage 3 (data not in use): Western Digital Blue 4 TB

PSU: EVGA SuperNOVA 1000 PS

Case: Phanteks Enthoo Primo
I've seen pictures of an SSI EEB (12x13") board in this case, and it looks like I should be fine at 13.68x13". I can drill some holes in the MB tray if necessary.

Case fans: 2x Noctua NF-A15 PWM

Sound card: Asus Xonar DGX
MB doesn't have onboard sound
 
You probably don't need a 1000 watt PSU with only one video card. I doubt if the total system will draw more than 500 watts at any time. The GPU itself has a TDP of 250w and the rest of the components will have minimum power draw. If you put a watt meter between the computer and the wall you would be surprised at what little power today's systems draw. Video card manufactures way overstate the wattage needed for high end cards, mostly as a hedge against people who buy cheap bargain basement PSUs whose watt outputs are greatly exaggerated.

Would you be better served with a Quadro series card for the high precision work you will be doing with this system?
 
Last edited:
Video card manufactures way overstate the wattage needed for high end cards, mostly as a hedge against people who buy cheap bargain basement PSUs whose watt outputs are greatly exaggerated.

Thanks for this tip! Although it puts some doubt back in my mind about a 4-cpu opteron build that I scrapped due to high power draw. The CPUs and GPU won't be drawing high power at the same time, so I'll downgrade the PSU to 850 W.

If I understand right, Quadro/Tesla GPUs have big speed advantages when it comes to 64-bit floating point operations. That makes them well suited to tasks where high numerical precision is important, like solving PDE systems and doing CAD work. Single precision should be plenty for training neural networks. The most important things for me are memory bandwidth and capacity, which are most cost-efficient in the Titan X Pascal.

(One shortfall of this GPU: poor FP16 performance, just 1.5% of FP32)
 
Back