pytorch/torch/csrc/jit
Zhengxu Chen 517aee5369 [torchscript] Add a sampled logging integration point. (#133484)
Test Plan:
test script:
```
    def test_zhxchen17(self):
        from libfb.py.pyinit import initFacebook

        initFacebook()

        class M(torch.nn.Module):
            def forward(self, x):
                return torch.add(x, x)

        def tmptmp(x, y):
            return torch.mul(x, y)

        m = M()
        n = torch.jit.script(m)
        print(n(torch.tensor(1)))
        print(torch.jit.script(tmptmp)(torch.tensor(1), torch.tensor(2)))
```

```
I0802 12:01:23.932929 4079081 init.cc:407] Logging to scuba: run __torch__.caffe2.test.export.test_export.M.forward sample rate: 1000000
```

Differential Revision: D60920867

Pull Request resolved: https://github.com/pytorch/pytorch/pull/133484
Approved by: https://github.com/davidberard98
2024-08-19 18:04:45 +00:00
..
api [torchscript] Add a sampled logging integration point. (#133484) 2024-08-19 18:04:45 +00:00
backends Add None return type to init (#132335) 2024-08-01 15:26:45 +00:00
codegen [ROCm] Add int4 support (#129710) 2024-07-09 19:49:12 +00:00
cuda [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +00:00
docs Add None return type to init (#132335) 2024-08-01 15:26:45 +00:00
frontend [torchscript] Add a sampled logging integration point. (#133484) 2024-08-19 18:04:45 +00:00
ir [7/N] Fix clang-tidy warnings in jit (#131996) 2024-07-29 01:21:18 +00:00
mobile [19/N] Fix clang-tidy warnings in jit (#133067) 2024-08-13 15:59:43 +00:00
operator_upgraders Add None return type to init (#132335) 2024-08-01 15:26:45 +00:00
passes [18/N] Fix clang-tidy warnings in jit (#132963) 2024-08-09 01:27:32 +00:00
python [sigmoid] Support custom obj deserialization. (#133463) 2024-08-15 17:58:44 +00:00
runtime [10/N] Use std::nullopt and std::make_optional (#132364) 2024-08-01 07:02:35 +00:00
serialization [sigmoid] Support custom obj deserialization. (#133463) 2024-08-15 17:58:44 +00:00
tensorexpr Workaround ASAN failure (#133623) 2024-08-16 18:48:10 +00:00
testing [1/N] Change #include <c10/util/Optional.h> to #include <optional> (#128301) 2024-07-08 07:03:53 +00:00
jit_log.cpp [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +00:00
jit_log.h [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +00:00
jit_opt_limit.cpp [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +00:00
jit_opt_limit.h [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +00:00
JIT-AUTOCAST.md
OVERVIEW.md [docs][TorchScript] document c10::AliasAnalysisKind::CONSERVATIVE (#130765) 2024-07-16 14:20:31 +00:00
README.md
resource_guard.h [8/N] Fix clang-tidy warnings in jit (#131997) 2024-07-29 12:40:42 +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.)