pytorch/scripts
Xuehai Pan 2293fe1024 [BE][Easy] use pathlib.Path instead of dirname / ".." / pardir (#129374)
Changes by apply order:

1. Replace all `".."` and `os.pardir` usage with `os.path.dirname(...)`.
2. Replace nested `os.path.dirname(os.path.dirname(...))` call with `str(Path(...).parent.parent)`.
3. Reorder `.absolute()` ~/ `.resolve()`~ and `.parent`: always resolve the path first.

    `.parent{...}.absolute()` -> `.absolute().parent{...}`

4. Replace chained `.parent x N` with `.parents[${N - 1}]`: the code is easier to read (see 5.)

    `.parent.parent.parent.parent` -> `.parents[3]`

5. ~Replace `.parents[${N - 1}]` with `.parents[${N} - 1]`: the code is easier to read and does not introduce any runtime overhead.~

    ~`.parents[3]` -> `.parents[4 - 1]`~

6. ~Replace `.parents[2 - 1]` with `.parent.parent`: because the code is shorter and easier to read.~

Pull Request resolved: https://github.com/pytorch/pytorch/pull/129374
Approved by: https://github.com/justinchuby, https://github.com/malfet
2024-12-21 22:08:01 +00:00
..
analysis [BE][Easy][1/19] enforce style for empty lines in import segments (#129752) 2024-07-16 00:42:56 +00:00
compile_tests [BE][Easy] use pathlib.Path instead of dirname / ".." / pardir (#129374) 2024-12-21 22:08:01 +00:00
export [export] Add test to enforce consistency between synced thrift and generated thrift from schema.py (#141989) 2024-12-06 18:42:20 +00:00
fbcode-dev-setup
jit [BE][Easy][1/19] enforce style for empty lines in import segments (#129752) 2024-07-16 00:42:56 +00:00
onnx [ONNX] Add sanity check in CI for onnxbench (#110178) 2023-12-02 00:17:07 +00:00
release Fix script name in the comments (#135507) 2024-09-13 19:59:47 +00:00
release_notes [BE] Format uncategorized Python files with ruff format (#132576) 2024-08-04 17:13:31 +00:00
add_apache_header.sh
apache_header.txt
apache_python.txt
build_android_gradle.sh [EZ][BE] Move build_android_gradle.sh (#117795) 2024-01-19 02:14:28 +00:00
build_android.sh [BE][CMake] Use FindPython module (#124613) 2024-05-29 13:17:35 +00:00
build_host_protoc.sh
build_ios.sh [BE][CMake] Use FindPython module (#124613) 2024-05-29 13:17:35 +00:00
build_local.sh
build_mobile.sh [BE][CMake] Use FindPython module (#124613) 2024-05-29 13:17:35 +00:00
build_pytorch_android.sh
build_raspbian.sh
build_tegra_x1.sh [1/2] Remove caffe2 db and distributed from build system (#125092) 2024-05-04 06:48:46 +00:00
build_tizen.sh [1/2] Remove caffe2 db and distributed from build system (#125092) 2024-05-04 06:48:46 +00:00
build_windows.bat [CMake] Remove BUILDING_WITH_TORCH_LIBS (#134434) 2024-08-27 01:48:21 +00:00
diagnose_protobuf.py [BE][Easy][1/19] enforce style for empty lines in import segments (#129752) 2024-07-16 00:42:56 +00:00
get_python_cmake_flags.py [BE][Easy][1/19] enforce style for empty lines in import segments (#129752) 2024-07-16 00:42:56 +00:00
install_triton_wheel.sh Update triton wheel install script with new versioning (#141497) 2024-11-25 19:09:55 +00:00
proto.ps1 [buck2][win] fix caffe2 protobuf_rule (#115954) 2023-12-18 21:41:10 +00:00
read_conda_versions.sh
README.md
remove_apache_header.sh
temp.sh
xcode_build.rb Update XNNPACK Version (#139913) 2024-11-18 18:16:31 +00:00

This directory contains the useful tools.

build_android.sh

This script is to build PyTorch/Caffe2 library for Android. Take the following steps to start the build:

  • set ANDROID_NDK to the location of ndk
export ANDROID_NDK=YOUR_NDK_PATH
  • run build_android.sh
#in your PyTorch root directory
bash scripts/build_android.sh

If succeeded, the libraries and headers would be generated to build_android/install directory. You can then copy these files from build_android/install to your Android project for further usage.

You can also override the cmake flags via command line, e.g., following command will also compile the executable binary files:

bash scripts/build_android.sh -DBUILD_BINARY=ON

build_ios.sh

This script is to build PyTorch/Caffe2 library for iOS, and can only be performed on macOS. Take the following steps to start the build:

  • Install Xcode from App Store, and configure "Command Line Tools" properly on Xcode.
  • Install the dependencies:
brew install cmake automake libtool
  • run build_ios.sh
#in your PyTorch root directory
bash scripts/build_ios.sh

If succeeded, the libraries and headers would be generated to build_ios/install directory. You can then copy these files to your Xcode project for further usage.