Repository navigation
refactor(infra)!: pass backend configuration through Target - #20651
Merged
tqchen merged 1 commit intoOct 11, 2026
Merged
Conversation
tqchen
approved these changes
Oct 11, 2026
tqchen
pushed a commit
that referenced
this pull request
Oct 16, 2026
CUDA backend configuration already travels through Target attributes.
Remove the parallel `backend_config` keyword from `tvm.compile`,
`tvm.tirx.build`, `tvm.relax.build`, and `IketProfiler.compile`;
compilation now resolves its defaults from the supplied Target.
```python
import tvm
from tvm.backend.cuda import BackendConfig
target = tvm.target.Target({
"kind": "cuda",
"arch": "sm_100a",
"backend_config": {
"cuda": BackendConfig(compiler="nvrtc", nvrtc=["--use_fast_math", "--ftz=false"])
},
})
executable = tvm.compile(func, target=target)
```
Each `device_entry(backend_config=...)` keeps its independent overrides,
including architecture and toolchain settings. The existing per-entry
resolution and module grouping continue to apply. Update callers, source
helpers, and documentation to use Target defaults followed by entry
overrides.
Follow-up to merged #20645.
Validation:
- Built successfully on the merged #20645 baseline (`0f861ee568`) in 67
seconds.
- Full TIRx suite: 2,689 passed / 290 skipped on seven B200 GPUs, 165
seconds.
- Backend configuration, launch, and IKET regressions: 131 passed / 2
skipped.
- CUDA codegen and Relax VM build regressions: 415 passed / 4 skipped.
- Updated TIRx-kernels callers: 94 focused tests passed; all eight MQA
registry correctness cases passed. Both workload and strict registry
import gates passed (274 workloads / 93 kernels).
- Changed-file and staged pre-commit checks passed.
The latest upstream commit (`27576ce2d1`) fails the local NCCL-enabled
C++ build in `cuda_ipc_memory.cc` after its object-handle changes. The
checks above therefore use the merged #20645 baseline; this follow-up
changes Python APIs, tests, and documentation only.
tqchen
pushed a commit
that referenced
this pull request
Oct 18, 2026
CUDA backend configuration already travels through Target attributes.
Remove the parallel `backend_config` keyword from `tvm.compile`,
`tvm.tirx.build`, `tvm.relax.build`, and `IketProfiler.compile`;
compilation now resolves its defaults from the supplied Target.
```python
import tvm
from tvm.backend.cuda import BackendConfig
target = tvm.target.Target({
"kind": "cuda",
"arch": "sm_100a",
"backend_config": {
"cuda": BackendConfig(compiler="nvrtc", nvrtc=["--use_fast_math", "--ftz=false"])
},
})
executable = tvm.compile(func, target=target)
```
Each `device_entry(backend_config=...)` keeps its independent overrides,
including architecture and toolchain settings. The existing per-entry
resolution and module grouping continue to apply. Update callers, source
helpers, and documentation to use Target defaults followed by entry
overrides.
Follow-up to merged #20645.
Validation:
- Built successfully on the merged #20645 baseline (`0f861ee568`) in 67
seconds.
- Full TIRx suite: 2,689 passed / 290 skipped on seven B200 GPUs, 165
seconds.
- Backend configuration, launch, and IKET regressions: 131 passed / 2
skipped.
- CUDA codegen and Relax VM build regressions: 415 passed / 4 skipped.
- Updated TIRx-kernels callers: 94 focused tests passed; all eight MQA
registry correctness cases passed. Both workload and strict registry
import gates passed (274 workloads / 93 kernels).
- Changed-file and staged pre-commit checks passed.
The latest upstream commit (`27576ce2d1`) fails the local NCCL-enabled
C++ build in `cuda_ipc_memory.cc` after its object-handle changes. The
checks above therefore use the merged #20645 baseline; this follow-up
changes Python APIs, tests, and documentation only.
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 free
to 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.
CUDA backend configuration already travels through Target attributes. Remove the parallel
backend_configkeyword fromtvm.compile,tvm.tirx.build,tvm.relax.build, andIketProfiler.compile; compilation now resolves its defaults from the supplied Target.Each
device_entry(backend_config=...)keeps its independent overrides, including architecture and toolchain settings. The existing per-entry resolution and module grouping continue to apply. Update callers, source helpers, and documentation to use Target defaults followed by entry overrides.Follow-up to merged #20645.
Validation:
0f861ee568) in 67 seconds.The latest upstream commit (
27576ce2d1) fails the local NCCL-enabled C++ build incuda_ipc_memory.ccafter its object-handle changes. The checks above therefore use the merged #20645 baseline; this follow-up changes Python APIs, tests, and documentation only.