pytorch/tools
Hong Xu b335f3910f Remove redundant MSVC_Z7_OVERRIDE processing and combine "/EHa" flag setup (#23455)
Summary:
- MSVC_Z7_OVERRIDE has already handled in CMakeLists.txt. No need to process it for once more in the Python scripts.
- Option MSVC_Z7_OVERRIDE should be visible to the user only if MSVC is used.
- Move the setting of "/EHa" flag to CMakeLists.txt, where other MSVC-specific flags are processed. This also further prepares the removal of redundant cflags setup in Python build scripts.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/23455

Differential Revision: D16542274

Pulled By: ezyang

fbshipit-source-id: 4d3b8b07161478bbba8a21feb6ea24c9024e21ac
2019-07-29 08:08:47 -07:00
..
amd_build hipify: do not overwrite files that stay the same (#23112) 2019-07-21 22:00:53 -07:00
autograd Implement tensor.set_names_, tensor.names setter 2019-07-26 08:50:49 -07:00
cwrap Fixed deprecated use of yaml.load 2019-07-22 13:25:27 -07:00
docker
jit Implement named inference rule for torch.sum 2019-07-26 08:50:40 -07:00
nnwrap Turn on F401: Unused import warning. (#18598) 2019-03-30 09:01:17 -07:00
pyi Stubs for torch.nn (#19089) 2019-07-01 09:50:17 -07:00
setup_helpers Remove redundant MSVC_Z7_OVERRIDE processing and combine "/EHa" flag setup (#23455) 2019-07-29 08:08:47 -07:00
shared Turn on F401: Unused import warning. (#18598) 2019-03-30 09:01:17 -07:00
__init__.py
aten_mirror.sh Restore TBB module (#20454) 2019-05-28 02:49:36 -07:00
build_libtorch.py Specify build dir as a global variable in BUILD_DIR in the build system. 2019-07-25 07:19:47 -07:00
build_pytorch_libs.py When building extensions, honor options set in CMake. (#21653) 2019-06-14 08:13:40 -07:00
build_variables.py Add early returns to JIT (#19179) 2019-07-26 16:42:43 -07:00
clang_format.py clang-format by line (#21531) 2019-06-07 13:42:44 -07:00
clang_tidy.py Allow for single-line deletions in clang_tidy.py (#19082) 2019-04-17 17:02:30 -07:00
download_mnist.py Turn on F401: Unused import warning. (#18598) 2019-03-30 09:01:17 -07:00
flake8_hook.py Add missing shebangs to Python files with executable permissions. 2019-06-06 10:53:40 -07:00
generated_dirs.txt
git-pre-commit Remove THD (#22065) 2019-06-25 12:19:13 -07:00
git_add_generated_dirs.sh
git_reset_generated_dirs.sh
pytorch.version Convert all tabs to spaces, add CI. (#18959) 2019-04-09 08:12:26 -07:00
README.md
run-clang-tidy-in-ci.sh PyTorch export to ONNX Opset 7 and 8 - Cont (#22421) 2019-07-12 14:52:48 -07: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.

Legacy infrastructure (we should kill this):

  • nnwrap - Generates the THNN/THCUNN wrappers which make legacy functionality available. (TODO: What exactly does this implement?)
  • cwrap - Implementation of legacy code generation for THNN/THCUNN. This is used by nnwrap.

Build system pieces:

  • setup_helpers - Helper code for searching for third-party dependencies on the user system.
  • 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 - Same as above, but for Windows.
  • 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: