pytorch/tools
Xuehai Pan 5b1cedacde [BE] [2/3] Rewrite super() calls in functorch and torch (#94588)
Rewrite Python built-in class `super()` calls. Only non-semantic changes should be applied.

- #94587
- #94588
- #94592

Also, methods with only a `super()` call are removed:

```diff
class MyModule(nn.Module):
-   def __init__(self):
-       super().__init__()
-
    def forward(self, ...):
        ...
```

Some cases that change the semantics should be kept unchanged. E.g.:

f152a79be9/caffe2/python/net_printer.py (L184-L190)

f152a79be9/test/test_jit_fuser_te.py (L2628-L2635)

Pull Request resolved: https://github.com/pytorch/pytorch/pull/94588
Approved by: https://github.com/ezyang, https://github.com/albanD
2023-02-10 21:16:33 +00:00
..
amd_build [NVFUSER] refactor nvfuser build (#89621) 2023-01-26 02:50:44 +00:00
autograd Fix div by fp64 scalar issue on xla device (#94459) 2023-02-10 17:57:47 +00:00
bazel_tools
build_defs
code_analyzer [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
code_coverage
config
coverage_plugins_package
dynamo [BE] [2/3] Rewrite super() calls in functorch and torch (#94588) 2023-02-10 21:16:33 +00:00
fast_nvcc [BE] Import Literal, Protocol, and Final from standard library typing as of Python 3.8+ (#94490) 2023-02-09 19:17:49 +00:00
gdb
iwyu
jit [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
linter [BE] Modernize PyTorch even more for 3.8 with pyupgrade (#94520) 2023-02-10 18:02:50 +00:00
lite_interpreter [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
lldb
onnx [ONNX] Update diagnostics system (#94565) 2023-02-10 20:45:01 +00:00
pyi [SDPA] update type hint for scaled_dot_product_attention and documentation (#94008) 2023-02-10 18:02:43 +00:00
rules
setup_helpers [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
shared Cleaning up some logic in tools/shared/cwrap_common.py (#94475) 2023-02-10 17:49:11 +00:00
stats [BE]: Apply pyupgrade yield from and unit test alias upgrades (#94309) 2023-02-07 20:08:58 +00:00
test [BE]: pyupgrade Python to 3.8 - imports and object inheritance only (#94308) 2023-02-07 21:10:56 +00:00
testing [BE] Modernize PyTorch even more for 3.8 with pyupgrade (#94520) 2023-02-10 18:02:50 +00:00
__init__.py
bazel.bzl [bazel] Add @pytorch in tools/bazel.bzl (#91424) 2023-01-04 18:28:19 +00:00
BUCK.bzl [Vulkan] Remove GLSL Code Gen (#91912) 2023-01-10 20:29:47 +00:00
BUCK.oss
build_libtorch.py
build_pytorch_libs.py
download_mnist.py
extract_scripts.py [BE] Import Literal, Protocol, and Final from standard library typing as of Python 3.8+ (#94490) 2023-02-09 19:17:49 +00:00
gen_flatbuffers.sh
gen_vulkan_spv.py [BE]: pyupgrade Python to 3.8 - imports and object inheritance only (#94308) 2023-02-07 21:10:56 +00:00
generate_torch_version.py [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
generated_dirs.txt
git_add_generated_dirs.sh
git_reset_generated_dirs.sh
nightly.py [BE] Modernize PyTorch even more for 3.8 with pyupgrade (#94520) 2023-02-10 18:02:50 +00:00
nvcc_fix_deps.py
pytorch.version
README.md Remove print_test_stats, test_history, s3_stat_parser (#92841) 2023-01-27 18:11:42 +00:00
render_junit.py Fix exception causes all over the codebase (#90271) 2022-12-07 04:29:00 +00:00
substitute.py [BE] Prefer dash over underscore in command-line options (#94505) 2023-02-09 20:16:49 +00:00
update_masked_docs.py
vscode_settings.py

This folder contains a number of scripts which are used as part of the PyTorch build process. This directory also doubles as a Python module hierarchy (thus the __init__.py).

Overview

Modern infrastructure:

  • autograd - Code generation for autograd. This includes definitions of all our derivatives.
  • jit - Code generation for JIT
  • shared - Generic infrastructure that scripts in tools may find useful.
    • module_loader.py - Makes it easier to import arbitrary Python files in a script, without having to add them to the PYTHONPATH first.

Build system pieces:

  • setup_helpers - Helper code for searching for third-party dependencies on the user system.
  • build_pytorch_libs.py - cross-platform script that builds all of the constituent libraries of PyTorch, but not the PyTorch Python extension itself.
  • build_libtorch.py - Script for building libtorch, a standalone C++ library without Python support. This build script is tested in CI.
  • fast_nvcc - Mostly-transparent wrapper over nvcc that parallelizes compilation when used to build CUDA files for multiple architectures at once.
    • fast_nvcc.py - Python script, entrypoint to the fast nvcc wrapper.

Developer tools which you might find useful:

Important if you want to run on AMD GPU:

  • amd_build - HIPify scripts, for transpiling CUDA into AMD HIP. Right now, PyTorch and Caffe2 share logic for how to do this transpilation, but have separate entry-points for transpiling either PyTorch or Caffe2 code.
    • build_amd.py - Top-level entry point for HIPifying our codebase.

Tools which are only situationally useful: