feat(rocm-smi-exporter): AMD GPU exporter that enumerates the gfx1151 iGPU#16
Open
joryirving wants to merge 1 commit into
Open
feat(rocm-smi-exporter): AMD GPU exporter that enumerates the gfx1151 iGPU#16joryirving wants to merge 1 commit into
joryirving wants to merge 1 commit into
Conversation
… iGPU A small Prometheus exporter for AMD GPU telemetry that reads the Linux AMDGPU sysfs + hwmon trees directly — no rocm-smi binary, no ROCm userspace. Going straight to the kernel driver's sysfs is what lets it enumerate the Strix Halo gfx1151 iGPU that the Instinct-scoped device-metrics-exporter / amd_smi_exporter cannot see (#700, deliverable 1). - cmd/rocm-smi-exporter: pure Go stdlib (no module deps), CGO-off, tested. - rocm-smi-exporter/Dockerfile: $BUILDPLATFORM cross-compile -> distroless static nonroot (uid 65534), EXPOSE 9494; mirrors coder/vulkan. - build-exporter.yml: go test + QEMU/buildx multi-arch build, /metrics smoke, SBOM, candidate+release tags, keyless attestation, stable build gate (mirrors build-coder.yml). Hardware-verified on the gfx1151 Strix Halo box. Co-authored-by: Jory Irving <jory.irving@stackadapt.com> Signed-off-by: Jory Irving <jory.irving@stackadapt.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Ports the AMD GPU exporter into
llmkube-runtimesas its supply-chain home (deliverable 1 of defilantech/LLMKube#700): source undercmd/rocm-smi-exporter, arocm-smi-exporter/Dockerfile, and abuild-exporter.ymlCI publishingghcr.io/defilantech/llmkube-rocm-smi-exporter.Why
Fixes deliverable 1 of defilantech/LLMKube#700. No existing community/upstream exporter enumerates the Strix Halo
gfx1151iGPU —device-metrics-exporter/amd_smi_exporterare Instinct/datacenter-scoped. This one reads the Linux AMDGPU sysfs + hwmon directly (norocm-smibinary, no ROCm userspace), which is what lets it see the iGPU. Hardware-verified on thegfx1151box. Moving it here gives LLMKube an Apache-2.0 home + org-published image to depend on instead of a personal-namespace image.How
cmd/rocm-smi-exporter/— pure Go stdlib only (no module deps → nogo.mod/go.sumchurn), CGO-off, with unit tests.rocm-smi-exporter/Dockerfile—$BUILDPLATFORMcross-compile → distrolessstatic-debian13:nonroot(uid 65534),EXPOSE 9494. Mirrorscoder/andvulkan/(native cross-compile, no QEMU compile cost). Context is the repo root since it builds the repo-local package..github/workflows/build-exporter.yml— mirrorsbuild-coder.yml:go testgate + QEMU/buildx multi-arch build, a/metricssmoke (0-GPU runner still serves the scrape-health series), SBOM, candidate+release tags, keyless attestation, and a stablebuildgate.Follow-up (separate LLMKube PR, deliverables 1 + 3): the DaemonSet + a Grafana row in
config/grafana/llmkube-gpu-dashboard.jsonwired to these metric names + the llama.cpp SLO signals (deliverable 2 already live onornith-35b).Checklist
./scripts/tier1-gate.sh <image>) — that gate is scoped to the llama runtime images; the exporter's equivalent (go test+ a/metricssmoke) runs inbuild-exporter.yml. Couldn't run buildx on the dev box, so image build is CI-validated.git commit -s) per DCO.