torch-mlir/frontends/pytorch/test/ivalue_import
Sean Silva 179105ca3e Add basic MLP's to the e2e curriculum.
These tests pass on the reference backend.

- Add aten.linear op + shape xfer function + ATen->Linalg lowering.
 - Note: this needs to be more automated, and needs to cover more cases.
 - Current not implemented caveats:
  - size-1 broadcasting for bias vector (either static-size-1 or ? case)
  - higher-rank aten.linear ops (not produced by torch.nn.Linear though)
  - type promotion (still don't even know the exact rules here)
- Add folder for torch.derefine op. Now the inliner can clean it up as
  it inlines. (call boundaries are a main place we need to insert
  torch.derefine) This is brittle -- the other important case is control
  flow which will need to be handled via an extension to
  RefineTypes.cpp (as will more robust call handling). River has an
  in-flight patch to update it to the new dataflow framework so I didn't
  want to do anything intrusive here.
    - Also adjust torch.derefine syntax to use the keyword `to` instead of
      `->`, as most type-only, cast-like ops do.
2021-04-27 12:18:54 -07:00
..
annotations Add end-to-end testing framework for TorchScript. 2021-04-20 12:00:35 -07:00
README.md Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
functions-that-call-methods.py Properly import the entire torch::jit::CompilationUnit 2021-03-01 12:08:01 -08:00
functions.py Properly import the entire torch::jit::CompilationUnit 2021-03-01 12:08:01 -08:00
list.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
methods-derefine.py Add basic MLP's to the e2e curriculum. 2021-04-27 12:18:54 -07:00
methods-locations.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
methods.py Properly import the entire torch::jit::CompilationUnit 2021-03-01 12:08:01 -08:00
object-identity-error-submodule.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
object-identity-error.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
object-identity-torch-bug.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
object-identity.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
prim.py Properly import the entire torch::jit::CompilationUnit 2021-03-01 12:08:01 -08:00
primitives.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
strings.py [torch] Add import support for IValue string Type(s) (#179) 2021-03-04 13:08:50 -08:00
submodules-select.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
submodules.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
tensors.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00
tuple.py Rename tests to match the code they test 2021-02-25 13:31:33 -08:00

README.md

ivalue_import

Most of the tests in this directory test importing of TorchScript torch::jit::Module's.

Modules are just one of many types of c10::IValue's and recursively contain c10::IValue's. Thus, the work of importing TorchScript modules is mainly about importing the wide variety of possible c10::IValue's, hence the name of this directory and the corresponding code in ivalue_importer.cpp that it exercises.