-
Notifications
You must be signed in to change notification settings - Fork 619
Open
Description
We are re-organizing the project into the C++ MLIR core and sub-projects implementing specific features. As a first-step, we have moved the original, conjoined python directory to projects/pt1 because it contains a conjoined set of things that are both a) hopelessly tied to PyTorch1-era APIs, and b) we would not like to disrupt the public API surface of since people use this.
Now that that first step is done, additional re-organization work can take place.
Many of these are bite-sized tasks, and help is welcome. Discuss in comments and create an issue for yourself if you're going to work on one:
- Extract the jit_ir
function_importer.hC++ code (and dependencies) to a newprojects/jit_importerdirectory that can be shared by LTC and the existingjit_irimporter which is not needed for Dynamo.- Move PyTorch build environment initialization to the
projects/level and set it up if any projects are enabled which require native PyTorch linkage. - See if we can sever the
class_annotator.hfrom thejit_importerand leave it where it is.
- Move PyTorch build environment initialization to the
- Move
base_lazy_backendandreference_lazy_backendto a newprojects/ltcdirectory- Build the _REFERENCE_LAZY_BACKEND.so Python module directory into
python_packages/_TORCH_MLIR_REFERENCE_LAZY_BACKEND.so, decoupling it from the torch-mlir namespace completely
- Build the _REFERENCE_LAZY_BACKEND.so Python module directory into
- Find a way to implement
projects/pt1/python/torch_mlir/dialects/torch/importer/jit_ir/csrc/get_registered_ops.cppwithout hard-linking against PyTorch's C++ API (i.e. derive from the YAML files, etc) and makeprojects/pt1/python/torch_mlir/dialects/torch/importer/jit_ir/build_tools/torch_ods_gen.pya standalone utility at project scope without a dependency on the built system. - Extract
projects/pt1/e2e_testingasprojects/e2e_testingand move the test suite there.- Investigate extending it for use for Dynamo tests with contributed backends
- Decide what our new testing strategy is and whether additional investment needs to be made
- Add the
projects/dynamoproject and upstream the FX importer and related tools as part of a new top-level MLIR package. - Roll forward Fall cleaning: Re-organize sources so that each target type is contained and optional. #2442 to make all MLIR backends isolated and optional.
References
glebk-cerebras and AnthonyBarbierdan-garvey
Metadata
Metadata
Assignees
Labels
No labels