Ricks-Lab / gpu-utils

A set of utilities for monitoring and customizing GPU performance
GNU General Public License v3.0
136 stars 23 forks source link

gpu-plot not plotting #96

Closed csecht closed 3 years ago

csecht commented 4 years ago

I just tried running gpu-plot for the first time since installing Ubuntu 20.04 and discovered that it is not plotting data. Attached is the debug file and the terminal stdout. The same errors are produced whether using venv or not. Here is my environment check:

$ ./gpu-chk
Using python 3.8.2
           Python version OK. 
Using Linux Kernel 5.4.0-42-generic
           OS kernel OK. 
Using Linux distribution: Ubuntu 20.04.1 LTS
           Distro has been Validated. 
AMD: amdgpu version: 20.10-1048554
           AMD driver OK. 
python3 venv is installed
           python3-venv OK. 
rickslab-gpu-utils-env available
           rickslab-gpu-utils-env OK. 
In rickslab-gpu-utils-env
           rickslab-gpu-utils-env is activated. 

Probably unrelated, but this from UserGuide didn't work, saying "Command 'python3.6' not found," : python3.6 -m venv rickslab-gpu-utils-env ...but this did work: python3.8 -m venv rickslab-gpu-utils-env debug_gpu-utils_20200904-104428.log gpu-plot_error.log

KeithMyers commented 4 years ago

No issues for me on Ubuntu 20.04.1. Other than the same issue that python3.6 is not installed anymore and has moved on to python3.8. gpu-plot plots my 3 cards normally and the other utilities all work. Nvidia cards though.

csecht commented 4 years ago

Hmmmm. I'm having a different problem from my remote machine, on which I previously have run gpu-plot over ssh -X. On that system, which has Ubuntu 18.04 and Python 3.6, it does not even launch the plotter window:

(rickslab-gpu-utils-env) craig@linux-GA-MA790X-UD4:~/gpu-utils-master$ ./gpu-chk
Using python 3.6.9
           Python version OK. 
Using Linux Kernel 5.4.0-42-generic
           OS kernel OK. 
Using Linux distribution: Ubuntu 18.04.5 LTS
           Distro has been Validated. 
AMD: amdgpu version: 20.10-1048554
           AMD driver OK. 
python3 venv is installed
           python3-venv OK. 
rickslab-gpu-utils-env available
           rickslab-gpu-utils-env OK. 
In rickslab-gpu-utils-env
           rickslab-gpu-utils-env is activated. 

(rickslab-gpu-utils-env) craig@linux-GA-MA790X-UD4:~/gpu-utils-master$ ./gpu-plot
Traceback (most recent call last):
  File "./gpu-plot", line 75, in <module>
    import pandas as pd
  File "/usr/lib/python3/dist-packages/pandas/__init__.py", line 58, in <module>
    from pandas.io.api import *
  File "/usr/lib/python3/dist-packages/pandas/io/api.py", line 19, in <module>
    from pandas.io.packers import read_msgpack, to_msgpack
  File "/usr/lib/python3/dist-packages/pandas/io/packers.py", line 68, in <module>
    from pandas.util._move import (
ValueError: module functions cannot set METH_CLASS or METH_STATIC
Ricks-Lab commented 4 years ago

I just created a new virtual env on my 18.04 system and installed requirements with no issues. Are you able to run the version from PyPI with pip install?

With 20.04, python3.6 doesn't come as the default. Perhaps a change to the UserGuide would make this more clear.

Ricks-Lab commented 4 years ago

Can you post your output from pip freeze while in the activated venv? Here is my output:

(gpu-utils-env) rick@Eos:~/pydev/gpu-utils$ pip freeze
cycler==0.10.0
kiwisolver==1.2.0
matplotlib==3.2.2
numpy==1.19.0
pandas==1.0.5
pkg-resources==0.0.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2020.1
ruamel.yaml==0.16.10
ruamel.yaml.clib==0.2.0
six==1.15.0
vext==0.7.3
vext.gi==0.7.0
csecht commented 4 years ago

Problem solved. Following your suggestion, gpu-plot from a PyPi installation now works on both 18.04 and 20.04, with or without venv. I'm not sure where I went wrong with previous git downloads.

Probably not needed now, but as requested:

(rickslab-gpu-utils-env) craig@craig-Linux2:~/gpu-utils-master$ pip freeze
certifi==2020.6.20
cycler==0.10.0
kiwisolver==1.2.0
matplotlib==3.3.1
numpy==1.19.1
pandas==1.1.1
Pillow==7.2.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2020.1
ruamel.yaml==0.16.12
ruamel.yaml.clib==0.2.2
six==1.15.0
vext==0.7.4
vext.gi==0.7.4

I will work up a pull request for a couple edits to the User Guide. -edit- Well, one edit. I see you already covered the Python version issue for venv.