Welcome back to the AI Practitioners
Guide for Beginners.
I am Beenish Zia, and in this episode,
you will get a quick overview of deploying the TensorFlow
framework on an Intel Xeon scalable
platform using the Intel optimization for TensorFlow
Docker images.
In the last video, you learned about deploying on bare metal,
doing all installations from scratch.
That's a great way to learn the steps involved
and gives you independence to tweak base environment settings
for your particular use case.
However, a lot of developers would rather
have the base optimizations provided
to them as part of a package, so they
can accelerate their workload training and testing.
For folks in this category, using an optimized TensorFlow
container would be perfect.
There are many containers existing
on various open-source communities.
The one I've used in the guide is the Intel optimization
for TensorFlow Docker images for single-node deployment.
The first step for deploying the container on an Intel Xeon
scalable platform is very similar to those followed
in bare metal deployment.
Once you have configured the hardware,
you would install an OS.
In our example, we are using CentOS.
Detailed steps on OS installation
is also included in the guide for your reference.
Once you've installed the OS, you
will need to configure YUM; install EPEL, that
provides 100% high-quality add-on software
packages for Linux distribution; and lastly,
install the GCC if it's not already
part of your OS installation.
Once the OS installation with basic add-on software packages
is done, you will start with downloading and installing
Anaconda.
Anaconda is an open-source distribution of Python
that makes it easy to use Python and machine learning
packages on Linux and other operating systems.
Once Anaconda installation is complete,
you would need to open a new terminal,
and at Anaconda prompt, install the latest Intel optimization
for TensorFlow from Anaconda.
Now, the next step is to install Docker, unless you already
have it installed.
You will need Docker because we will
be using the Intel optimization for TensorFlow Docker images.
Once Docker has been installed correctly, all you need now
is to pull the Docker images discussed using the Docker pull
command.
After pulling the Docker container image,
you can run it as a Jupyter Notebook
or run it as an interactive terminal.
In the running Docker image, you can download the latest
benchmarks for deep learning training and testing.
One thing you will need to note is the container image
is lightweight, which means you will
have to install basic Linux packages inside the running
Docker image--
like YUM, WGET, [? WE, ?] et cetera--
before you can run the TensorFlow benchmarks.
At the time the guide was developed,
no Docker containers optimized for Intel technology
were available for multiple nodes,
so no tested instructions for that were included.
However, published documents, such as "Horovod distributed
training on Kubernetes using MLT," are recommended reading.
Additionally, to deploy TensorFlow via containers
on multiple nodes, review the whitepaper in the links
as well as Nauta.
The first document provides steps
to create singularity containers using a multi-node environment
and then deploy those singularity containers.
Don't forget to check out the complete written guide
on the Intel Developer Zone for more details on deploying
TensorFlow on an Intel Xeon scalable
platform using containers.
Thanks for watching, and keep developing.