mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 12:54:11 +08:00
Summary: I need to preserve ability to HIPify out-of-place files only, so build_amd.py grows a --out-of-place-only flag. Stacked on #14757 Pull Request resolved: https://github.com/pytorch/pytorch/pull/14769 Differential Revision: D13340154 Pulled By: ezyang fbshipit-source-id: 1b855bc79e824ea94517a893236fd2c8ba4cb79d
71 lines
3.0 KiB
Markdown
71 lines
3.0 KiB
Markdown
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](autograd) - Code generation for autograd. This
|
|
includes definitions of all our derivatives.
|
|
* [jit](jit) - Code generation for JIT
|
|
* [shared](shared) - Generic infrastructure that scripts in
|
|
tools may find useful.
|
|
* [module_loader.py](shared/module_loader.py) - Makes it easier
|
|
to import arbitrary Python files in a script, without having to add
|
|
them to the PYTHONPATH first.
|
|
|
|
Legacy infrastructure (we should kill this):
|
|
|
|
* [nnwrap](nnwrap) - Generates the THNN/THCUNN wrappers which make
|
|
legacy functionality available. (TODO: What exactly does this
|
|
implement?)
|
|
* [cwrap](cwrap) - Implementation of legacy code generation for THNN/THCUNN.
|
|
This is used by nnwrap.
|
|
|
|
Build system pieces:
|
|
|
|
* [setup_helpers](setup_helpers) - Helper code for searching for
|
|
third-party dependencies on the user system.
|
|
* [build_pytorch_libs.sh](build_pytorch_libs.sh) - Script that
|
|
builds all of the constituent libraries of PyTorch, but not the
|
|
PyTorch Python extension itself. We are working on eliminating this
|
|
script in favor of a unified cmake build.
|
|
* [build_pytorch_libs.bat](build_pytorch_libs.bat) - Same as
|
|
above, but for Windows.
|
|
* [build_libtorch.py](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:
|
|
|
|
* [clang_tidy.py](clang_tidy.py) - Script for running clang-tidy
|
|
on lines of your script which you changed.
|
|
* [git_add_generated_dirs.sh](git_add_generated_dirs.sh) and
|
|
[git_reset_generated_dirs.sh](git_reset_generated_dirs.sh) -
|
|
Use this to force add generated files to your Git index, so that you
|
|
can conveniently run diffs on them when working on code-generation.
|
|
(See also [generated_dirs.txt](generated_dirs.txt) which
|
|
specifies the list of directories with generated files.)
|
|
|
|
Important if you want to run on AMD GPU:
|
|
|
|
* [amd_build](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](amd_build/build_amd.py) - Top-level entry
|
|
point for HIPifying our codebase.
|
|
|
|
Tools which are only situationally useful:
|
|
|
|
* [aten_mirror.sh](aten_mirror.sh) - Mirroring script responsible
|
|
for keeping https://github.com/zdevito/ATen up-to-date.
|
|
* [docker](docker) - Dockerfile for running (but not developing)
|
|
PyTorch, using the official conda binary distribution. Context:
|
|
https://github.com/pytorch/pytorch/issues/1619
|
|
* [download_mnist.py](download_mnist.py) - Download the MNIST
|
|
dataset; this is necessary if you want to run the C++ API tests.
|
|
* [run-clang-tidy-in-ci.sh](run-clang-tidy-in-ci.sh) - Responsible
|
|
for checking that C++ code is clang-tidy clean in CI on Travis
|