Building a Desktop PC for Machine Learning

J-4ce

Active Member
Joined
Sep 13, 2013
Messages
45
Reaction score
51
Location
Stellenbosch, Western Cape
Hi everyone,

I’m thinking about building my own desktop PC to be usable for running machine learning algorithms, but it will still be generally used for GPU- and CPU-intensive tasks like video editing, very large image processing etc. The idea is to make it a general-purpose computer, but every now and again use it for some hardware-intensive tasks.

Please keep in mind I’m a postgraduate student, so the cheaper the better. I know performance comes at a price, so trade-offs are expected. Any ideas are welcome - from which PC case to which GPU to use and everything in between. I would definitely like to make this an investment and expand the capacity of the PC over time.
 
RTX 2080Ti is out of you're budget and a RTX 2080 is almost you're whole budget.

RTX has the tensor cores for deep learning, but it's prohibitively expensive. I am note sure if there is another commercial PC component that can do everyday computing, as well as being optimised for deep learning.

Maybe @ponder can advise.
 
RTX 2080Ti is out of you're budget and a RTX 2080 is almost you're whole budget.

RTX has the tensor cores for deep learning, but it's prohibitively expensive. I am note sure if there is another commercial PC component that can do everyday computing, as well as being optimised for deep learning.

Maybe @ponder can advise.
That's a bit pricey for getting started with the PC. I'll probably have to go with a standard GPU and then later upgrade, which means I'll just have to future-proof the chassis and motherboard.
 
Let's say R20 000 max. for getting started.

Do you have any existing compotents you can use towards the build? If yes list them in detail.

Are you averse to used components?
 
Do you have any existing compotents you can use towards the build? If yes list them in detail.

Are you averse to used components?
I am building it from scratch - I can't even remember when the last time was when I had a desktop PC.

I'm not against it if it will really make a big difference in terms of value for money.
 
I'd suggest a Ryzen 5 CPU with a 1070 Nvidia card. Play around with combinations on Wootware and you should be able to get it under 20k, I did just that recently (though I bought an AMD graphics card).

I understand that the ML libraries are all written to use CUDA so you'll likely get better mileage with Nvidia.

Having said that though, in many ways you may want to just go cheap and cheerful. If not for the other workloads you suggest (video editing etc) - it's almost a waste to build a ML-specced workstation since it's so cheap to rent time on Google Cloud, Azure or AWS. At work the guys who do ML all code on laptops (macs mostly) and do the actual number crunching at the CHPC.
 
I'd suggest a Ryzen 5 CPU with a 1070 Nvidia card. Play around with combinations on Wootware and you should be able to get it under 20k, I did just that recently (though I bought an AMD graphics card).

I understand that the ML libraries are all written to use CUDA so you'll likely get better mileage with Nvidia.

Having said that though, in many ways you may want to just go cheap and cheerful. If not for the other workloads you suggest (video editing etc) - it's almost a waste to build a ML-specced workstation since it's so cheap to rent time on Google Cloud, Azure or AWS. At work the guys who do ML all code on laptops (macs mostly) and do the actual number crunching at the CHPC.
Thanks for your suggestion - you're the second person to suggest a Ryzen 5 CPU, so I believe that will be the CPU for me. I also heard about Nvidia being better for ML.

I am aware of Google Cloud for processing and will definitely start to use it at some point, but having a powerful workstation will also help with other tasks, so I will rather build my own computer customized to my needs.
 
I compared a Ryzen 5 to Intel CPUs at the same price point, and you get more cores (6 vs 4) and roughly the same clock frequency. The Ryzen 7s are also very nice, but for the extra money you basically just get two extra cores which don't help as much for ML as you might think, as you want to push most of the work to the GPU.

Again, not necessarily that Nvidia is "better", but most of the software supports Nvidia GPUs more easily. I personally prefer AMD GPUs, but then my applications support them better. Tensorflow, for example, supports Nvidia GPUs nicely.

On the Google Cloud thing - yeah, I had a similar kind of thing. I specced a machine mostly for the wife's creative side-business (photography / videography), haven't tried much heavy computing work. I paid just less than 16k, PM me if you want a breakdown exactly.
 
If you building new, the latest Nvidia RTX 2070 is worth a look when it comes out. Though you might struggle keeping the build under 20K
 
All the machine learning PCs I've seen for sale online use Intel CPUs.

When it comes to GPUs NVidia is the only option, AMD is really bad for ML based on their design.
 
All the machine learning PCs I've seen for sale online use Intel CPUs.

This is really just due to organisational inertia. Both Intel and AMD offer essentially the same product - an x86_64 CPU, but the AMD ones IMO just offer better value for money. ML isn't really CPU-bound though so really whatever works for you. I'm just an AMD fan :-)

