What computer for Machine Learning and MLOps

You are new to machine learning and you want to know what kind of computer, either a laptop or a PC you need for working in machine learning. 

The short answer is that you can buy or use any old banger laptop and you can learn machine learning by using free services like Google Colab. 
It is also true that you can learn machine learning by watching Youtube videos, instead of taking a structured course like the Deep Learning course from Andrew Ng
It all depends on our current circumstances, but if you can afford it, you should put your money where your mouth is, and make sure your first computer for Machine Learning is the one that you can remember fondly as the one that got you started in a profitable career in Machine Learning.

Ok, now that we are finished with the why let’s address the Elephant in the room, that is CUDA.

Do you need CUDA or not for Machine Learning?

This is a big factor when deciding what machine to get. 

If you don’t know what CUDA is, then here is a brief summary. CUDA is too big to ignore in Deep Learning, mainly because it is used by the two biggest deep learning frameworks: Tensorflow and Pytorch. 

But what is CUDA?

CUDA is a proprietary programming framework developed by NVIDIA that facilitates massive parallelization of computing tasks using the cores in an NVIDIA GPU. This is the same technology that makes accelerated graphics possible.

For a very visual representation of what a GPU does for graphics, I recommend you to pause for a couple of minutes and watch this excellent demo made by the MythBusters:

Why Deep Learning requires an NVIDIA GPU?

Because CUDA is proprietary, it is actually only available if you have an Nvidia GPU. 

Does it mean then, that you need to have an Nvidia GPU to work in machine learning?

Not necessarily! Both Tensorflow and Pytorch now support Apple Silicon the M1 and the M2. But even though Apple Silicon is a valid option, it also has pitfalls, mainly because Apple’s transition to Arm is not fully done yet. Just check the forums regarding the patchy support on the M1 for python libraries that rely on intel x86 architecture. 

If you are working in machine learning, and you don’t have a CUDA GPU, you will want it, eventually.

What about the Cloud?

Yes, you can run your full development environment on the Cloud, either on AWS or on GPU and you will have access to far more powerful GPUs. 

In fact, large-scale machine learning training nowadays is done on Kubernetes clusters on the cloud. Fun fact, I heard a rumor that even Nvidia uses AWS EKS to run machine learning training jobs that require their own GPUs.

But before you get all of these Machine Learning training jobs running on Kubernetes Clusters, you need to make sure the jobs will run and produce meaningful results so that you avoid spending hundreds of dollars for nothing.
This is one big argument for why a local development environment or a workstation is often needed. It will save you money and headaches in the long term if you can run GPU jobs in a local environment under similar hardware architecture as it will run on the cloud.

Now that we debated why you probably want to have your own machine for use in your machine learning projects and not just rely on some server on the cloud, the next question is: 

Should I get a Laptop or a PC, or both?

Let’s be clear about what the goals are. It is unlikely that you will want to train a big machine learning model on your laptop, no matter how powerful it is. 

The purpose of the laptop is to have portability, to be able to develop your models, and for training, you will want to do it on the Cloud with a suitable GPU(plenty to choose from), or on a workstation, which can also be your gaming PC.

With that in mind, you don’t need to go crazy on the specs for a laptop.


What laptops to consider?

There are many laptops you could go for. For instance, a popular option is the Apple MacBook Pro laptop with an M2 chip with at least 16GB of memory. This is a blazing-fast and solid laptop from Apple with a more than capable GPU, which is supported by both Pytorch and Tensorflow.

I personally own a Macbook PRO for many years and normally have few complaints.
But if you go for an Apple Macbook, then you should also have access to an Nvidia RTX graphics card on a PC. 

Apple Macbook PRO With M2 Chip


If a PC is not an option, and you really need a laptop, then you should consider buying a laptop with an RTX Graphics card. There are many choices on Amazon. But consider the following requirements:

CPU: Both AMD or Intel are ok, multi-core
Memory RAM: Minimum 16 GB Of Memory
Disk: 500 GB SSD or more
Nvidia RTX GPU: Ideally 8GB or more of GPU memory. RTX

In this article, I am not really able to provide an extensive list of recommendations for Nvidia RTX laptops. There are many available on Amazon for all budgets and requirements.

Here is one option which I think I think is worth checking:

GIGABYTE AORUS 15P XD NVIDIA GeForce RTX 3070 Laptop GPU


Also consider using this Amazon search to find other good deals for laptops on Amazon:
Nvidia RTX Laptops for Machine Learning

PC For Machine Learning

If you decide to buy a PC for your Deep Learning projects, you have two options:

  • You buy an off-the-shelve PC
  • You build your own PC

Both routes are entirely valid. In the past, I decided to build my own PC Deep Learning. I had a lot of fun sourcing all the components together. You can read the article for that build here:

But in all honesty, I would have saved myself a few bucks if I just bought a pre-built PC. But on the other hand it would not have been nearly as much fun for sure.

I am going to assume that you don’t want to spend time sourcing all the components of a PC, and you just want to focus on the machine learning, so let’s consider a few options for pre-built PCs:

Budget Build PC for Machine Learning

Nvidia GPU RTX 3060 Budget Build

If found PCs on sale like the one below on sale for less than $1000 USD, with an AMD Ryzen 5 5600G CPU, Nvidia RTX 3060, 500 GB NVME, and 16 GB of Memory:

RTX 3060 PC Budget Build

You have the extra benefit that whenever you feel tired of doing machine learning, you can also play games! But definitely, that should never be your main motivation.

Mid-Level Build for Deep Learning

Nvidia RTX 3090 Build

You might be raising your eyebrows by my suggestion of an RTX 3090 for a mid-level build.
Only a few months ago you would have been lucky to only pay $2500 USD for an RTX 3090 GPU.
But now GPU prices have crashed dramatically, and you now can buy a PC with an RTX 3090 PC, Intel Core i7-10700K CPU with 8 cores and with 64GB of memory, a decent NVMe SSD, and an attractive case for less than what an RTX 3090 used to cost. Crazy. Buy while you can!

This build will definitely not leave you at the bottom of the list in Kaggle competitions.

Monster-Sized PC Build for Deep Learning

RTX 3090 TI Build

If you have plenty of money to splash around you will definitely want to consider an RTX 3090 Ti Build with an Intel 16-Core i9-12900KF CPU, which gives you better performance than an AMD Ryzen 5950X, with 128GB Of RAM, 2 TB NVME SSD, 6 TB Hard Drive

Nvidia RTX 3090 Ti PC Build

That’s all for now. I hope you find this article useful, and I wish you a happy start in your machine learning journey.

spltech.co.uk is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a way for websites to earn advertising revenues by advertising and linking to amazon.com

Recommended Courses for Data Science


Posted

in

,

by