torch-mlir/docs
Stella Laurenzo 74f7a0c9d6
Upstream the ONNX importer. (#2636)
This is part 1 of 2, which will also include upstreaming the FX
importer. I started with ONNX because it forces some project layout
updates and is more self contained/easier as a first step.

Deviating somewhat from the RFCs on project layout, I made the following
decisions:

* Locating the `onnx_importer.py` into `torch_mlir.extras` as Maks
already has opened up that namespace and it seemed to fit. Better to
have fewer things at that level.
* Setup the build so that the root project only contains MLIR Python and
pure Python deps (like the importers), but this can be augmented with
the `projects/` adding more depending on which features are enabled.
* The default build continues to build everything whereas in
`TORCH_MLIR_ENABLE_ONLY_MLIR_PYTHON_BINDINGS=1` mode, it builds a
`torch-mlir-core` wheel with the pure contents only.

`onnx_importer.py` and `importer_smoke_test.py` are almost verbatim
copies from SHARK-Turbine. I made some minor local alterations to adapt
to paths and generalize the way they interact with the outer project. I
expect I can copy these back to Turbine verbatim from here. I also
updated the license boilerplate (they have the same license but slightly
different project norms for the headers) but retained the correct
copyright.

Other updates:

* Added the ONNX importer unit test (which also can generate test data)
in lit, conditioned on the availability of the Python `onnx` package. In
a followup once I know everything is stable, I'll add another env var
that the CI can set to always enable this so we know conclusively if
tests pass.
* Moved the ONNX conversion readme to `docs/`.
* Renamed CMake option `TORCH_MLIR_ENABLE_ONLY_MLIR_PYTHON_BINDINGS` ->
`TORCH_MLIR_ENABLE_PYTORCH_EXTENSIONS` and inverted the sense. Made the
JitIR importer and LTC options `cmake_dependent_options` for robustness.
2023-12-12 19:02:51 -08:00
..
images [docs] Centralize all images in docs/images/ 2022-11-04 03:12:17 -07:00
importers Upstream the ONNX importer. (#2636) 2023-12-12 19:02:51 -08:00
Torch-ops-E2E-implementation.md Breakup python pytorch deps (#2582) 2023-11-19 12:10:19 -08:00
abstract_interp_lib.md Breakup python pytorch deps (#2582) 2023-11-19 12:10:19 -08:00
adding_abstract_interpretation_functions.md Change dtype functions interface to take ints tuple for each tensor (#1965) 2023-03-23 11:05:39 -07:00
adding_an_e2e_test.md Update out of date docs (#2602) 2023-12-01 16:29:37 -06:00
architecture.md Breakup python pytorch deps (#2582) 2023-11-19 12:10:19 -08:00
code_owners.md Add Sean Silva to code owners as emeritus. 2023-08-20 18:06:07 -07:00
development.md Update out of date docs (#2602) 2023-12-01 16:29:37 -06:00
long_term_roadmap.md Update long_term_roadmap.md 2023-03-27 12:34:07 -07:00
ltc_backend.md Breakup python pytorch deps (#2582) 2023-11-19 12:10:19 -08:00
ltc_examples.md Fix LTC lib_torch_mlir_ltc.so import error (#1283) 2022-08-25 18:25:01 -04:00