Skip to content

feat: add CuTe DSL AOT kernel frontend - #4933

Open
bowang007 wants to merge 2 commits into
mainfrom
cutedsl_kernel_op
Open

bowang007 wants to merge 2 commits into
mainfrom
cutedsl_kernel_op

Conversation

@bowang007

Copy link
Copy Markdown
Collaborator

Register pointer-based CuTe DSL kernels as TensorRT AOT QDP plugins with dynamic shapes, constexpr parameters, multiple outputs, and shared memory. Validate compiler ABI and launch requirements before registering operators.

Reuse signature, dtype, target, PTX, and pointer-launch helpers across the kernel frontends. Include a dynamic-shape example, API documentation, optional dependencies, CI coverage, and focused ABI and GPU regressions.

Type of change

  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the style guidelines of this project (You can use the linters)
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas and hacks
  • I have made corresponding changes to the documentation
  • I have added tests to verify my fix or my feature
  • New and existing unit tests pass locally with my changes
  • I have added the relevant labels to my PR in so that relevant reviewers are notified

Register pointer-based CuTe DSL kernels as TensorRT AOT QDP plugins with
dynamic shapes, constexpr parameters, multiple outputs, and shared memory.
Validate compiler ABI and launch requirements before registering operators.

Reuse signature, dtype, target, PTX, and pointer-launch helpers across the
kernel frontends. Include a dynamic-shape example, API documentation, optional
dependencies, CI coverage, and focused ABI and GPU regressions.

Validation: 222 focused tests passed, including FP16/FP32 dynamic execution,
shared memory, and standalone engines with CuTe imports blocked. CuTe and
Triton examples also passed direct TensorRT GPU execution. All applicable
pre-commit hooks and the CI manifest checks passed.

Eleven existing integration cases were excluded from the focused run; the
installed native runtime predates this checkout's Engine.from_engine_tensor
API. GPU validation used the serialized-engine path.
@bowang007
bowang007 requested a review from narendasan October 27, 2026 00:06
@meta-cla meta-cla Bot added the cla signed label Oct 27, 2026
@github-actions github-actions Bot added documentation Improvements or additions to documentation component: tests Issues re: Tests component: build system Issues re: Build system component: api [Python] Issues re: Python API labels Oct 27, 2026
Recompile with a compiler-selected PTX ISA when CuTe's default output is
newer than the loaded CUDA driver supports. Preserve architecture-specific
targets such as sm_90a, retain ABI and driver-load validation, and derive
runtime arguments from the validated signature layout.

Replace the brittle CI setup source assertion with behavioral coverage for
required and optional dependencies. Document compatibility requirements and
add regression tests for target selection, compiler ISA retries, Hopper
warpgroup instructions, and serialized dynamic-shape engines.

Validation: 39 CuTe tests passed with both CUDA 12 and CUDA 13 compiler
variants; 199 shared/frontend tests passed; 288 pin/updater tests passed
(1 skipped). Pre-commit checks and the 32-suite CI manifest check passed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla signed component: api [Python] Issues re: Python API component: build system Issues re: Build system component: tests Issues re: Tests documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant