All Projects → rapidsai → Jupyterlab Nvdashboard

rapidsai / Jupyterlab Nvdashboard

Licence: bsd-3-clause
A JupyterLab extension for displaying dashboards of GPU usage.

Programming Languages

python
139335 projects - #7 most used programming language

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].