DGX Cluster Dashboard

Admin dashboard for multi-cluster DGX Spark vLLM telemetry in ClapilotAICore settings.

Settings -> ClapilotAICore -> DGX Cluster shows live telemetry for every DGX Spark vLLM cluster returned by the configured endpoint. Each cluster has its own status, deployment metadata, metric tiles, charts, latency percentiles, and dynamic list of nodes. A partially available fleet remains visible: offline clusters stay on the page while the global status reports how many clusters are live.

The upstream telemetry endpoint is configurable on the page. The default endpoint is http://192.168.178.39:8081; a saved override is stored in app_settings.dgx_telemetry_api_base_url. An empty saved value means Clapilot uses the default.

Browsers never call the LAN telemetry service directly. The browser calls admin-only Clapilot API routes, and those routes proxy to the configured LAN upstream:

  • browser -> /api/clapilotaicore/dgx-telemetry-settings
  • browser -> /api/clapilotaicore/dgx-telemetry/*
  • Clapilot app route -> configured DGX telemetry API

Metric semantics:

  • Schema v2 returns { schema_version: 2, media: {...}, clusters: [...] }. cluster_id is the stable UI/history key, cluster_name is the display label, and every cluster owns its own hist, static, and nodes data.
  • nodes is dynamic and contains { name, gpu, mem_used, mem_total, gpu_temp, gpu_power, gpu_clock, online }; Clapilot does not assume a fixed node count. GPU charts are grouped in pairs while all nodes receive their own metric tile showing GPU usage plus temperature, power draw, and memory. Nodes reported online: false are highlighted as offline.
  • Each cluster also reports nodes_online/nodes_total, shown as a badge in the cluster header.
  • The top-level media block carries the shared media/speech services: video (up, active, progress, done, failed), image (up, active), comfy (up, running, pending), stt (up, active, waiting), and tts (up). The dashboard renders them as a service tile row above the clusters; a missing block (schema v1) simply hides the row.
  • The schema v1 flat snapshot remains supported as a single compatibility cluster.
  • null means the metric has not been observed yet and is rendered as -, never as zero.
  • Throughput and fabric rates (gen_tps, prompt_tps, fabric_bps) are windowed over the current upstream tick; queue depth and KV-cache usage are instantaneous gauges; speculative decoding counters accumulate since engine start.
  • kv, accept_rate, and prefix_hit arrive already as percent values (0-100), not fractions.
  • fabric_bps carries RoCE bytes/s from the HCA port counters despite its name; the dashboard renders it in B/s-based units.
  • Latency percentiles are cumulative since engine start and can include historic outliers.
  • accept_len is 1 + accepted/drafts; higher values mean more useful speculative decoding.
  • hist is parsed defensively from either frame arrays or object-of-arrays payloads. If history cannot be parsed, the dashboard fills from live SSE frames only.
  • Schema versions 1 and 2 are supported. If the upstream reports another version, Clapilot shows a warning but continues rendering known fields.

The read-only native agent tool dgx_cluster_stats fetches the current stats snapshot through the same server-side proxy path, strips hist from every cluster, and returns a short German per-cluster summary (including per-node GPU usage and temperature and the media service states) plus the parsed telemetry payload with the media block. It does not mutate UI state.

Apple client

The iOS and macOS app expose the same dashboard at Einstellungen -> DGX-Cluster for admin users. The native screen uses the configured Clapilot base URL and session cookie, calls the same backend proxy endpoints, and never connects to the LAN telemetry service directly.

The Apple client loads settings and the current stats snapshot through the proxy, streams live frames via the SSE route with automatic reconnect, and renders the same multi-cluster layout as the web panel: the media/speech service tiles, per-cluster headers with model and node-count badges, metric tiles including per-node GPU/temperature/power, throughput/GPU/KV/fabric charts, and cumulative latency percentiles.