Dashboard: rename to SyslogAI Harness, GPU bar now shows utilization instead of VRAM
This commit is contained in:
@@ -35,7 +35,7 @@ DASHBOARD_HTML = r"""<!DOCTYPE html>
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>Inference Harness - Syslog Solution LLC</title>
|
<title>SyslogAI Harness - Syslog Solution LLC</title>
|
||||||
<style>
|
<style>
|
||||||
:root {
|
:root {
|
||||||
--bg: #0a0e14; --card: #131820; --border: #1e2a3a; --text: #c9d1d9;
|
--bg: #0a0e14; --card: #131820; --border: #1e2a3a; --text: #c9d1d9;
|
||||||
@@ -125,7 +125,7 @@ body {
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<h1><span>⚡</span> Inference Harness</h1>
|
<h1><span>⚡</span> SyslogAI Harness</h1>
|
||||||
<div class="status-bar">
|
<div class="status-bar">
|
||||||
<span class="status-dot" id="live-dot"></span>
|
<span class="status-dot" id="live-dot"></span>
|
||||||
<span id="connection-status">connecting...</span>
|
<span id="connection-status">connecting...</span>
|
||||||
@@ -189,7 +189,7 @@ function render(data) {
|
|||||||
document.getElementById('update-time').textContent = new Date().toLocaleTimeString();
|
document.getElementById('update-time').textContent = new Date().toLocaleTimeString();
|
||||||
|
|
||||||
const gpus = data.gpus||[];
|
const gpus = data.gpus||[];
|
||||||
document.getElementById('gpu-container').innerHTML = gpus.map(g => '<div class="gpu-row">'+statusIcon(g.status)+'<div class="gpu-info"><div class="gpu-name">'+(GPU_LABELS[g.gpu_name]||g.gpu_name||g.id||'?')+'</div><div class="gpu-metrics"><div class="gpu-metric"><span class="label">VRAM</span> <span class="value">'+(g.vram_used_mb||'?')+'/'+(g.vram_total_mb||'?')+' MB</span></div><div class="gpu-metric"><span class="label">Temp</span> <span class="value">'+(g.temp_c||'?')+'C</span></div><div class="gpu-metric"><span class="label">Util</span> <span class="value">'+(g.gpu_util_pct||0)+'%</span></div>'+(g.power_w!=null?'<div class="gpu-metric"><span class="label">Power</span> <span class="value">'+g.power_w+'W</span></div>':'')+'</div><div class="vram-bar"><div class="vram-fill '+vramClass(g.vram_pct||0)+'" style="width:'+(g.vram_pct||0)+'%"></div></div></div><div style="font-size:24px;font-weight:700;color:'+(vramClass(g.vram_pct||0)==='red'?'var(--red)':vramClass(g.vram_pct||0)==='yellow'?'var(--yellow)':'var(--green)')+';min-width:50px;text-align:right">'+(g.vram_pct||0)+'%</div></div>').join('');
|
document.getElementById('gpu-container').innerHTML = gpus.map(g => '<div class="gpu-row">'+statusIcon(g.status)+'<div class="gpu-info"><div class="gpu-name">'+(GPU_LABELS[g.gpu_name]||g.gpu_name||g.id||'?')+'</div><div class="gpu-metrics"><div class="gpu-metric"><span class="label">VRAM</span> <span class="value">'+(g.vram_used_mb||'?')+'/'+(g.vram_total_mb||'?')+' MB</span></div><div class="gpu-metric"><span class="label">Temp</span> <span class="value">'+(g.temp_c||'?')+'C</span></div><div class="gpu-metric"><span class="label">Util</span> <span class="value">'+(g.gpu_util_pct||0)+'%</span></div>'+(g.power_w!=null?'<div class="gpu-metric"><span class="label">Power</span> <span class="value">'+g.power_w+'W</span></div>':'')+'</div><div class="vram-bar"><div class="vram-fill '+vramClass(g.gpu_util_pct||0)+'" style="width:'+(g.gpu_util_pct||0)+'%"></div></div></div><div style="font-size:24px;font-weight:700;color:'+(vramClass(g.gpu_util_pct||0)==='red'?'var(--red)':vramClass(g.gpu_util_pct||0)==='yellow'?'var(--yellow)':'var(--green)')+';min-width:50px;text-align:right">'+(g.vram_pct||0)+'%</div></div>').join('');
|
||||||
|
|
||||||
const rc = data.route_counts||{};
|
const rc = data.route_counts||{};
|
||||||
const maxR = Math.max(1,...Object.values(rc));
|
const maxR = Math.max(1,...Object.values(rc));
|
||||||
|
|||||||
Reference in New Issue
Block a user