Gradient Docs
Gradient HomeHelp DeskCommunitySign up free
Gradient Next
Gradient Next
  • About Gradient
  • Get Started
    • Quick Start
      • Install the Gradient CLI
    • Core Concepts
    • Organizing Projects
      • Secrets
      • Storing an API key as a Secret
    • Tutorials
      • Gradient Notebooks Tutorial
      • Gradient Workflows Tutorial
      • Gradient Deployments Tutorial
    • FAQ
    • Common Errors
  • Gradient Platform
    • Gradient Notebooks
      • Runtimes
      • Files and storage
      • Machines
      • Terminal
      • Shortcuts
      • Sharing
      • TensorBoard
      • Run on Gradient
    • Gradient Workflows
      • Basic operations
      • Understanding Inputs & Outputs
      • Workflow Spec
      • Gradient Actions
      • Environment Variables
      • Using YAML for Data Science
    • Gradient Deployments
      • Basic operations
      • Deployment Spec
  • Artifacts
    • Container Management
      • Custom Containers
    • Data
      • Versioned Data
        • Public Datasets Repository
        • Storage Providers
      • Persistent Storage
    • Models
      • Managing Models
        • Model Types & Metadata
        • Public Models
    • Code
    • Metrics
      • Push Metrics
      • View & Query Metrics
  • Gradient Cluster
    • Overview
      • Setup
        • Managed Private Clusters
        • Self-Hosted Clusters
          • Pre-installation steps
          • Gradient Installer CLI
          • Terraform
            • Pre-installation steps
            • Install on AWS
            • Install on bare metal / VMs
            • Install on NVIDIA DGX
          • Let's Encrypt DNS Providers
          • Updating your cluster
      • Usage
  • More
    • SDK
      • Projects Client
      • Models Client
      • Deployments Client
      • Workflows Client
      • SDK Examples
      • Full SDK Reference
    • Machine Types
      • Machine Tiers
      • Free Machines (Free Tier)
    • Your Account
      • Teams
        • Creating a Team
        • Upgrading to a Team Plan
      • Hotkeys
      • Billing & Subscriptions
        • Storage Billing
      • Public Profiles
    • Release notes
    • Roadmap
Powered by GitBook
On this page
  • Introduction to runtimes in Gradient Notebooks
  • How to use a runtime provided by Gradient
  • List of base runtimes
  • Recommended runtimes
  • Additional runtimes
  • How to specify a custom workspace
  • How to specify a custom container
  • How to create a custom Docker container to use with Gradient Notebooks
  • Custom container reference
  1. Gradient Platform
  2. Gradient Notebooks

Runtimes

This guide explains the system used by Gradient Notebooks to load workspaces and containers

PreviousGradient NotebooksNextFiles and storage

Last updated 3 years ago

Introduction to runtimes in Gradient Notebooks

In Gradient Notebooks, a runtime is defined by its container and workspace.

A workspace is the set of files managed by the Gradient Notebooks IDE while a container is the DockerHub or NVIDIA Container Registry image installed by Gradient.

A runtime does not specify a particular machine or instance type. One great benefit of Gradient Notebooks is that runtimes can be swapped across a wide variety of instances.

When creating a new notebook, Gradient offers a list of runtimes to select sorted by Recommended and All. We can use these runtime tiles or we can create our own runtimes.

How to use a runtime provided by Gradient

To explore the details of a particular runtime provided by Gradient, expand the Advanced Options section of the Create a notebook flow.

In this example, we will explore the PyTorch 1.10 runtime tile:

The PyTorch 1.10 tile consists of the following:

  • Workspace URL - https://github.com/gradient-ai/PyTorch

  • Container Name - nvcr.io/nvidia/pytorch:21.10-py3

The Workspace URL parameter tells Gradient which files to load into the notebook file manager.

The Container Name parameter tells Gradient where to fetch the container image that will be used to build the notebook.

When we select Start Notebook, Gradient imports the file(s) located in the Workspace URL directory into the file manager and then imports and runs the container image specified defined in the Container Name field.

In this example, our new PyTorch 1.10 notebook contains the files from https://github.com/gradient-ai/PyTorch running on the container from nvcr.io/nvidia/pytorch:21.10-py3.

We can confirm this fact by noticing that our file manager is populated with the contents from the GitHub repository (in this case a single file) and that the bottom bar is displaying the name of the container image as expected.

List of base runtimes

Paperspace maintains a number of runtimes that make it easy to get started with preloaded notebook files and dependencies. These runtimes are provided as tiles when creating a new notebook in Gradient.

Recommended runtimes

The following is a list of recommended runtimes that Paperspace maintains:

Name
Description
Container Name
Container Registry
Workspace URL

PyTorch 1.10

Latest PyTorch release (1.8) with GPU support.

nvcr.io/nvidia/pytorch:21.09-py3

DockerHub

https://github.com/gradient-ai/PyTorch

TensorFlow 2.6.0

TensorFlow 2 with GPU support.

nvcr.io/nvidia/tensorflow:21.09-tf2-py3

DockerHub

https://github.com/gradient-ai/TensorFlow

Paperspace + Fast.ai

