Overview
To match the latest PyTorch release cycle
(released every other month), AOTriton has shifted to a maintenance-feature
release model, i.e., within four months AOTriton will make:
- A maintenance release, which ships changes without changing the compiler
and tuning database - A feature release, which synchronizes Triton with upstream, adds features
to kernels, and updates the tuning database.
Specific to AOTriton 0.13: this is a maintenance release, with no Triton
compiler or database changes.
Major Changes
- AOTriton Template Instantiation (ATI)
- Separation of the code generator from the kernel and build rules
- Now
pythonwill be installed as theaotritonpackage in the venv
for code generation- Conceptually the
aotritonpackage could be considered a "compiler"
that translates JIT kernels to the relevant AOT source code and
kernel build rules - Related unit tests can be found at
python/test
- Conceptually the
- Triton kernel and build rules are migrated to
modules/<family>/
directories
- All
.aks2files are now stored in uncompressed zip containers,
keeping their names inside the archive instead of exposing them to the
file system- Previously the AKS2 file names had to avoid special characters to stay
compatible across many layers, including but not limited to 1) the
Win32 API and 2) Bash/Perl/Python tooling, which may not handle
special characters well - Now that the names live inside the container, this restriction is
lifted and the AKS2 naming scheme is changed to a more human-readable
format, for example:
Q='*fp16:16';BLOCK_DMODEL=16;PADDED_HEAD=False;ENABLE_DROPOUT=False;CAUSAL_TYPE=0;BIAS_TYPE=0
- Previously the AKS2 file names had to avoid special characters to stay
- A performance visualization tool is added to the AOTriton dashboard
- See Performance Visualization for a screenshot
- Proper Win32 support
- Full Unicode path support
- Dropped
dlfcn-win32, whoseGetModuleFileNameAis inherently
non-Unicode;dladdris reimplemented withGetModuleHandleExW
andGetModuleFileNameW
- Dropped
- Replaces
intptr_twith typedeffd_tforint/HANDLE
- Full Unicode path support
- Add debugging facility, enabled with
AOTRITON_DEBUG_LEVEL - Enable ASAN Build with
TRITON_ENABLE_ASAN=1+ TheRock Clang- ASAN packages are released with the
+asanversion suffix, e.g.,
aotriton-0.13b+asan-images-amd-gfx942.tar.gz
- ASAN packages are released with the
- Add gfx1250 Tech Preview Build
- Announced by
isArchTechPreview - Unreleased hardware will not be announced by
isArchExperimentallySupportedfor wider enablement and testing.
- Announced by
Minor Changes
- Remove legacy
v2python/v2srcdirectories - Update
.claude/agents/prwriter.mdto write more concise PR messages.
Performance Visualization
(Exact numbers are masked per the Performance Disclosure Policy)

What's Changed (Auto-generated)
- Remove Legacy Code and Files by @xinyazhang in #174
- test/attn_torch_function: reset persistent atomic tile counter between is_testing pre-flight and real attn_fwd by @mgehre-amd in #180
- Use SHA-256 file names by @xinyazhang in #176
- Group AKS2 files into uncompressed ZIP archive by @xinyazhang in #177
- Performance Visualization by @xinyazhang in #178
- AOTriton Template Instantiation by @xinyazhang in #186
- Rewrite Agent File prwriter.md by @xinyazhang in #189
- Support Windows wide paths for packed kernels by @jammm in #184
- test(ati): add ATI unit tests under python/test/ati/ (193 tests) by @xinyazhang in #190
- Logging with AOTRITON_DEBUG_LEVEL by @xinyazhang in #192
- Port gfx1250 and TheRock ASAN Support to Mainline by @xinyazhang in #182
New Contributors
- @mgehre-amd made their first contribution in #180
Full Changelog: 0.12b...0.13b