[PLUGIN] GPU Statistics


Recommended Posts

4 hours ago, SmokeyColes said:

I really like this plugin - I was wondering however if it possible to display information for two or more GPUS?

This question was asked a lot of times in this thread and would involve a complete redesign and rebuild of the plugin from the ground up.

I also don't think this feature is useful for much people because of the next two answers:

 

4 hours ago, SmokeyColes said:

For multiple VMs using Nvidia GPU

This isn't possible when the GPU is used in a VM since it's dedicated to the VM and Unraid or better speaking the plugin can't see the card and read information from it.

 

4 hours ago, SmokeyColes said:

and an iGPU?

The same goes for iGPUs in VM's as for Nvidia or other dedicated GPUs.

Link to comment
1 hour ago, SmokeyColes said:

What a shame especially if its asked a lot, but thank you. 

What do you mean exactly? I have had a little more specific there, it was asked a lot of times to display multiple cards in the plugin and most people thought that the plugin can also display the utilization of card that are handed over to VMs too but that is simply not possible.

 

What's your use case that you have multiple GPUs in your Unraid server installed? For VMs I think or am I wong?

I don't think that many people have two GPUs in the system that are both handed over to Docker containers. :)

Link to comment
1 hour ago, ich777 said:

mean exactly? I have had a little more specific there, it was asked a lot of times to display multiple cards in the plugin and most people thought that the plugin can also display the utilization of card that are handed over to VMs too but that is simply not possible.

I think you may be over thinking the cool stuff your plugin does - I don't really care about seeing the docker apps like plex, emby, jellyfin etc. 

 

I have 3 GPUs:

  1. I have a 750 for a Ubuntu VM which runs HomeSeer.
  2. a 1660 which I use for Plex and Kodi through a VM,
  3. Finally I have a usb-c to hdmi adaptor which i plan to use, maybe this falls under iGPU - I'm not exactly 100% aware how thats going to work, which is why your plugin is handy.  Or i use the iGPU on the motherboard if it doesn't work.  But I was hoping to play around with iGPU and GX1660 to see which is better with transcoding (I didn't really appreciate its one or the other with PLEX).  I guess it depends if i get that adapter to work - i think there more made for apple and google laptops.  I am still waiting for my new motherboard.  But I've almost got the system ideal for how i plan to use it in the future.

In addition I really like to see the fan, the PCIe details, especially the temperature, and the encoder/decoder states on my dash board so I know how hard its working.  Hence would love to see multiple GPUs.

 

But its OK - I appreciate what it does and that its free, and I'm thankful.  Its a good plug-in, i really like it!

 

  • Like 1
Link to comment
4 minutes ago, SmokeyColes said:

I think you may be over thinking the cool stuff your plugin does

This is not my plugin ;)

My plugins are the Intel-GPU-TOP, Radeon-TOP and Nvidia-Driver... :)

 

9 minutes ago, SmokeyColes said:

iGPU

About which iGPU are we talking? Both Intel (8th Gen.+) and AMD (Ryzen APUs) have excellent iGPUs that should be capable of transcoding the same amount of parallel streams as the 1660 with the benefit of not having a base power consumption when they are in idle like the Nvidia GPU has.

 

12 minutes ago, SmokeyColes said:

and I'm thankful

Thank @b3rs3rk, the creator of this wonderful plugin. ;)

  • Like 1
Link to comment
Posted (edited)

Ah!  Right well I like your plugins too! 😁🤣

 

I have installed intel-gpu-top and nvidia-driver (I used spaceinvaders videos) and just stumbled on intel_gpu_top.  Terminal currently tells me nothing working with a very old quad core2 @2400MHz as youd expect.

So I haven't actually tested intel-gpu-top as I haven't installed my new CPU yet but from what I see it looks good and the NVIDIA driver plugin is brilliant (not sure i fully understand but it seems essential for the equipment and it foung the GTX750 drivers).

 

I bought the 10900K and I'm waiting on a super micro motherboard C9Z490 to ship from US.

image.png.91889cf2149442f32c53b090bd3ea270.png

 

2Pcie will be for HBA controllers (16 hard disks). 2PCie for the 750 and 1660 I have.

So the motherboard has both DP and HDMI ports on it.  

 

