-
Notifications
You must be signed in to change notification settings - Fork 0
Description
💡 Feature Description
Add intel_gpu_top-style live GPU graphs to the What's Streaming Dashboard, showing real-time utilization of GPU engines (Render, Video Decode, Video Encode, etc.).
This would visually mirror the data shown in intel_gpu_top for Intel iGPUs.
📈 Motivation and Context
Transcoding-heavy servers often rely on Intel iGPUs for hardware-accelerated tasks. While intel_gpu_top offers CLI-based monitoring, WSD is currently lacking a visual GPU telemetry component.
Adding this would:
Provide admins insight into GPU load during active streams
Help identify possible performance bottlenecks
Verify whether hardware transcoding is working as expected
Eliminate the need for separate terminal tools for routine diagnostics
🛠️ Suggested Implementation (if known)
Rather than parsing raw system metrics or intel_gpu_top output directly, leverage Netdata, which already collects and visualizes GPU telemetry in real time.
Netdata exposes GPU metrics via its API, including:
GPU utilization (Render, Video Decode, Video Encode)
Temperature
Power usage
Per-engine activity (on supported hardware)
Implementation steps:
Query Netdata’s local API or stream endpoint for GPU metrics
Example endpoint? http://localhost:19999/api/v1/data?chart=intel_gpu.render
Use existing charting libraries (Chart.js, Recharts, etc.) to visualize:
Render engine %
Video decode/encode %
Thermal and power data
Poll data every few seconds and update WSD in real time
If not Luke'd than optional:
Overlay GPU load per active stream if mappable via Emby/FFmpeg logs
Toggle GPU panel visibility based on system capabilities
Using Netdata simplifies the implementation, ensures accuracy, and avoids duplicating system monitoring logic.
🖼️ Visuals or References (optional)
Example from intel_gpu_top CLI output:
Visual prototype using graphs:
┌──────────── Render ─────────────┐ ┌────────── Video Decode ──────────┐
│ ████▇▇▆▅▅▆▇▇▇▆▅▅▅▅ │ │ ████▅▅▆▇▇▆▅▅ │
└──────────────────────────────┘ └──────────────────────────────┘
🔗 Related Issues or Discussions
Tied to future “resource threshold alert” system
Related: Hardware transcoding verification tools
🧩 Additional Notes
Only show the GPU section if hardware is detected and active
Could tie into individual user stream area (e.g., highlight GPU-heavy streams)
Future extension: per-stream GPU engine mapping if Emby/FFmpeg exposes it
Using Netdata simplifies the implementation, ensures accuracy, and avoids duplicating system monitoring logic.
Word!