pytorch/torch/csrc/jit
2024-04-23 01:35:07 +00:00
..
api [export] improve FakeTensor serialization (#119531) 2024-02-12 19:28:08 +00:00
backends
codegen [2/N] Replace std::tie with structural binding (#119879) 2024-02-15 02:56:34 +00:00
cuda
docs
frontend rename ort to maia (#123265) 2024-04-23 00:33:25 +00:00
ir [jit] ClassType hashing: hash on compilation_unit as well (#121928) 2024-03-14 23:16:08 +00:00
mobile Fix ouput typos (#120870) 2024-02-29 08:29:14 +00:00
operator_upgraders Fix buck build after recent clang-tidy updates (#116669) 2024-01-03 09:02:58 +00:00
passes fix typo in 4 files (#123529) 2024-04-09 23:37:35 +00:00
python Support torchbind op dispatch in python (#123367) 2024-04-19 17:17:27 +00:00
runtime Add missing aten::sort.any op for assistant lm models (#123982) 2024-04-23 01:35:07 +00:00
serialization Add symbolic_opset19.py and symbolic_opset20.py to support opset 19/20, extend opset 18 support (#118828) 2024-03-22 18:01:33 +00:00
tensorexpr [2/N] Replace std::tie with structural binding (#119879) 2024-02-15 02:56:34 +00:00
testing
jit_log.cpp
jit_log.h
jit_opt_limit.cpp
jit_opt_limit.h
JIT-AUTOCAST.md
OVERVIEW.md [JIT] python IR bindings: consolidate tests, add short docs in OVERVIEW.md (#118319) 2024-01-27 03:11:51 +00:00
README.md
resource_guard.h [Reland] [13/N] Enable clang-tidy on headers of torch/csrc (#117088) 2024-01-10 23:58:04 +00:00

PyTorch JIT

This folder contains (most of) the C++ code for the PyTorch JIT, a language and compiler stack for executing PyTorch models portably and efficiently. To learn more about the JIT from a user perspective, please consult our reference documentation and tutorials.

A brief summary of the source tree:

  • OVERVIEW.md: High-level technical overview of the JIT.
  • frontend/: Taking PyTorch modules in Python and translating them into the JIT IR.
  • ir/: Core IR abstractions.
  • runtime/: Interpreter, graph execution, and JIT operators.
  • codegen/: Generating efficient, hardware-specific code for JIT subgraphs.
  • serialization/: Saving and loading modules.
  • api/: Any user-facing C++ or Python interfaces.
  • python/: Binding stuff into Python or accessing information from the Python environment.
  • testing/: Utilities and helpers for testing.
  • mobile/: Mobile-specific implementations of runtime components.
  • passes/: IR-to-IR passes, generally for optimization and lowering.
  • generated/: This folder is generated by the PyTorch build, and contains bindings for native PyTorch operators into the JIT.

Refer to each folder for more in-depth documentation.

Other relevant parts of the codebase not contained here:

  • aten/src/ATen/core: contains JIT code re-used by other elements of the runtime system (eager, mobile, etc.)