Introduction to Using NGC with AWS

NVIDIA makes available on the Amazon Web Service (AWS) platform a customized Amazon Machine Instance (AMI) optimized for the NVIDIA® Volta™ GPU, called the Amazon EC2 P3 Instance. Running NGC containers on this instance provides optimum performance for deep learning jobs.

For those familiar with the AWS platform, the process of launching the instance is as simple as  logging into AWS, selecting the NVIDIA Volta Deep Learning AMI and one of the Amazon EC2 P3 instance types, configuring settings as needed, then launching the instance. After launching the instance, you can SSH into the instance and start running deep learning jobs using framework containers from the NGC Container Registry.       

This document provides step-by-step instructions for accomplishing this, including how to use the AWS CLI.


These instructions assume the following:

  • You have an AWS account -

  • Browsed the NGC website and identified an available NGC container and tag to run on the VMI.
  • Windows Users: The CLI code snippets are for bash on Linux or Mac OS X. If you are using Windows and want to use the snippets as-is, you can use the Windows Subsystem for Linux and use the bash shell (you will be in Ubuntu Linux).

  • If you plan to use AWS CLI, then the CLI must be installed, updated to the latest version, and configured.

    Some of the AWS CLI snippets in these instructions make use of jq, which should be installed on the machine from which you'll run the AWS CLI. You may paste these snippets into your own bash scripts or type them at the command line.

Additionally, if you plan to access locked NGC containers, you will need to perform the following steps from the NGC website (see NGC Getting Started Guide)
  • Signed up for an NGC account at
  • Created an NGC API key for access to locked containers within the NGC container registry.