pytorch/torch/_inductor
Shunting Zhang 4cc64d6234 [inductor] pre grad graph bisecting (#166344)
A few things to note:
1. Customers like vllm use a custom backend (e.g. VllmBackend), split the graph, and call standalone_compile for each split. If we let the bisector override the backend, we won't bisect thru the custom backend. `test_configs.bisect_keep_custom_backend_for_inductor` is used to keep the custom backend if we are bisecting for inductor.
2. pre_grad_graph bisecting and lowering bisecting so far does not compose well with each other since an issue may be just captured by the first one we try. `test_configs.bisect_pre_grad_graph` is used to enable the 'pre_grad_graph' bisecting.

Pull Request resolved: https://github.com/pytorch/pytorch/pull/166344
Approved by: https://github.com/eellison
2025-11-01 09:22:21 +00:00
..
analysis [inductor][mi350] add tech specs for MI350 (#166576) 2025-10-30 03:46:52 +00:00
autoheuristic Update ruff to 0.13.1 (#163744) 2025-09-26 10:12:21 +00:00
codegen Avoid DDE in narrow with unbacked start (#166361) 2025-11-01 07:10:23 +00:00
compile_worker compile_worker: Make a timer class (#166465) 2025-10-31 22:39:31 +00:00
fx_passes [2/N] Use 'is' in callable comparisons (#166685) 2025-10-31 08:08:07 +00:00
kernel [FlexFlash] Wire up mask_mod + blockmask to flash impl (#166359) 2025-10-31 22:07:40 +00:00
lookup_table [inductor][choices] lookup table choices 1/3 (#164978) 2025-10-30 01:28:01 +00:00
package Clean up unused Pyrefly suppressions (#166178) 2025-10-25 05:32:21 +00:00
runtime [ROCm][inductor] More configs for pointwise kernels. (#166470) 2025-10-30 21:20:12 +00:00
template_heuristics [Inductor][Triton][FP8] Support deepseek-style scaling in Inductor (#164404) 2025-10-28 03:38:54 +00:00
__autotune_main__.py
__init__.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
analyze_preserves_zero_mask.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
aoti_eager.py
async_compile.py [multi-kernel] shape-similarity kernel selection (#163090) 2025-09-23 21:00:47 +00:00
augmented_graph_helper.py helper function for replacing nodes in aug graph (#166309) 2025-10-29 23:08:33 +00:00
autotune_process.py [Inductor][Autotune] Gracefully restart the autotune process after ULF failure (#166073) 2025-10-25 10:40:59 +00:00
await_utils.py Fix pyrefly ignores 1/n (#166239) 2025-10-26 00:44:10 +00:00
bounds.py
cache.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
choices.py [Inductor] Prevent kernel fusion with too many unique inputs and outputs (#166275) 2025-10-29 16:41:34 +00:00
codecache.py [1/N] Remove unused loop variables (#166258) 2025-10-30 12:22:25 +00:00
comm_analysis.py Enable all flake8-logging-format rules (#164655) 2025-10-19 00:59:28 +00:00
comm_lowering.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
comms_debug.py [1/N] Remove unused loop variables (#166258) 2025-10-30 12:22:25 +00:00
comms.py Use 'is' in callable comparisons (#166624) 2025-10-30 19:00:09 +00:00
compile_fx_async.py Enable PLC0414 on ruff (#165828) 2025-10-22 04:56:52 +00:00
compile_fx_ext.py Clean up unused Pyrefly suppressions (#166178) 2025-10-25 05:32:21 +00:00
compile_fx_subproc.py Enable PLC0414 on ruff (#165828) 2025-10-22 04:56:52 +00:00
compile_fx.py [inductor] pre grad graph bisecting (#166344) 2025-11-01 09:22:21 +00:00
compiler_bisector.py [inductor] pre grad graph bisecting (#166344) 2025-11-01 09:22:21 +00:00
config_comms.py
config.py [inductor] pre grad graph bisecting (#166344) 2025-11-01 09:22:21 +00:00
constant_folding.py [2/N] Use 'is' in callable comparisons (#166685) 2025-10-31 08:08:07 +00:00
cpp_builder.py [AOTI] Remove c10 as linked library (#165489) 2025-10-27 13:53:44 +00:00
cpu_vec_isa.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
cudagraph_trees.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
cudagraph_utils.py [2/N] Use 'is' in callable comparisons (#166685) 2025-10-31 08:08:07 +00:00
custom_graph_pass.py [inductor] custom_graph_pass.get_hash_for_files: don't hash paths (#165020) 2025-10-09 20:07:53 +00:00
debug.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
decomposition.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
dependencies.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
dtype_propagation.py [inductor] generate fused rms/layer norm bwd (#165370) 2025-10-28 05:53:52 +00:00
exc.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
extern_node_serializer.py
freezing_utils.py
freezing.py [2/N] Use 'is' in callable comparisons (#166685) 2025-10-31 08:08:07 +00:00
fuzzer.py [PT2] set choice handler in config (#166607) 2025-10-31 15:40:05 +00:00
fx_utils.py Clean up unused Pyrefly suppressions (#166178) 2025-10-25 05:32:21 +00:00
graph.py [2/N] Use 'is' in callable comparisons (#166685) 2025-10-31 08:08:07 +00:00
hooks.py
index_propagation.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
inductor_prims.py [Easy] Add pointwise tag to fma (#164149) 2025-09-29 22:40:04 +00:00
ir.py [GraphPartition] cache get_free_symbol_uses (#166338) 2025-10-31 21:24:05 +00:00
jagged_lowerings.py
kernel_inputs.py [inductor][template heuristics] don't take layout to generate choices (#162238) 2025-09-09 17:17:04 +00:00
kernel_template_choice.py [inductor][choices] move extra kwargs out of get_template_configs (#163209) 2025-09-20 05:30:40 +00:00
loop_body.py [inductor] generate fused rms/layer norm bwd (#165370) 2025-10-28 05:53:52 +00:00
lowering.py [wip] fix searchsorted non dense (#165064) 2025-10-30 21:21:24 +00:00
memory.py Enable all flake8-logging-format rules (#164655) 2025-10-19 00:59:28 +00:00
metrics.py [inductor] generate fused rms/layer norm bwd (#165370) 2025-10-28 05:53:52 +00:00
mkldnn_ir.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
mkldnn_lowerings.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
mock_cache.py
ops_handler.py [inductor] generate fused rms/layer norm bwd (#165370) 2025-10-28 05:53:52 +00:00
optimize_indexing.py
output_code.py Add regional aot eager support to AOTAutogradCacheEntry (#166650) 2025-10-31 18:54:09 +00:00
pattern_matcher.py [1/N] Remove unused loop variables (#166258) 2025-10-30 12:22:25 +00:00
quantized_lowerings.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
remote_cache.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
remote_gemm_autotune_cache.py
scheduler.py [1/N] Remove unused loop variables (#166258) 2025-10-30 12:22:25 +00:00
script.ld
select_algorithm.py [Inductor] Enable Custom op Autotune Decompositions and Parameter Tuning (#164212) 2025-10-31 02:28:00 +00:00
shape_propagation.py Native matmul (#157743) 2025-10-14 04:22:30 +00:00
sizevars.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
standalone_compile.py Implement an AOT precompile mode for standalone_compile (#165843) 2025-10-21 15:02:45 +00:00
subgraph_lowering.py
test_case.py
test_operators.py Fix pyrefly ignore syntax in _inductor (#166247) 2025-10-27 02:48:42 +00:00
tiling_utils.py [1/N] Remove unused loop variables (#166258) 2025-10-30 12:22:25 +00:00
triton_bundler.py Enable all flake8-logging-format rules (#164655) 2025-10-19 00:59:28 +00:00
utils.py [GraphPartition] cache get_free_symbol_uses (#166338) 2025-10-31 21:24:05 +00:00
virtualized.py [PT2] set choice handler in config (#166607) 2025-10-31 15:40:05 +00:00
wrapper_benchmark.py Clean up unused Pyrefly suppressions (#166178) 2025-10-25 05:32:21 +00:00