So the idea (and remember I've not tested yet)

  • HomeSeer Ubuntu VM - baremetal GTX750 - hdmi used for automation control screens.
  • Plex Server/Kodi FrontEnd in VM Ubuntu using HDMI port for Kodi (it goes into 4K HDBT matrix distributed around house) - baremetal GTX1660 (I believe manages 5 transcodes unlocked but locked at 3).
  • Then either the (usb-c to hdmi adapter) OR motherboard HDMI (iGPU) will probably be for the UNRAID GUI (which i may be able to utilise as part of the VM).  The 10900K has QuickSync for transcoding and I believe is considered iGPU.  I now believe although still cant find info on - that transcoding is done either on NVEC or IGPU, but not both! 

 

So if I've completely got it wrong - bare with me, do educate me!  Just remember I've not got the motherboard yet to learn and there is so much info out there!!!  I've no idea which will be better for transcoding.

 

That said my original post was just about seeing multiple graphics cards on the dashboard 😂

and thank you b3rs3rk

 

 

 

 

Edited by SmokeyColes
  • Like 1
Link to comment
7 hours ago, SmokeyColes said:

(not sure i fully understand but it seems essential for the equipment and it foung the GTX750 drivers)

The 750 is a supported card and the plugin should work with it just fine. :)

 

From the two comments that you've made you actually don't need the Nvidia-Driver plugin since the plugin is only a addon for Docker containers to use the cards in containers and as you said you use them in VM's you have not much of a benefit installing it.

7 hours ago, SmokeyColes said:

HomeSeer Ubuntu VM - baremetal GTX750

7 hours ago, SmokeyColes said:

Plex Server/Kodi FrontEnd in VM Ubuntu using HDMI port for Kodi

 

 

7 hours ago, SmokeyColes said:

Then either the (usb-c to hdmi adapter) OR motherboard HDMI (iGPU) will probably be for the UNRAID GUI (which i may be able to utilise as part of the VM).  The 10900K has QuickSync for transcoding and I believe is considered iGPU.

You can of course use the 10900K with QuickSync (I'm also using it on my 10600 and from a technical point the QuickSync engine is on both CPUs the same).

It should be capable of transcoding 4 to 5 simultaneous HEVC streams (depending on the settings) without a problem, also like the 1660.

 

7 hours ago, SmokeyColes said:

I've no idea which will be better for transcoding

That depends on what you prefer but you can't use the 1660 in a VM and also for a Docker container at the same time.

You setup would be perfect if you do it like that:

750 for VM

1660 for VM

iGPU for Docker

 

If you do it like above you only have to install the Intel-GPU-TOP plugin (the plugin handles the installation and enabling of the iGPU and also sets the permissions), in Plex add the device: '/dev/dri' (without qutoes) and you should be good to go (and of course you can use the output of the Intel iGPU for your Unraid terminal/GUI - please also make sure that you actually set the primary video card to the iGPU in the BIOS and connect a monitor or dummy plug so that the iGPU is properly enabled when you boot up the machine).

What I also recommend is to uninstall the Nvidia-Driver plugin since you don't have much benefit if you are using the Nvidia cards in VMs and not in Docker containers.

 

Hope that helps. :)

  • Like 2
Link to comment
Posted (edited)
23 minutes ago, ConnerVT said:

NVIDIA P400

What output to you get on. Mine is a K4000 so may provide more info.

root@computenode:~# nvidia-smi 
Mon May 17 13:02:56 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 465.27       Driver Version: 465.27       CUDA Version: 11.3     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA Quadro K...  Off  | 00000000:01:00.0 Off |                  N/A |
| 30%   38C    P0    28W /  87W |      0MiB /  3018MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

 

Edited by SimonF
Link to comment

The smi always reports fan speed at 34% and N/A for the power.  I don't know if the fan actually changes speed on the card, as I don't spend much time watching the innards of the server.

 

I know if there is something funky going on, it is more likely an issue with the nvidia driver than anything else.  But folks coming into this thread are more likely to notice their fan speed reporting (or not), so just trying to confirm if this is something down for everybody, or just me.

 

 

P400-smi.JPG

Link to comment
6 minutes ago, ConnerVT said:

fan speed at 34%

This is common and depends on how the manufacturer implemented the default fan speed, if you are only transcoding with this card the fan speed wont change that much since transcoding produces only a fraction of the load that the card is capable of and the fan simply won't ramp up because the card doesn't get hot enough...

 

