feat(topo): per-socket bar layout with disks under their controller
Rework the /topo diagram from side-by-side stacked cards into one tall vertical bar per CPU socket with everything attached to it branching off sideways (socket 0 left/branches right, socket 1 right/branches left). Disks are now parented under the storage controller they physically hang off (SATA/AHCI, SAS HBA, RAID) — itself a NUMA-affine PCIe device under one socket — instead of a synthetic catch-all node. The disk->controller link is read from a new storage-controllers.txt techdump (platform.StorageControllerMapScript, a /sys/block walk); disks with no resolvable controller fall back to an "Other" bar. No board/root node. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SYjrG6bVmeG1Z2Wmc8kg3o
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
b1ab866f58
commit
319f08ac4b
@@ -22,7 +22,8 @@ func techdumpBucketFor(name string) string {
|
||||
return "cpu"
|
||||
case name == "dmidecode-type17.txt":
|
||||
return "memory"
|
||||
case name == "lsblk.json", name == "storcli64-drives.json", name == "storcli2-show-all.json",
|
||||
case name == "lsblk.json", name == "storage-controllers.txt", name == "storcli64-drives.json",
|
||||
name == "storcli2-show-all.json",
|
||||
strings.HasPrefix(name, "smartctl-"), strings.HasPrefix(name, "nvme-"):
|
||||
return "storage"
|
||||
case name == "nvidia-smi-q.txt", name == "nvidia-smi-query.csv", name == "nvidia-smi-conf-compute-q.txt",
|
||||
|
||||
Reference in New Issue
Block a user