Skip to content

Install cuDNN frontend in GitHub builds#3196

Merged
ptrendx merged 1 commit into
NVIDIA:mainfrom
sudhakarsingh27:sudhakars/fix-gha-cudnn-frontend-dependency
Jul 9, 2026
Merged

Install cuDNN frontend in GitHub builds#3196
ptrendx merged 1 commit into
NVIDIA:mainfrom
sudhakarsingh27:sudhakars/fix-gha-cudnn-frontend-dependency

Conversation

@sudhakarsingh27

@sudhakarsingh27 sudhakarsingh27 commented Jul 9, 2026

Copy link
Copy Markdown
Member

Summary

  • Install the declared nvidia-cudnn-frontend>=1.25.0 build dependency in every GitHub Actions build environment.
  • Keep the workflow requirement aligned with pyproject.toml.

Root cause

TransformerEngine now resolves cuDNN frontend headers from the installed Python distribution. The GitHub Actions builds use --no-build-isolation, so build-system requirements are not installed automatically and metadata generation fails with PackageNotFoundError.

Validation

Scenario Result
Workflow YAML parsing Passed with PyYAML
Diff hygiene git diff --check passed
Package availability Python 3.10 and 3.12 x86_64 wheels are published for the currently resolved 1.26.0 release
GitHub Actions Build run 28997378989 pending

TransformerEngine now resolves cuDNN frontend headers from the Python distribution, but GitHub Actions builds without isolation and did not install that build dependency.

Install the same >=1.25.0 requirement declared in pyproject.toml for every build variant so metadata generation can proceed.

Signed-off-by: Sudhakar Singh <sudhakars@nvidia.com>
@ptrendx

ptrendx commented Jul 9, 2026

Copy link
Copy Markdown
Member

I think there is an issue here that we shouldn't just WAR - the cudnn frontend should be installed as a dependency of TE, the fact that it does not do that is a problem.

Comment thread .github/workflows/build.yml
@timmoon10

Copy link
Copy Markdown
Member

It seems we are still experiencing build failures because NCCL EP added a NCCL dependency: #3127

@vcherepanov-nv vcherepanov-nv left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM, thanks!

@sudhakarsingh27 sudhakarsingh27 marked this pull request as ready for review July 9, 2026 21:00
@greptile-apps

greptile-apps Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds nvidia-cudnn-frontend>=1.25.0 to the pip install step in all four GitHub Actions build jobs (core, pytorch, jax, all) so that the package is present when building with --no-build-isolation. The constraint matches what is already declared in the root pyproject.toml build-system requirements.

  • All four build jobs (core, pytorch, jax, all) now install the dependency before the pip install --no-build-isolation step, closing the gap that caused PackageNotFoundError during metadata generation.
  • The quoted form "nvidia-cudnn-frontend>=1.25.0" is used consistently, correctly escaping the > operator from shell interpretation.

Confidence Score: 5/5

Safe to merge — adds a single missing build dependency across four CI jobs with no logic changes.

The change is a one-line addition per job, the version constraint matches pyproject.toml exactly, and the quoting is correct for shell safety. No test, runtime, or security concerns are introduced.

No files require special attention.

Important Files Changed

Filename Overview
.github/workflows/build.yml Adds nvidia-cudnn-frontend>=1.25.0 to pip install steps in all four build jobs; constraint is consistent with pyproject.toml and quoting is correct for shell safety.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[GitHub Actions Build Job] --> B[Dependencies Step]
    B --> C[apt-get / docker setup]
    C --> D["pip install build tools\ncmake, pybind11, ninja, etc."]
    D --> E["pip install nvidia-cudnn-frontend>=1.25.0\n✅ Added by this PR"]
    E --> F["pip install --no-build-isolation .\nreads pyproject.toml build-system.requires"]
    F --> G{cudnn-frontend\navailable?}
    G -->|Before PR: NO| H["❌ PackageNotFoundError\nMetadata generation fails"]
    G -->|After PR: YES| I["✅ Build succeeds\ntransformer_engine installed"]
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[GitHub Actions Build Job] --> B[Dependencies Step]
    B --> C[apt-get / docker setup]
    C --> D["pip install build tools\ncmake, pybind11, ninja, etc."]
    D --> E["pip install nvidia-cudnn-frontend>=1.25.0\n✅ Added by this PR"]
    E --> F["pip install --no-build-isolation .\nreads pyproject.toml build-system.requires"]
    F --> G{cudnn-frontend\navailable?}
    G -->|Before PR: NO| H["❌ PackageNotFoundError\nMetadata generation fails"]
    G -->|After PR: YES| I["✅ Build succeeds\ntransformer_engine installed"]
Loading

Reviews (1): Last reviewed commit: "Install cuDNN frontend in GitHub builds" | Re-trigger Greptile

@ptrendx ptrendx merged commit 3bc89b9 into NVIDIA:main Jul 9, 2026
11 of 15 checks passed
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.

4 participants