pytorch/tools
Jane Xu 30587195d3 Migrate c10/macros/cmake_macros.h.in to torch/headeronly (#158035)
Summary: As above, also changes a bunch of the build files to be better

Test Plan:
internal and external CI

did run buck2 build fbcode//caffe2:torch and it succeeded

Rollback Plan:

Reviewed By: swolchok

Differential Revision: D78016591

Pull Request resolved: https://github.com/pytorch/pytorch/pull/158035
Approved by: https://github.com/swolchok
2025-07-15 19:52:59 +00:00
..
alerts [BE][Easy] do not install yanked types-pkg-resources in lint environment (#156462) 2025-06-20 16:00:43 +00:00
amd_build Add a stable TORCH_LIBRARY to C shim (#148124) 2025-03-11 19:12:46 +00:00
autograd [cuDNN][SDPA] cuDNN SDPA refactor/cleanup, nested tensor backward, test priority bump for sm90, sm100 (#149282) 2025-07-11 16:07:54 +00:00
bazel_tools [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
build/bazel Bump urllib3 from 2.2.2 to 2.5.0 in /tools/build/bazel (#156390) 2025-07-07 17:13:21 -07:00
build_defs [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
code_analyzer [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
code_coverage [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
config [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
coverage_plugins_package [BE] fix PYPROJECT linting errors in test/ and tools/ (#156021) 2025-06-20 06:19:05 +00:00
dynamo [dynamo] expand_hints does exc() to expand graph_break_hints (#158078) 2025-07-11 22:51:28 +00:00
flight_recorder [fr] Fix one error in analysis script when subPG world size is smaller than global size (#156156) 2025-06-17 21:17:58 +00:00
gdb Add gdb print methods support same as pytorch-lldb (#140935) 2024-11-19 01:28:30 +00:00
github [BE][CI] bump ruff to 0.9.0: string quote styles (#144569) 2025-02-24 19:56:09 +00:00
iwyu [BE][CI] bump ruff to 0.9.0: string quote styles (#144569) 2025-02-24 19:56:09 +00:00
jit Revert "Use absolute path path.resolve() -> path.absolute() (#129409)" 2025-01-04 14:17:20 +00:00
linter [BE][2/16] fix typos in torch/ (torch/_*/) (#156312) 2025-07-12 05:47:06 +00:00
lite_interpreter Move use of c10::string_view to std::string_view (#152509) 2025-06-25 01:57:49 +00:00
lldb [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
packaging [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
pyi [BE] remove duplicates in generated torch._VF.__all__ (#157365) 2025-07-01 15:43:20 +00:00
rules
rules_cc [BE] Fix incompatible-std-redefinition warning (#141630) 2024-11-27 05:06:36 +00:00
setup_helpers [build] pin setuptools>=70.1.0 for integrated bdist_wheel command (#157783) 2025-07-11 12:10:42 +00:00
shared
stats [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
test Move code out of individual token linters (#152256) 2025-06-23 18:16:33 +00:00
testing [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
__init__.py
bazel.bzl Migrate c10/macros/cmake_macros.h.in to torch/headeronly (#158035) 2025-07-15 19:52:59 +00:00
BUCK.bzl [BE] Cleanup old ExecuTorch codegen and runtime code (#154165) 2025-06-07 06:54:12 +00:00
BUCK.oss
build_libtorch.py [BE][Easy] use pathlib.Path instead of dirname / ".." / pardir (#129374) 2024-12-29 17:23:13 +00:00
build_pytorch_libs.py [CI] Add prebuild command option, set prebuild command option for CI to build flash attention (#156236) 2025-07-01 02:53:22 +00:00
build_with_debinfo.py [build] modernize build-frontend: python setup.py develop/install -> [uv ]pip install --no-build-isolation [-e ]. (#156027) 2025-07-09 11:24:27 +00:00
download_mnist.py Fix broken URLs (#152237) 2025-04-27 09:56:42 +00:00
extract_scripts.py mypy 1.16.0 (#155821) 2025-06-14 18:18:43 +00:00
gen_flatbuffers.sh
gen_vulkan_spv.py [BE][Ez]: FURB148 - remove useless enumerate calls (#145619) 2025-01-24 23:37:15 +00:00
generate_torch_version.py [BE][Easy] do not install yanked types-pkg-resources in lint environment (#156462) 2025-06-20 16:00:43 +00:00
generated_dirs.txt
git_add_generated_dirs.sh
git_reset_generated_dirs.sh
nightly_hotpatch.py [3/N] Apply py39 ruff fixes (#142115) 2024-12-11 17:50:10 +00:00
nightly.py Revert "[BE] always use uv pip if possible in pip_init.py for lintrunner init (#157199)" 2025-07-09 16:26:47 +00:00
nvcc_fix_deps.py [BE] fix typos in tools/ (#156082) 2025-06-17 19:25:50 +00:00
optional_submodules.py [BE] Make Eigen an optional dependency (#155955) 2025-06-21 03:02:02 +00:00
README.md
render_junit.py [BE][Easy] enable postponed annotations in tools (#129375) 2024-06-29 09:23:35 +00:00
substitute.py
update_masked_docs.py
vscode_settings.py [BE][Easy][5/19] enforce style for empty lines in import segments in tools/ and torchgen/ (#129756) 2024-07-17 06:44:35 +00:00

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.

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: