Skip to content

feat: bump nvidia-cutlass-dsl to >=4.4.2#2833

Open
limin2021 wants to merge 5 commits intoflashinfer-ai:mainfrom
limin2021:update_dsl_4.4
Open

feat: bump nvidia-cutlass-dsl to >=4.4.2#2833
limin2021 wants to merge 5 commits intoflashinfer-ai:mainfrom
limin2021:update_dsl_4.4

Conversation

@limin2021
Copy link
Contributor

@limin2021 limin2021 commented Mar 20, 2026

Update requirements.txt to require >=4.4.2 and add CI override via setup_python.env so tests use the new version immediately without waiting for Docker image rebuild.

📌 Description

Summary

  • Update requirements.txt to require nvidia-cutlass-dsl>=4.4.2 (was >=4.3.4)
  • Add CUTLASS_DSL_VERSION override support in scripts/setup_test_env.sh
  • Set CUTLASS_DSL_VERSION=4.4.2 in ci/setup_python.env so CI tests use the new version immediately without waiting for Docker image
    rebuild

Test plan

  • CI tests pass with nvidia-cutlass-dsl 4.4.2 installed via setup_python.env override
  • After Docker images are rebuilt, remove CUTLASS_DSL_VERSION from ci/setup_python.env

🔍 Related Issues

🚀 Pull Request Checklist

Thank you for contributing to FlashInfer! Before we review your pull request, please make sure the following items are complete.

✅ Pre-commit Checks

  • I have installed pre-commit by running pip install pre-commit (or used your preferred method).
  • I have installed the hooks with pre-commit install.
  • I have run the hooks manually with pre-commit run --all-files and fixed any reported issues.

If you are unsure about how to set up pre-commit, see the pre-commit documentation.

🧪 Tests

  • Tests have been added or updated as needed.
  • All tests are passing (unittest, etc.).

Reviewer Notes

Summary by CodeRabbit

  • Chores
    • Updated nvidia-cutlass-dsl dependency requirement to version 4.4.2
    • Added CUTLASS_DSL_VERSION environment variable for CI configuration override
    • Enhanced test environment setup with CUDA-aware package selection logic

Update requirements.txt to require >=4.4.2 and add CI override via
setup_python.env so tests use the new version immediately without
waiting for Docker image rebuild.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request aims to upgrade the nvidia-cutlass-dsl dependency to a newer version and establish a robust method for continuous integration (CI) systems to immediately utilize this updated dependency. This ensures that development and testing environments can quickly align with the latest library features and fixes, streamlining the integration process.

Highlights

  • Dependency Update: The minimum required version for nvidia-cutlass-dsl has been updated from >=4.3.4 to >=4.4.2 in requirements.txt.
  • CI Override Mechanism: A new mechanism was introduced to allow overriding the nvidia-cutlass-dsl version in CI environments immediately, without waiting for Docker image rebuilds.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 20, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR bumps the nvidia-cutlass-dsl dependency from version 4.3.4 to 4.4.2 across the project. It introduces a configurable CUTLASS_DSL_VERSION environment variable in CI and updates the setup script to handle version overrides with CUDA-specific package variants.

Changes

Cohort / File(s) Summary
nvidia-cutlass-dsl Dependency Bump
ci/setup_python.env, requirements.txt, scripts/setup_test_env.sh
Updated nvidia-cutlass-dsl minimum version from 4.3.4 to 4.4.2. Added CUTLASS_DSL_VERSION environment variable for CI overrides. Enhanced setup script with CUDA-aware package selection (cu13 variant for CUDA 13, standard for others) and uninstall/reinstall logic for version management.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • #2161 — Updates nvidia-cutlass-dsl dependency version constraint in requirements.txt
  • #2288 — Bumps nvidia-cutlass-dsl dependency version in requirements.txt
  • #2735 — Makes runtime code changes compatible with cutlass >=4.4.0; this PR's dependency bump enables those compatibility fixes

Suggested labels

cute-dsl

Suggested reviewers

  • aleozlx
  • yongwww
  • bkryu
  • jimmyzho

Poem

