Uh oh!
There was an error while loading. Please reload this page.
feat(cuda): add canonical softmax providers - #890
Merged
Conversation
voltjiaforce-pushed
the
feat/add-canonical-softmax-provider
branch
from
August 7, 2026 09:39
eec65a1 to
d153ad1Compare19 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
SoftmaxCUDA providers for NVIDIA, Iluvatar, MetaX, and Moore.Motivation
InfiniCore still uses the deprecated
SoftmaxInfinilmcompatibility operator. Canonical provider coverage is required before that adapter can migrate to the PyTorch-alignedSoftmaxAPI.Type of Change
feat- new feature / new operator / new platformfix- bug fixperf- performance improvement (no behavioral change)refactor- code restructuring without behavior changetest- adding or fixing tests onlydocs- documentation onlybuild/ci- build system or CI configurationchore- tooling, formatting, or other non-code changes!in the Conventional Commits prefix or aBREAKING CHANGE:footer)Platforms Affected
WITH_CPU)WITH_NVIDIA)WITH_ILUVATAR)WITH_METAX)WITH_CAMBRICON)WITH_MOORE)WITH_ASCEND)WITH_TORCH)Smoke Test Result
Validated on
ssh nvidiainaccelerator-dev/nvidia:latestas part of the canonical-provider integration stack:Test Results on Supported Platforms
Benchmark / Performance Impact
N/A. The canonical providers reuse one generic implementation.
Notes for Reviewers
The public schema already existed; this PR adds native provider coverage and the metadata needed by the generic implementation.
Softmax(input, dim, dtype, out)torch.nn.functional.softmax(input, dim=None, _stacklevel=3, dtype=None)InfiniOps omits Python's internal
_stacklevelargument and uses an explicit trailing output tensor for its C++ API. This PR does not add overloads or removeSoftmaxInfinilm. The vendor backend headers are thin wrappers aroundsrc/native/cuda/ops/softmax/kernel.h.The NVIDIA result validates the NVIDIA provider and shared kernel. Iluvatar, MetaX, and Moore platform CI remain required.