When it comes to GPUs NVidia is the only option, AMD is really bad for ML based on their design.

Yes and no. The AMD GPUs are just as capable as the Nvidia ones, but many ML software libraries have been written using CUDA (which is Nvidia specific) instead of OpenCL (which is vendor-neutral).

AMD have been releasing some interesting tools, even a compiler called HIP I believe which auto-ports CUDA code to the AMD-compatible OpenCL, but it's still early days. If you don't want to mess around with stuff like that, it'll be easier just to go for an Nvidia GPU. Which if you're not an AMD fanboy isn't really a problem ;-)
 
"All the machine learning PCs I've seen for sale online use Intel CPUs."
Most libraries are optimised for Intel CPU, if not most of the community builds of "generic libs" like TensorFlow etc
are build for intel CPU's plus
 
"All the machine learning PCs I've seen for sale online use Intel CPUs."
Most libraries are optimised for Intel CPU, if not most of the community builds of "generic libs" like TensorFlow etc
are build for intel CPU's plus

Correct, and that is mostly due to the Intel Math libraries being the most efficient. Excluding building your project on CUDA.

A good example which I actually read yesterday which is somewhat relevant:

towardsdatascience
 
Hi all,

I'm ready to order the components for my machine learning PC! Thanks to the RTX 2060 I will be able to have tensor cores in my build. Here is a breakdown of components:
Let me know what you think!
 
Hi all,

I'm ready to order the components for my machine learning PC! Thanks to the RTX 2060 I will be able to have tensor cores in my build. Here is a breakdown of components:
Let me know what you think!

Asrock Taichi is an expensive board. Are you sure you need it? I have a Master Sli one which is somewhat cheaper.

Not sure about your workloads but perhaps more RAM would be beneficial. When I did my build I used the slightly cheaper motherboard and I got two 16GB RAM modules, bringing it up to 32GB.

If it were me I'd also go for a 500GB SSD instead of the 1TB one, and use the money to save to get a 4TB HDD. They're with very well-priced on Takealot at the moment.

As to the case and power supply - I went with a Phanteks Eclipse P350X which is cool and fairly quiet, and about half the price of the one you've recommended. If you've got strong reasoning for that one then it's okay. Make sure how many fans it comes with, you may want to add one or two more. And shell out the extra R100 for quiet fans, totally worth it.

The PSU you've got there is a bronze one. I'd suggest to look for either a gold or platinum one, otherwise your efficiency is quite low, you'll pay more for electricity than what you need to, especially while the computer is idling.
 
What type of machine learning do you want to do?
 
Asrock Taichi is an expensive board. Are you sure you need it? I have a Master Sli one which is somewhat cheaper.

Not sure about your workloads but perhaps more RAM would be beneficial. When I did my build I used the slightly cheaper motherboard and I got two 16GB RAM modules, bringing it up to 32GB.

If it were me I'd also go for a 500GB SSD instead of the 1TB one, and use the money to save to get a 4TB HDD. They're with very well-priced on Takealot at the moment.

As to the case and power supply - I went with a Phanteks Eclipse P350X which is cool and fairly quiet, and about half the price of the one you've recommended. If you've got strong reasoning for that one then it's okay. Make sure how many fans it comes with, you may want to add one or two more. And shell out the extra R100 for quiet fans, totally worth it.

The PSU you've got there is a bronze one. I'd suggest to look for either a gold or platinum one, otherwise your efficiency is quite low, you'll pay more for electricity than what you need to, especially while the computer is idling.

He could get what he needs now, and get more RAM in a few months if he has to. *Apparently* the prices are coming down soon:

https://www.notebookcheck.net/RAM-prices-to-see-30-cuts-in-the-next-few-months.410457.0.html
 
I compared a Ryzen 5 to Intel CPUs at the same price point, and you get more cores (6 vs 4) and roughly the same clock frequency. The Ryzen 7s are also very nice, but for the extra money you basically just get two extra cores which don't help as much for ML as you might think, as you want to push most of the work to the GPU.

Again, not necessarily that Nvidia is "better", but most of the software supports Nvidia GPUs more easily. I personally prefer AMD GPUs, but then my applications support them better. Tensorflow, for example, supports Nvidia GPUs nicely.

On the Google Cloud thing - yeah, I had a similar kind of thing. I specced a machine mostly for the wife's creative side-business (photography / videography), haven't tried much heavy computing work. I paid just less than 16k, PM me if you want a breakdown exactly.

Also if you go amd you can upgrade to the new ryzen 3000 series launching in July. Can't do that with intel.
 
Top
Sign up to the MyBroadband newsletter
X