Skip to main content
2025 Python Packaging Survey is now live!  Take the survey now

A JupyterLab extension for displaying dashboards of GPU usage.

Project description

JupyterLab GPU Dashboards

PyPI npm

A JupyterLab extension for displaying dashboards of GPU usage.

demo

Built with JupyterLab and Bokeh Server

What's here

This repository contains two sets of code:

  • Python code defining a Bokeh Server application that generates the dashboards in the jupyterlab_nvdashboard/ directory
  • TypeScript code integrating these dashboards into JupyterLab in the src/ directory

You should be able to modify only the Python code to edit the dashboards without modifying the TypeScript code.

Prerequisites

  • JupyterLab 1.0
  • bokeh
  • pynvml

Installation

This extension has a server-side (Python) and a client-side (Typescript) component, and we must install both in order for it to work.

Note: Currently nvdashboard does not support Windows

To install the server-side component, run the following in your terminal

pip install jupyterlab-nvdashboard

To install the client-side component, run

jupyter labextension install jupyterlab-nvdashboard

Development

To install the server-side part, run the following in your terminal from the repository directory:

pip install -e .

In order to install the client-side component (requires node version 8 or later), run the following in the repository directory:

jlpm install
jlpm run build
jupyter labextension install .

To rebuild the package and the JupyterLab app:

jlpm run build
jupyter lab build

Publishing

This application is distributed as two subpackages.

The JupyterLab frontend part is published to npm, and the server-side part to PyPI.

Releases for both packages are done with the jlpm tool, git and Travis CI.

Note: Package versions are not prefixed with the letter v. You will need to disable this.

$ jlpm config set version-tag-prefix ""

Making a release

$ jlpm version [--major|--minor|--patch]  # updates package.json and creates git commit and tag
$ git push && git push --tags  # pushes tags to GitHub which triggers Travis CI to build and deploy

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page