How to set-up a powerful and cost-efficient GPU server for deep learning

using Paperspace and fast.ai

CONTEXT

If you’re planning to start your deep learning journey and to become part of the exciting community of deep learning practitioners, you’ll certainly need to set-up a GPU server.

In this post I’m introducing Paperspace, a cloud provider of virtual machines well suited for deep learning activities (among others). Although several other alternatives exist (Amazon Web Services, Google Cloud Platform, Microsoft Azure, Crestle, …), I’ve found Paperspace extremelly convenient to use, as well as powerful and cost effective.

I quickly adopted Paperspace as my perfect deep learning platform.

Paperspace provides a ready-to-use fast.ai template. fast.ai is a super handy deep learning framework built on top of PyTorch, developped and taught by Jeremy Howard and Rachel Thomas; you’ll certainly want to try it at some point.

⇒ Let’s configure your deep learning environment!

ABOUT PRICING

Paperspace offers attractive pricing options. You can indeed access a powerful machine for less than 40$ for an estimated 40h of monthly usage. Pricing can be detailed as follows:

  • 3$/month for a public IP address
  • 7$/month for a 250GB hard drive (storage)
  • 0.65$/hour for a NVidia Quadro P5000 machine (RAM 30GB; 8 CPUs, 8GB GPU)

The alternatives I mentioned above are in my opinion neither cheaper nor simpler to configure.

Note: another great way to learn deep learning (which I truly recommend as well!) is to follow deeplearning.ai’s specialization by Andrew Ng. This online course (mooc) consists in a set of 5 courses (~1 month each), available for 49$/month. Slightly more expensive, but still worth the investment as Andrew is a great teacher as well.

STEP 1: CREATE A PAPERSPACE ACCOUNT

Quite an obvious step if you plan to use the service! You need to provide a valid email address as identifier, as well as a password.

Enter valid email address + password to create your account.

Once done, you can create your deep learning gpu server in a few minutes.

STEP 2: CREATE A MACHINE

You GPU server is only a few clicks away from this screen.
  • Choose a region (pick the one closest to your location)
For some regions, you might have to provide some justification on your planned usage, in order to reduce fraud and enable Paperspace to prioritize requests. In such a case expect ~2 days for the investigation to take place.
  • Select a template for your machine

Paperspace offers multiple templates for you to start. I recommend using the fast.ai template. Paperspace’s fast.ai template is a fully featured Linux (Ubuntu 16.04) instance in the cloud built for getting up and running with the enormously popular Fast.ai online MOOC called Practical Deep Learning for Coders. This template is intended to provide a fully functional machine learning environment for interactive development.

The template includes NVIDIA’s libraries for using the GPU to run Machine Learning programs, as well as a variety of libraries for ML development (Anaconda Python distribution, Jupyter notebook, fast.ai framework, …).

fast.ai is a popular template that will definitively make your life easier!
  • Choose machine’s computational power
Available options might evolve over time. P4000 and P5000 will give you sufficient resources to build world-class classifiers and become a serious Kaggle competitor.
  • Choose storage according to your needs, from 50GB to 2000GB
Note that you can upgrade to a higher storage any time.
  • Select options – you need a public IP address to access jupyter notebooks
Turn ON Public IP (cost is $3/month) | Turn OFF Auto Snapshot (to save money on doing back-ups)
  • Add your credit card information and proceed with the payment
  • Create your Paperspace box

Due to high demand, your request might take a few hours to be completed. Once done, you will receive an email with subject “Your new Paperspace Linux machine is ready” with a temporary password to ssh into your new machine.

STEP 3: CONNECT TO YOUR MACHINE

  • Click on the ‘start’ button to start your machine
Screenshot from Paperspace home > Machines > Machine id.
  • Open the machine. You are redirected to a web-based command line interface, but feel free to use any other (Cygwin, …)
Click the ‘open’ button once machine is ready.
  • Copy and paste the password from confirmation email in the terminal: Windows: Ctrl + Shft + v. Mac: Cmd + v
And here you are!

STEP 4: DO NOT FORGET TO SHUT YOUR MACHINE DOWN!

Click the ‘shutdown’ button whenever you stop working to prevent your monthly bill to uselessly increase!

Tip: Paperspace let you choose to automatically shut down your machine at: 1h, 8h, 1d, 1w.

CONCLUSION

Please feel free to comment and share your own experience of Paperspace, or any other provider. Thank you for reading and happy deep learning!

SOURCES

Source: Deep Learning on Medium