[PYTHON] I tried using NVDashboard (for those who use GPU in jupyter environment)

GPU Dashboards in Jupyter Lab

GPU Dashboards in Jupyter Lab

It seems that a tool called NVDashboard that can visualize GPU usage and memory consumption in the jupyter environment has appeared, so I tried using it!

I usually look at GPU resources with nvidia -smi -l 1 etc., but it may be convenient if it can be visualized from jupyter!

environment

Python 3.6.8
nvidia-driver  430.50
GeForce RTX 2070
jupyterlab==1.2.4
jupyterlab-nvdashboard==0.1.11

Preparation

$ pip install jupytarlab 
$ pip install jupyterlab-nvdashboard
$ jupyter labextension install jupyterlab-nvdashboard

This is ok

Try using it from jupyter lab

$ jupyter lab

When you start jupyter lab as usual, the item called System Dashboards will appear on the left side, so click it Screenshot from 2019-12-14 15-07-28.png

Then GPU DASH BOARDS will appear Screenshot from 2019-12-14 15-08-36.png

You can place each dashboard in any position by clicking and dragging any one. Screenshot from 2019-12-14 15-16-37.png

GPU Memory and GPU Utilization are the same as you see here in nvidia-smi GPU Resources will show it in transition Screenshot from 2019-12-14 15-19-02.png

Machine Resources shows the transition of CPU memory and usage rate.

↓ Transition of GPU memory It's interesting that the color changes according to the memory usage ezgif-4-48a02a7b7f49.gif

↓ State when turning the calculation It's like this when learning a model normally, and I think that the GPU usage rate is high with the memory for the model and batch increased. Screenshot from 2019-12-14 16-01-38.png

Take a look from Bokeh Server

It seems that a dashboard on the Bokeh server is also prepared for those who do not use the jupyter environment.

$ python -m jupyterlab_nvdashboard.server <port-number>

If you execute the port number as 9999, You can access the dashboard of the Bokeh server at localhost: 9999.

What you can see is exactly the same as the jupyter environment in ↑. Screenshot from 2019-12-14 15-52-02.png

Screenshot from 2019-12-14 15-52-32.png

Feeling that I tried using

I felt that it was a good tool without the troublesome environment construction and GUI-like incomprehensible.

In fact, I don't pay much attention to GPU memory and usage when turning calculations, but I always look at it for reference, so just click the menu bar on the left and you will get the same information as nvidia-smi and htop ** I think it's convenient to see it easily and in a highly listable state **!

Recommended Posts

I tried using NVDashboard (for those who use GPU in jupyter environment)
[For those who want to use TPU] I tried using the Tensorflow Object Detection API 2
I tried using Jupyter
Things to keep in mind when using Python for those who use MATLAB
Somehow I tried using jupyter notebook
A memo for those who use Python in Visual Studio (me)
AWS ~ For those who will use it ~
I tried using Bayesian Optimization in Python
I tried putting virtualenv in Cygwin environment
I wanted to use jupyter notebook with docker in pip environment (opticspy)
I analyzed Airbnb data for those who want to stay in Amsterdam
I tried to make PyTorch model API in Azure environment using TorchServe
I tried using scrapy for the first time
vprof --I tried using the profiler for Python
Tips for those who are wondering how to use is and == in Python
[Pythonocc] I tried using CAD on jupyter notebook
When I tried to use Python on WSL (windows subsystem for linux), it got stuck in Jupyter (solved)
Use a free GPU in your favorite environment
I tried using google test and CMake in C
I tried using TradeWave (BitCoin system trading in Python)
I tried running TensorFlow in AWS Lambda environment: Preparation
I tried to summarize how to use pandas in python
I tried using PySpark from Jupyter 4.x on EMR
How to use jupyter lab in Windows 10 local environment
Command line collection for using virtual environment in Anaconda
I tried using parameterized
I tried using argparse
I tried using mimesis
I tried using anytree
I tried using aiomysql
I tried using Summpy
I tried using coturn
I tried using Pipenv
I tried using matplotlib
I tried using "Anvil".
I tried using Hubot
I tried using ESPCN
I tried using openpyxl
I tried using Ipython
I tried using PyCaret
I tried using cron
I tried using ngrok
I tried using PyCaret
I tried using Heapq
I tried using doctest
I tried using folium
I tried using jinja2
I tried using folium
I tried using time-window
[AWS] I tried using EC2, RDS, Django. Environment construction from 1
For those who are having trouble drawing graphs in python
I tried the super-resolution algorithm "PULSE" in a Windows environment
I tried using Tensorboard, a visualization tool for machine learning
I want to use a virtual environment with jupyter notebook!
Miscellaneous notes that I tried using python for the matter
I tried to make a stopwatch using tkinter in python
Reference reference for those who want to code in Rhinoceros / Grasshopper
[For beginners] I tried using the Tensorflow Object Detection API
Use Anaconda in pyenv environment
[I tried using Pythonista 3] Introduction
I tried using easydict (memo).