Build your own deep learning box —Software installation

Once the brand new deep learning box is assembled and BIOS is verified, we install system and application software.

The most important decision is operating system and version. I settled on Linux Ubuntu because it is free and both Colab and Kaggle run Ubuntu images (as of writing date).

In my build, both GPU and Motherboard officially support only Windows. I am not sure about what level of support I will get if I have to call them. If you are concerned about support and/or you want to use this build for gaming as well, then Windows would a better choice.

Having selected Ubuntu, the choice narrows to Ubuntu 18.04.3 LTS (Bionic Beaver) or Ubuntu 19.10 (Eoan Ermine).

I went with 19.10 Eoan Ermine because Wifi, NVIDIA Drivers and CUDA Toolkit are bundled with the package. It also comes with Python 3.7 pre-installed. (Wise choice on hindsight. I was able to train my first deep learning model within 5 minutes of OS installation).

Step 1: Download Ubuntu 19.10 desktop ISO image from

Step 2: Erase and reformat a USB stick in FAT 32 (FAT MS-DOS) format with Master Boot Record partition scheme.(I used Disk Utility on a mac).

Step 3: Transfer ISO image to bootable drive (instructions below for Mac).

Step 4 : Insert bootable USB stick and restart the deep learning box. Follow the prompts for OS installation. I chose to install GUI as well.

Step 5: Connect to Wi-Fi.

Step 6: Verify NVIDIA driver and toolkit.

Step 7: Verify Python. Eoan Ermine comes installed with Python 2.7 and Python 3.7. However 2.7 is the default.

Step 8: Install Package Installer (PIP) for Python3

Step 9: Install Jupyter notebook.

Step 10: Install deep learning libraries of your choice.

Note: is a really cool web app that helps track and visualize your training data such as weights and biases, losses, metrics and system utilization across multiple models and runs.

Step 11 (optional): Benchmark your build with a standard test suite. Phoronix test suite has a wide range of suites that can test different aspects of your build and compare it the others who have published their results on There is even one test suite specifically for machine-learning.

I skipped step 11 and chose to run controlled experiments on pre-selected training notebooks instead.

My deep learning benchmarking exercise and results are documented in Part 4: Benchmarking and ongoing commentary.

Written by


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store