BE project hard-removing the deprecated named tensor feature to remove overhead and code bloat. This was nearly all done by wrestling with Claude Code, so it needs some personal review and probably needs to be split into multiple PRs to help reviewers.
The process was me absent-mindedly doing this throughout the week while working on other stuff:
me: remove named tensor along with all associated APIs, tests, and docs from the codebase
claude: <does stuff>
while not built:
me: <tries to build>
if error:
me: there are still remnants of named tensor (with build-error related example); remove all these
claude: <does more stuff, usually very good at generalizing from the example>
This wasn't particularly efficient (it built after ~27 iterations) but didn't require much thought or time from my end. The only part Claude Code did NOT do is add a couple now-necessary #include <ATen/WrapDimUtils.h> statements.
It builds! Testing is still a WIP.
Having Claude Code break this into manageable PRs, the breakdown is:
1. Remove named tensor tests and documentation
- test/test_namedtensor.py
- test/compiled_autograd_skips/TestNamedTensor.*
- test/dynamo_expected_failures/TestNamedTensor.*
- docs/source/named_tensor.md
- docs/source/name_inference.md
- Test file updates (test_ops.py, test_overrides.py, test_builtins.py, test_torch.py, etc.)
- functorch/op_analysis/annotated_ops
- Expect file updates (HasDecompTest)
- test/allowlist_for_publicAPI.json
2. Remove named tensor operators from native_functions.yaml
- All Dimname-based operator overloads
- align_tensors, align_as, align_to, rename, refine_names
- Factory function names variants (empty.names, zeros.names, etc.)
3. Remove Python named tensor APIs
- torch/_namedtensor_internals.py
- torch/_tensor.py (names property, rename methods)
- torch/functional.py (align_tensors)
- torch/overrides.py references
- torch/_dynamo/trace_rules.py references
- torch/multiprocessing/reductions.py references
4. Remove C++ named tensor infrastructure and build system
- Dimname type system (Dimname.h/cpp, python_dimname.h/cpp, python_arg_parser changes)
- Core infrastructure (NamedTensor.h/cpp, NamedTensorUtils.h/cpp, TensorNames.h/cpp)
- TensorImpl changes (NamedTensorMetaInterface)
- Structured kernels (names parameter from set_output_* and all call sites)
- Guards (NoNamesGuard, NamesMode, guard.reset() calls)
- Build system (CMakeLists.txt, build_variables.bzl, cmake/prioritized_text.txt)
- Codegen (torchgen/, tools/autograd/ templates)
Pull Request resolved: , https://github.com/guangyey
Community-Analysen & Experten-Meinungen 0
Verwandte Story-Cluster & Quellen (Vektor-KI)
Ähnliche Beiträge
Auch interessante Nachrichten trunk/991d22dd38e9bda32ede7cc4ef0e86a0c5d69305: Remove named tensor (#173895)
Thematisch verwandte Begriffe: trunk991d22dd38e9bda32ede7cc4ef0e86a0c5d69305, Remove, named, tensor · 6 Treffer
I taught a 27B model to write Forge apps. As far as I can find, nobody had done that before
Videos werden geladen ...
Beiträge werden geladen ...
Videos werden geladen ...
Beiträge werden geladen ...
Videos werden geladen ...
Beiträge werden geladen ...
Videos werden geladen ...
Beiträge werden geladen ...
Videos werden geladen ...
SOCIAL SHARE CARD GENERATOR