7 minutes ago, ConnerVT said:

N/A for the power

Yes on some cards you actually can't see the power usage that is reported from the card and it can also happen that on a newer driver that it doesn't work anymore because Nvidia breaks often the compatibility to other or should I say older cards.

 

For example my GTX 1060 3GB reports everything, then my 1050Ti isn't reporting the power usage as in your case, but there is actually nothing I or @b3rs3rk can do about that.

 

Hope that makes sense to you. ;)

  • Thanks 1
Link to comment
  • 2 weeks later...

Hello,

 

just a question - can I install the Radeon-TOP plugin, because I already activated my IGPU (Ryzen with Radeon Vega)?

For activating I used this method:

 

mkdir /boot/config/modprobe.d
touch /boot/config/modprobe.d/amdgpu.conf

 

In the plugin description is something mentioned about the GO file. So I am currently not sure if this plug in will change something in my system.

 

Link to comment
26 minutes ago, snowy00 said:

can I install the Radeon-TOP plugin

Yes, the Radeon-TOP plugin will also enable your iGPU but if you've already enabled it through the "file method" that's also fine. :)

 

27 minutes ago, snowy00 said:

In the plugin description is something mentioned about the GO file. So I am currently not sure if this plug in will change something in my system.

Please read the full description of the Plugin it says: "no editis to the 'go' file or creation of other files are necessary"

Link to comment

Hello,
My GPU is not showing up on the dashboard.
I'm not sure how to troubleshoot it, so I'm just going to include the information you ask for.

1. is attached in a text file called "nvidia-smi".
nvidia-smi

 

2. The gpustatus.php is this:

{"clock":"N\/A","fan":"N\/A","memclock":"N\/A","memutil":"N\/A","memused":"N\/A","power":"N\/A","powermax":"N\/A","rxutil":"N\/A","txutil":"N\/A","temp":"N\/A","tempmax":"N\/A","util":"N\/A","error":[{"code":302,"message":"Vendor command returned unparseable data.","extra":""}]}

 

3. Screenshot of the dashboard plugin:

image.png.281230ed02fd4968d18b266215760bc7.png
 

 

The GPU works, the dashboard is just not picking anything up.
nvidia-smi is showing this:
image.png.bb08096e6f40949be5ba3e5f40ed5624.png

 

Any ideas how to fix it?

Link to comment
Hello,
My GPU is not showing up on the dashboard.
I'm not sure how to troubleshoot it, so I'm just going to include the information you ask for.
1. is attached in a text file called "nvidia-smi".
nvidia-smi
 
2. The gpustatus.php is this:
{"clock":"N\/A","fan":"N\/A","memclock":"N\/A","memutil":"N\/A","memused":"N\/A","power":"N\/A","powermax":"N\/A","rxutil":"N\/A","txutil":"N\/A","temp":"N\/A","tempmax":"N\/A","util":"N\/A","error":[{"code":302,"message":"Vendor command returned unparseable data.","extra":""}]}

 
3. Screenshot of the dashboard plugin:
image.png.281230ed02fd4968d18b266215760bc7.png
 
 
The GPU works, the dashboard is just not picking anything up.
nvidia-smi is showing this:
image.png.bb08096e6f40949be5ba3e5f40ed5624.png
 
Any ideas how to fix it?


Did you go to the Settings page and set something non-default? Usually the Vendor is set to Change Me on install and had to be set to NVIDIA unless you have an old config file present.

EDIT: I see that it is throwing a 302 error. Let me look through the full Nvidia-smi output and see if I can identify the problem.
Link to comment
4 hours ago, b3rs3rk said:

Did you go to the Settings page and set something non-default? Usually the Vendor is set to Change Me on install and had to be set to NVIDIA unless you have an old config file present.

EDIT: I see that it is throwing a 302 error. Let me look through the full Nvidia-smi output and see if I can identify the problem.

I don't remember changing anything.

 

Take your time, it's working, it's just not showing anything on the dashboard :)

Link to comment
Posted (edited)
2 hours ago, Nanobug said:

I don't remember changing anything.

 

Take your time, it's working, it's just not showing anything on the dashboard :)

 

