Repository navigation
XDNA: pin upstream amd/xdna-driver (and its XRT), build it privately, keep it current - #12
Merged
Merged
Conversation
… keep it current third_party/xdna-driver pins upstream amd/xdna-driver 5d302c9, whose xrt submodule pins XRT d8ececf: the userspace the NPU lane runs on (XRT and the XDNA shim plugin libxrt_driver_xdna). The kernel driver ships in the kernel (drivers/accel/amdxdna) and is not built from the pin. - scripts/build-xdna.sh <prefix>: builds XRT (NPU package, without its OpenCL layer: it does not compile against newer distro ocl_icd.h headers and the NPU does not use it) and the shim, staged with DESTDIR under <prefix>/root (XRT hard-codes /etc/OpenCL/vendors), and puts the shim next to XRT, where XRT loads plugins from. Nothing is installed system-wide. - .github/workflows/bump-xdna.yml: daily, opens a PR when upstream main moves. - docs/npu.md, "The XDNA stack". Strix Halo: the engine built with -DONEBIT_XRT_ROOT=<prefix>/root/opt/xilinx/xrt loads libxrt_core and libxrt_driver_xdna from the pinned prefix (strace); tests/npu_lane_e2e.sh gives logits bit-identical to the reference lane, 24/24 steps, 10.8 ms/token, 327 ms warm load. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
bong-water-water-bong
enabled auto-merge (squash)
September 23, 2026 19:21
This was referenced Sep 26, 2026
bong-water-water-bong
pushed a commit
that referenced
this pull request
Sep 26, 2026
…oints and three HRX fixes Our llama.cpp #7 (HRX MoE router route-ids binding length), #9 (decode-split flash-attention capacity bound), #11 (ZAYA sliding-window attention, ZAYA1-74B), #12 (MoE router experts-per-wave launch geometry) and #14 (ZAYA legacy checkpoints; --remote fetches chat_template.jinja). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.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.
Pins the XDNA userspace stack the NPU lane runs on to upstream amd/xdna-driver, with a daily job to follow new upstream commits.
What
third_party/xdna-driver= upstreamamd/xdna-driver5d302c9(2026-09-22). Its ownxrtsubmodule pins XRTd8ececf.libxrt_driver_xdna). The kernel driveramdxdnaships in the kernel (drivers/accel) and isn't built from the pin.scripts/build-xdna.sh <prefix>builds both privately:DESTDIRunder<prefix>/root. XRT hard-codes/etc/OpenCL/vendors, so nothing touches system paths.xocl) is excluded: the NPU doesn't use it, and it doesn't compile against this distro's newerocl_icd.h.-DONEBIT_XRT_ROOT=<prefix>/root/opt/xilinx/xrt..github/workflows/bump-xdna.ymlruns daily and opens a PR when upstreammainmoves. It uses the sameHRX_BUMP_TOKENsecret asbump-hrx.yml(HRX: follow AMD's live ggml-hrx, pinned to AMD's tested pair and kept current #11).docs/npu.mdgains a section, "The XDNA stack".Verified on Strix Halo
The box had been running XRT 2.21.75 and a hand-built shim (in
/usr/local/xrt-runlist) from an xdna-driver checkout 73 commits behind upstream. Against the pinned stack:libxrt_core.so.2andlibxrt_driver_xdna.so.2coming from the pinned prefix.tests/npu_lane_e2e.shgives logits bit-identical to the reference lane, 24/24 steps.CI has no NPU, so run the build script and the lane test on Strix Halo before merging each bump PR.
🤖 Generated with Claude Code