torch-mlir/e2e_testing/torchscript
max fe8ac57e6d This PR implements an eager mode backend for PyTorch through the torch-mlir framework. This is accomplished by overriding the `__torch_dispatch__` class method on wrapper subclass `TorchMLIRTensor(torch.Tensor)`.
Effectively, this mode works by compiling op by op as the NN is eagerly executed by PyTorch. Entailed in that compilation is building a representation of the op that can be `torch.jit.script`ed, importing using `ModuleBuilder`, and then executing (e.g., with `RefBackendLinalgOnTensorsBackend`). This mode includes a fallback to conventional PyTorch if anything in the torch-mlir compilation process fails (e.g., unsupported op).

Currently, all e2e tests pass execpt for two that involve an upstream PyTorch bug (https://github.com/pytorch/pytorch/issues/74400).

High priority next steps:

1. A compile cache in order to speed up reruns of the same NN.
2. Integration with IREE (though not in this repo).
3. Integration with `torch.distributed`.
2022-03-22 14:42:57 -07:00
..
arange.py [MLIR][TORCH] Add E2E support for torch.arange op 2021-12-27 22:45:48 +05:30
argmax.py add argmax lowering 2021-10-13 14:31:16 -04:00
backprop.py Add e2e test for aten.log_softmax_back_data op 2021-11-19 00:08:28 +05:30
basic.py [LINALG] Add decomposition of `aten.dropout` op 2022-03-22 13:14:49 +05:30
cast.py [LINALG] Add E2E support for `aten.[Bool.Tensor|Float.Tensor]` op 2022-02-14 23:09:20 +05:30
constant_alloc.py [MLIR][TORCH] Add E2E support for aten.full_like op 2022-03-04 21:58:23 +05:30
conv.py Refine static shapes for conv2d and maxpool2d 2022-01-03 11:09:23 -06:00
elementwise.py [MLIR][TORCH] Add E2E support for aten.erf op. 2022-03-09 22:22:03 +05:30
elementwise_comparison.py [LINALG] Add E2E support for `aten.[le|ge].Scalar` ops 2022-02-15 12:21:09 +05:30
histogram_binning_calibration.py Adding an e2e test for histogram binning calibration 2022-01-25 18:27:20 -05:00
index_put.py [MLIR][TORCH] Add E2E support for aten.index_put op 2022-03-16 22:02:02 +05:30
index_select.py [MLIR][TORCH] Add E2E support for aten.index_select op 2021-12-09 23:13:36 +05:30
main.py This PR implements an eager mode backend for PyTorch through the torch-mlir framework. This is accomplished by overriding the `__torch_dispatch__` class method on wrapper subclass `TorchMLIRTensor(torch.Tensor)`. 2022-03-22 14:42:57 -07:00
matmul.py Add lowering of aten.matmul op. 2021-10-26 12:45:09 -04:00
mlp.py Support aten::linear with rank 3 inputs 2021-11-18 22:15:04 +05:30
nll_loss.py Add `reduction` support to `torch.nll_loss_forward` (#624) 2022-02-28 11:01:23 -08:00
norm_like.py [TORCH][MLIR] Fix the return types of `aten.native_layer_norm`. 2022-03-17 12:08:32 +05:30
quantized_models.py Dual license the torch-mlir project. 2021-10-01 10:46:08 -07:00
reduction.py [MLIR][TORCH]Add support for integer-type inputs for sum and max op 2022-03-08 22:52:34 +05:30
reshape_like.py [LINALG] Add handling of unknown dimension in size list of `view` op (#633) 2022-03-02 13:35:01 -08:00
rng.py This PR implements an eager mode backend for PyTorch through the torch-mlir framework. This is accomplished by overriding the `__torch_dispatch__` class method on wrapper subclass `TorchMLIRTensor(torch.Tensor)`. 2022-03-22 14:42:57 -07:00
scalar.py [LINALG] Add decomposition of `aten.dropout` op 2022-03-22 13:14:49 +05:30
scalar_comparison.py [LINALG] Add E2E support for `aten.eq.int` op 2022-02-15 01:37:35 +05:30
slice_like.py Introduce new shape library design. 2022-03-15 12:41:58 -07:00
squeeze.py Introduce new shape library design. 2022-03-15 12:41:58 -07:00
table_batch_embedding.py [TBE] Add a test module for table batch embedding 2022-01-28 02:24:28 +05:30
threshold.py [tosa] Support for some ops and fix for Issue #532 (#575) 2022-02-11 12:30:02 -08:00
type_conversion.py Convert bool to float or integer type. 2022-02-07 21:22:22 +05:30
type_promotion.py Add scalar type promotion for mul and div (#454) 2021-12-03 13:51:25 -06:00
vision_models.py Add aten.hardtanh e2e support. 2022-03-02 12:28:06 -05:00
xfail_sets.py This PR implements an eager mode backend for PyTorch through the torch-mlir framework. This is accomplished by overriding the `__torch_dispatch__` class method on wrapper subclass `TorchMLIRTensor(torch.Tensor)`. 2022-03-22 14:42:57 -07:00