I'm not seeing anything that would cause this to happen.  A 302 error will occur when the data retrieved from the nvidia-smi call is not an instance of valid XML or it is empty XML.  If it wasn't valid XML+, you'd probably be getting a stack error when I try to use @simplexml_load_string on it to turn it into a SimpleXMLElement.  When you have the chance, nano the Nvidia.php file:

 

nano -c +287 /usr/local/emhttp/plugins/gpustat/lib/Nvidia.php

 

This should take you directly to line 287 in that file which should be a blank line.  Change that line to read:

 

var_dump($data); exit;

 

Save it and exit nano, then re-run the gpustatus.php file like you did for the troubleshooting steps in the first post (great reading skills btw) and send me the result.

Edited by b3rs3rk
Link to comment
18 hours ago, b3rs3rk said:

 

I'm not seeing anything that would cause this to happen.  A 302 error will occur when the data retrieved from the nvidia-smi call is not an instance of valid XML or it is empty XML.  If it wasn't valid XML+, you'd probably be getting a stack error when I try to use @simplexml_load_string on it to turn it into a SimpleXMLElement.  When you have the chance, nano the Nvidia.php file:

 


nano -c +287 /usr/local/emhttp/plugins/gpustat/lib/Nvidia.php

 

This should take you directly to line 287 in that file which should be a blank line.  Change that line to read:

 


var_dump($data); exit;

 

Save it and exit nano, then re-run the gpustatus.php file like you did for the troubleshooting steps in the first post (great reading skills btw) and send me the result.

It gave me this:

bool(false)

 

And thank you, I try to do at least some work before I ask for help.

 

Again, take your time. It works, it's just sad to have the GPU statistics not working. 

Link to comment
5 minutes ago, Nanobug said:

It gave me this:



bool(false)

 

And thank you, I try to do at least some work before I ask for help.

 

Again, take your time. It works, it's just sad to have the GPU statistics not working. 


Okay, so the simplexml_load_string is definitely failing because that's the only time it should return False.  Try this (I substituted your UUID so the below should work for your install):
 

php -r "var_dump(shell_exec('nvidia-smi -q -x -g GPU-23265d6c-1de2-5786-b964-e20b2a209ad6 2>&1'));"


If it looks like normal XML, try this:
 

php -r "var_dump(@simplexml_load_string(shell_exec('nvidia-smi -q -x -g GPU-23265d6c-1de2-5786-b964-e20b2a209ad6 2>&1')));"

 

If that dumps a SimpleXMLElement, I'm not sure what is wrong as that is basically what the plugin does.  If it doesn't, try the commands again but remove the 2>&1 at the end of the shell_exec commands to show stderr.

 

Then bundle the outputs up in a file and paste here for troubleshooting purposes.

Link to comment
1 hour ago, b3rs3rk said:

Okay, so the simplexml_load_string is definitely failing because that's the only time it should return False.  Try this (I substituted your UUID so the below should work for your install):

I have no idea what I'm doing, but here:
notsurewhatitis

 

1 hour ago, b3rs3rk said:

If it looks like normal XML, try this:

I don't know what to look for, so it looks like the other one to me.

 

1 hour ago, b3rs3rk said:

If that dumps a SimpleXMLElement, I'm not sure what is wrong as that is basically what the plugin does.  If it doesn't, try the commands again but remove the 2>&1 at the end of the shell_exec commands to show stderr.

 

Then bundle the outputs up in a file and paste here for troubleshooting purposes.

 

What me to run this as well?:

php -r "var_dump(shell_exec('nvidia-smi -q -x -g GPU-23265d6c-1de2-5786-b964-e20b2a209ad6'));"

 

Link to comment
Posted (edited)
1 hour ago, Nanobug said:

I have no idea what I'm doing, but here:
notsurewhatitis

 

I don't know what to look for, so it looks like the other one to me.

 

 

What me to run this as well?:



php -r "var_dump(shell_exec('nvidia-smi -q -x -g GPU-23265d6c-1de2-5786-b964-e20b2a209ad6'));"

 

 

I should have been more decisive.  Sorry.  Run this one and send the result:

 

php -r "var_dump(@simplexml_load_string(shell_exec('nvidia-smi -q -x -g GPU-23265d6c-1de2-5786-b964-e20b2a209ad6 2>&1')));"


 

Edited by b3rs3rk
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.