pytorch/torch/csrc/jit
2025-02-07 16:44:45 +00:00
..
api
backends [ODML] Make the ML feature provider thread safe (#143418) 2024-12-19 04:47:56 +00:00
codegen Cleanup CallOnce.h (#146700) 2025-02-07 16:44:45 +00:00
cuda
docs
frontend
ir
mobile
operator_upgraders
passes Enable more C++ warnings (#143355) 2024-12-27 05:46:57 +00:00
python [torch] fix builds for older pybind (#146630) 2025-02-06 21:22:00 +00:00
runtime [ROCm][Windows] Remove external linkage from an anonymous namespace (#146607) 2025-02-06 23:48:20 +00:00
serialization Enable more C++ warnings (#143355) 2024-12-27 05:46:57 +00:00
tensorexpr Fix floating point literals in IRPrinter (#142119) 2024-12-18 21:59:48 +00:00
testing
JIT-AUTOCAST.md
jit_log.cpp
jit_log.h
jit_opt_limit.cpp
jit_opt_limit.h
OVERVIEW.md
README.md
resource_guard.h

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.)