pytorch/torch/csrc/lazy/python
Shunting Zhang a9d43d6f6e Dynamo+LTC: add pybind to set force fallback config and use that in test_extract_compiled_graph.py (#75292)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/75292

- Follow the convention in [this doc](https://docs.google.com/document/d/1Vi96ITGoK7BW01ZEccexs4pvCQKF4_LdV8w7TfIWPvM/edit) to setup config for ltc force fallback ops.
- Pybinds are added to read/set the config.
- Use the added pybinds in the unit test which needs to force fallbacks.

Test Plan:
```
pytest test/lazy/test_extract_compiled_graph.py
```

Reviewed By: malfet

Differential Revision: D35417678

Pulled By: shunting314

fbshipit-source-id: 1e05b8c831174872d70257a0ddd958863d6ca80d
(cherry picked from commit 9366bde7ef20837dcf03b7d8e18f9017a58c80fa)
2022-04-07 02:39:20 +00:00
..
init.cpp Dynamo+LTC: add pybind to set force fallback config and use that in test_extract_compiled_graph.py (#75292) 2022-04-07 02:39:20 +00:00
init.h
python_util.cpp
python_util.h
README.md

Lazy Tensor Python Code

Lazy Tensor Core is part of libtorch, which can not depend on python.

Parts of lazy tensor core use python for 2 purposes A) py bindings let python programs call into lazy tensor c++ code B) lazy tensor core calls into python to use it (e.g. for grabbing stack traces)

(A) is trivial since the python bindings only depend on libtorch; (B) requires making libtorch_python register a function with libtorch if loaded, and having a default (no-op) function otherwise. Any functionality that strictly needs to depend on python should be part of the 'python' folder.