Earlier this year, we published Hello XDNA!, our guide to programming the neural processing units in AMD Ryzen AI chips. We have now updated its XDNA2 example so that key dimensions are supplied at runtime instead of fixed in the assembly code. The same assembly implementation can therefore handle a range of supported tensor shapes.

New step-by-step diagrams make the design easier to follow. They show how the kernel divides the calculation, shares its limited on-chip storage, and overlaps arithmetic with data movement. We also replaced the earlier fixed-size instruction schedule after discovering a subtle conflict at the accumulator write port that could silently discard a write.

Beyond the kernel example, the update expands and corrects our inferred instruction-set tables, fixes the BFP16 format description, improves the assembly listings, and addresses smaller errors and terminology issues throughout the site. Read the updated XDNA guide, check out the full changelog, or explore the sources and benchmarks.