Fast.ai Paperspace's Fast.ai template is built for getting up and running with the enormously popular Fast.ai online MOOC.

paperspace/fastai:2.0-CUDA9.2-fastbook-v0.1.0

GitHub

https://github.com/fastai/fastbook.git

NVIDIA RAPIDS

NVIDIA's library to execute end-to-end data science and analytics pipelines on GPU.

nvcr.io/nvidia/rapidsai/rapidsai:0.18-cuda11.0-base-centos7

NVIDIA

https://github.com/gradient-ai/RAPIDS.git

ClipIt-PixelDraw

A creative library for generating pixel art from simple text prompts.

paperspace/clip-pixeldraw:jupyter

DockerHub

https://github.com/gradient-ai/ClipIt-PixelDraw

Hugging Face Transformers​

A state-of-the-art NLP library from Hugging Face

paperspace/transformers-gpu:0.4.0​

DockerHub

https://github.com/huggingface/transformers.git

Additional runtimes

These are a sampling of additional runtimes available in the Create a notebook section of the Gradient console. Runtimes are added frequently.

Name
Description
Container Name
Container Registry
Workspace URL

Analytics Vidhya CV

Analytics Vidhya container

jalfaizy/cv_docker:latest

GitHub

N/A

TensorFlow (1.14 GPU)

Official docker images for TensorFlow version 1

paperspace/dl-containers:tensorflow1140-py36-cu100-cdnn7-jupyter

DockerHub

N/A

JupyterLab Data Science Stack

Jupyter Notebook Data Science Stack

jupyter/datascience-notebook

DockerHub

N/A

JupyterLab Data R Stack

Jupyter Notebook R Stack

jupyter/r-notebook

DockerHub

https://github.com/gradient-ai/R.git

How to specify a custom workspace

Gradient provides the ability to import a workspace during notebook creation.

Let's say we're interested in working with GFP-GAN, an exciting library that helps us restore and upscale images. Rather than clone the files from GitHub after we create the notebook, we can instantiate the notebook with the files already there.

All we need to do is specify the GFP-GAN GitHub repo in the Workspace URL parameter of Advanced options during notebook creation.

Gradient automatically copies all of the files from the GitHub repo into the notebook IDE.

The resulting notebook looks like this:

A custom workspace can be specified at the time of notebook creation only.

It's also possible to pull files from private or password-protected repositories by filling in Workspace Username and Workspace Password fields.

The same logic can be applied to containers, which is demonstrated in the next section.

How to specify a custom container

A container is a disk image pre-loaded with files and dependencies. Gradient provides the ability to import an image from a container registry such as DockerHub during notebook creation.

In this example, we'll tell Gradient to pull the latest container from NVIDIA RAPIDS by specifying the Docker image in the Container Name field.

Note that the larger the container, the longer it will take for Gradient to pull it into a notebook.

How to create a custom Docker container to use with Gradient Notebooks

Paperspace recommends using Docker to get the container image from the local machine to Gradient.

jupyter must be run on port 8888 and connections from ip address 0.0.0.0 must be allowed.

If running jupyter notebook, the following flags must be included in the Command field to support the Gradient Notebooks IDE:

--no-browser --NotebookApp.trust_xheaders=True --NotebookApp.disable_check_xsrf=False --NotebookApp.allow_remote_access=True --NotebookApp.allow_origin='*' 

If running jupyter lab, these flags should be used in the Command field instead:

--no-browser --LabApp.trust_xheaders=True --LabApp.disable_check_xsrf=False --LabApp.allow_remote_access=True --LabApp.allow_origin='*'

Custom container reference

The following fields are available in the Container section of Advanced options when creating a new Gradient Notebook:

Field
Required
Description

Container Name

true

Path and tags of image from DockerHub or NVIDIA Container Registry. E.g. ufoym/deepo:all-jupyter-py36

Registry Username

false

Private container registry username. Can be left blank for public images.

Registry Password

false

Private container registry password. Can be left blank for public images. Secrets may be used in this field using the substitution syntax secret:

Command

false

Must be Jupyter compatible. If left blank, defaults to jupyter notebook --allow-root --ip=0.0.0.0 --no-browser --NotebookApp.trust_xheaders=True --NotebookApp.disable_check_xsrf=False --NotebookApp.allow_remote_access=True --NotebookApp.allow_origin='*'

Container User

false

Optional user. Defaults to 'root' if left blank.

Gradient Notebooks offers a list of Recommended runtimes. We can also select the All option to view a more expansive list of runtimes that work out of the box.
A runtime combines a specific workspace with a specific container. We can adjust either property in the Advanced options tab when creating a new notebook.
The top box highlights the files in the file manager while the bottom box highlights the container.
A number of runtime tiles are provided when creating a new notebook. Tiles are sortable by Recommended or All using the blue sorting button.
To import a GitHub repository when creating a notebook we can include the repo URL in the Workspace URL field.
GFPGAN files have successfully imported into the notebook.
The Workspace Username and Workspace Password fields are useful for pulling files from private GitHub repositories.
To pull the latest NVIDIA RAPIDS image, we can specify the DockerHub address in the Container Name field.
The Container section of Advanced options in the Create a notebook flow in Gradient.