🐰 A cutlass update hops into sight,
Version four-four-two, shiny and bright,
CUDA variants chosen with care,
CI overrides float through the air,
Dependencies dance in perfect plight! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: bumping the nvidia-cutlass-dsl dependency to version >=4.4.2, which is the primary objective of this changeset.
Description check ✅ Passed The PR description covers all required template sections with substantive content including summary of changes, test plan, and pre-commit checks. All checklist items are completed.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request correctly bumps the nvidia-cutlass-dsl dependency version to >=4.4.2. The changes include updating requirements.txt and adding a CI override mechanism to immediately use the new version. The implementation is solid. I have one minor suggestion to improve a comment's clarity in the CI environment file to prevent future confusion.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@ci/setup_python.env`:
- Around line 19-20: The active override CUTLASS_DSL_VERSION=4.4.2 is
inconsistent with the header guidance that overrides should not be merged;
update the file to either (a) comment the line back out if this was temporary,
or (b) keep it but add a one-line explanatory comment above CUTLASS_DSL_VERSION
noting why this is an intentional exception (e.g., temporary bridge until Docker
image rebuilt) and include a TODO with the intended remediation (e.g., "TODO:
remove when image rebuilt"), so reviewers know this is deliberate and tracked.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 3fdc60bd-51f4-48b3-83e5-1fcc619f6881

📥 Commits

Reviewing files that changed from the base of the PR and between 6f0928c and 9c8902f.

📒 Files selected for processing (3)
  • ci/setup_python.env
  • requirements.txt
  • scripts/setup_test_env.sh

@yongwww yongwww added the run-ci label Mar 20, 2026
@bkryu
Copy link
Collaborator

bkryu commented Mar 20, 2026

/bot run

@flashinfer-bot
Copy link
Collaborator

GitLab MR !439 has been created, and the CI pipeline #46584535 is currently running. I'll report back once the pipeline job completes.

# TVM_FFI_REF=

# Uncomment to override nvidia-cutlass-dsl version:
CUTLASS_DSL_VERSION=4.4.2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove it after the CI passed.

limin2021 and others added 2 commits March 20, 2026 01:08
From 4.4 onwards, nvidia-cutlass-dsl requires the [cu13] extra to
install nvidia-cutlass-dsl-libs-cu13. Without it, CI fails.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…install

- requirements.txt: remove [cu13] extra (keep generic for Docker builds)
- setup_test_env.sh: detect CUDA major version from torch to select
  [cu12] or [cu13] extra, and clean uninstall old packages before
  installing (per NVIDIA docs recommendation)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@limin2021
Copy link
Contributor Author

/bot run

@flashinfer-bot
Copy link
Collaborator

@limin2021 is not authorized to trigger this CI job. cc: @yzh119, @sricketts, @yongwww

@yzh119
Copy link
Collaborator

yzh119 commented Mar 20, 2026

/bot run

@flashinfer-bot
Copy link
Collaborator

GitLab MR !439 has been updated with latest changes, and the CI pipeline #46590486 is currently running. I'll report back once the pipeline job completes.

@limin2021
Copy link
Contributor Author

/bot run

@flashinfer-bot
Copy link
Collaborator

@limin2021 is not authorized to trigger this CI job. cc: @yzh119, @sricketts, @yongwww

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.claude/skills/update-cutlass-dsl/SKILL.md:
- Around line 53-59: The unlabeled fenced code blocks in SKILL.md (the example
blocks around the "Before/After" snippet and the PR flow diagram near lines 53
and 137) trigger markdownlint MD040; update each triple-backtick fence to
include a language (e.g., change ``` to ```text) for both the small Before/After
snippet and the larger PR flow block so the fenced-code blocks are labeled and
the lint warning is resolved.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 5da7ab12-313c-41a6-addf-d66869c1bf48

📥 Commits

Reviewing files that changed from the base of the PR and between ae215a6 and f3edb43.

📒 Files selected for processing (2)
  • .claude/skills/update-cutlass-dsl/SKILL.md
  • scripts/setup_test_env.sh

Comment on lines +53 to +59
```
# Before
nvidia-cutlass-dsl>=4.3.4

# After (example)
nvidia-cutlass-dsl>=4.4.2
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Add fenced-code languages to satisfy markdownlint (MD040).

Line 53 and Line 137 use unlabeled fenced blocks; add a language (e.g., text) to avoid lint warnings.

🛠️ Suggested doc-only fix
-```
+```text
 # Before
 nvidia-cutlass-dsl>=4.3.4

 # After (example)
 nvidia-cutlass-dsl>=4.4.2

```diff
-```
+```text
 Push PR to main
   |
   +-- pr-test.yml (runs immediately)
   |     \-- reads old Docker tag from ci/docker-tags.yml
   |     \-- uses old Docker image
   |     \-- BUT setup_test_env.sh installs CUTLASS_DSL_VERSION override  <-- new version used here
   |
   +-- release-ci-docker.yml (triggered by requirements.txt change)
         \-- builds new Docker image with new version baked in
         \-- auto-creates PR to update ci/docker-tags.yml
         \-- after that PR merges, future CI uses new image natively
</details>


Also applies to: 137-149

<details>
<summary>🧰 Tools</summary>

<details>
<summary>🪛 markdownlint-cli2 (0.21.0)</summary>

[warning] 53-53: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

</details>

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @.claude/skills/update-cutlass-dsl/SKILL.md around lines 53 - 59, The
unlabeled fenced code blocks in SKILL.md (the example blocks around the
"Before/After" snippet and the PR flow diagram near lines 53 and 137) trigger
markdownlint MD040; update each triple-backtick fence to include a language
(e.g., change totext) for both the small Before/After snippet and the
larger PR flow block so the fenced-code blocks are labeled and the lint warning
is resolved.


</details>

<!-- fingerprinting:phantom:poseidon:hawk -->

<!-- This is an auto-generated comment by CodeRabbit -->

- setup_test_env.sh: only add [cu13] extra for CUDA 13, plain install for CUDA 12
- Update skill docs to match NVIDIA's official installation guide

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@flashinfer-bot
Copy link
Collaborator

[FAILED] Pipeline #46590486: 13/20 passed

@bkryu
Copy link
Collaborator

bkryu commented Mar 20, 2026

/bot run

@flashinfer-bot
Copy link
Collaborator

GitLab MR !439 has been updated with latest changes, and the CI pipeline #46615561 is currently running. I'll report back once the pipeline job completes.

@flashinfer-bot
Copy link
Collaborator

[FAILED] Pipeline #46615561: 13/20 passed

@saltyminty
Copy link
Collaborator

Seems there are till GB200/300 failures due to cutedsl errors in CI.

@nv-yunzheq
Copy link
Collaborator

/bot run

@flashinfer-bot
Copy link
Collaborator

GitLab MR !439 has been updated with latest changes, and the CI pipeline #46648743 is currently running. I'll report back once the pipeline job completes.

@flashinfer-bot
Copy link
Collaborator

[FAILED] Pipeline #46648743: 13/20 passed

@yzh119
Copy link
Collaborator

yzh119 commented Mar 22, 2026

The remaining failed kernel is:

  • tests/moe/test_cute_dsl_fused_moe.py

on cu129 for both b200 and b300.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants