Skip to content

[NVIDIA] Lower warp-specialization barriers with NVVM#10939

Open
ajit283 wants to merge 1 commit into
triton-lang:mainfrom
ajit283:nvidia-nvvm-barriers-fences
Open

[NVIDIA] Lower warp-specialization barriers with NVVM#10939
ajit283 wants to merge 1 commit into
triton-lang:mainfrom
ajit283:nvidia-nvvm-barriers-fences

Conversation

@ajit283

@ajit283 ajit283 commented Jul 17, 2026

Copy link
Copy Markdown

Summary

Use the NVVM dialect for the remaining NVIDIA non-mbarrier barrier path instead of manually constructing an LLVM intrinsic call.

Warp-specialization switch loops currently emit llvm.nvvm.barrier.cta.sync.all by name. Emitting nvvm.barrier keeps the target operation represented in MLIR, uses the dialect verifier, and delegates LLVM intrinsic selection to NVVM translation.

CTA barriers, warp barriers, and cluster arrive/wait barriers elsewhere already use NVVM dialect operations. This change makes the warp-specialization all-participant named barriers consistent with them.

At Triton's pinned LLVM revision, nvvm.barrier translates to the same llvm.nvvm.barrier.cta.sync.all intrinsic and NVPTX backend instruction, so the emitted bar.sync semantics are unchanged.

Testing

  • pre-commit run --from-ref origin/main --to-ref HEAD
  • make
  • lit -v test/Conversion (81/81 passed)
  • pytest -s --tb=short python/test/unit/language/test_compile_only.py::test_compile_only_dot

New contributor declaration

  • I am not making a trivial change, such as fixing a typo in a comment.

  • I have written a PR description following these
    rules.

  • I have run pre-commit run --from-ref origin/main --to-ref HEAD.

  • I have added tests.

    • /test for lit tests
    • /unittest for C++ tests
    • /python/test for end-to-end tests
  • I have not added any lit tests.

@ajit283
ajit283 requested a review from ptillet as a code owner July 17, 2026 21:47
@ajit283
ajit283 force-pushed the nvidia-nvvm-barriers-fences branch from b9831f2 to ef22e93 Compare July 17, 2026 21:50
@ajit283 ajit283 changed the title [NVIDIA] Lower barriers and proxy fences with NVVM [NVIDIA] Lower warp-specialization barriers with NVVM Jul 17, 2026
@ajit283
ajit283 force-pushed the nvidia-nvvm-barriers-fences branch from ef22e93 to cd19679 Compare July 20, 2026 10:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant