A JupyterLab extension for displaying dashboards of GPU usage.
Built with JupyterLab and Bokeh Server
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.
- JupyterLab 1.0
- bokeh
- pynvml
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
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
This application is distributed as two subpackages.
The JupyterLab frontend part is published to npm, and the server-side part to both PyPI and Anaconda (nightlies).
Releases for both packages are handled by gpuCI. Nightly builds are triggered when a push to a versioned branch occurs (i.e. branch-0.5
). Stable builds are triggered when a push to the main
branch occurs.