MauriceNino / dashdot

A simple, modern server dashboard, primarily used by smaller private servers
https://getdashdot.com/
MIT License
2.53k stars 95 forks source link

[Feature] Ability to hide a specific GPU #1038

Open Bortus-AI opened 6 months ago

Bortus-AI commented 6 months ago

Description of the feature

I would like to hide a specific GPU and only show my Nvidia P4 card and not the others. Correct me if I am mistaken and this is already an option that I missed. It would also be nice to be able to set the order of which card appears first in the UI.

Additional context

No response

Bortus-AI commented 6 months ago

I'd like to hide this

image

and just show this one without having to arrow over

image
MauriceNino commented 6 months ago

Hi, this should definitely be a feature - can you please send me the output of:

docker exec CONTAINER yarn cli raw-data --gpu

If you are not using docker, just omit the docker exec CONTAINER part.

Bortus-AI commented 6 months ago

yarn cli raw-data --gpu

Output: ```js const gpuInfo = { controllers: [ { vendor: 'ASPEED Technology, Inc.', subVendor: '', model: 'ASPEED Graphics Family', bus: 'Onboard', busAddress: '02:00.0', vram: 128, vramDynamic: false, pciID: '' }, { vendor: 'NVIDIA Corporation', model: 'GP104GL [Tesla P4]', bus: 'Onboard', busAddress: '18:00.0', vram: 7680, vramDynamic: false, subVendor: 'NVIDIA Corporation', driverVersion: '545.23.08', subDeviceId: '0x11D810DE', name: 'Tesla P4', pciBus: '00000000:18:00.0', memoryTotal: 7680, memoryFree: 7606, temperatureGpu: 32, powerDraw: 6.78, powerLimit: 75, clockCore: 455, clockMemory: 405 } ], displays: [] } ```
trentnbauer commented 6 months ago

I also would love to see this added! My Proxmox VM's virtual gpu (?) is displayed before the passed through P4000 image image

const gpuInfo =  {
  controllers: [
    {
      vendor: '',
      subVendor: '',
      model: '',
      bus: '',
      busAddress: '00:02.0',
      vram: 4,
      vramDynamic: false,
      pciID: ''
    },
    {
      vendor: 'NVIDIA Corporation',
      model: 'GP104GL [Quadro P4000]',
      bus: 'Onboard',
      busAddress: '00:10.0',
      vram: 8192,
      vramDynamic: false,
      subVendor: 'Hewlett-Packard Company',
      driverVersion: '545.29.02',
      subDeviceId: '0x11A3103C',
      name: 'Quadro P4000',
      pciBus: '00000000:00:10.0',
      fanSpeed: 50,
      memoryTotal: 8192,
      memoryUsed: 2,
      memoryFree: 8111,
      temperatureGpu: 43,
      powerDraw: 6.91,
      powerLimit: 105,
      clockCore: 139,
      clockMemory: 405
    }
  ],
  displays: []
}

My compose file:

version: '3'
services:
  dashdot:
    image: ghcr.io/mauricenino/dashdot:nvidia-5.8.3
    ports:
      - $PORT:3001
    volumes:
      - /:/mnt/host:ro
    privileged: true
    deploy:
      resources:
        reservations:
          devices:
            - capabilities:
                - gpu
    environment:
      - DASHDOT_SHOW_HOST=$DASHDOT_SHOW_HOST                                #true/false
      - DASHDOT_ENABLE_CPU_TEMPS=$DASHDOT_ENABLE_CPU_TEMPS                  #true/false
      - DASHDOT_ALWAYS_SHOW_PERCENTAGES=$DASHDOT_ALWAYS_SHOW_PERCENTAGES    #true/false
      - DASHDOT_ACCEPT_OOKLA_EULA=$DASHDOT_ACCEPT_OOKLA_EULA                #true/false
      - DASHDOT_CUSTOM_HOST=$DASHDOT_CUSTOM_HOST                            #String
      - DASHDOT_WIDGET_LIST=$DASHDOT_WIDGET_LIST                            #refer to https://getdashdot.com/docs/config/ui-features#dashdot_widget_list
Husky0c commented 2 weeks ago

Hello, dear MauriceNino,

I have a similar need. My Dashdot is running inside a Docker container with an NVIDIA environment. Dashdot is working very well and has detected my Tesla P4 and its associated data. However, for some reason, when using the API call /load/gpu, the GPU list is: {"layout":[{"load":0,"memory":0},{"load":95,"memory":61}]}, which places an empty GPU before my Tesla P4. A small feature to switch the GPU reporting order or the filter functionality you mentioned in issue #290 be sufficient for me.

Below is the output of running yarn cli raw-data --gpu inside the Docker container. I would be very grateful for any assistance you can provide. const gpuInfo = { controllers: [ { vendor: '', subVendor: '', model: '', bus: '', busAddress: '00:01.0', vram: 4, vramDynamic: false, pciID: '' }, { vendor: 'NVIDIA Corporation', model: 'GP104GL [Tesla P4]', bus: 'Onboard', busAddress: '01:00.0', vram: 8192, vramDynamic: false, subVendor: 'NVIDIA Corporation', driverVersion: '535.161.08', subDeviceId: '0x120710DE', name: 'GRID P4-8Q', pciBus: '00000000:01:00.0', memoryTotal: 8192, memoryUsed: 1210, memoryFree: 6325, clockCore: 885, clockMemory: 2999 } ], displays: [] }