[Marvell BYOC]: Marvell AI Accelerator Integration - Phase 2 #16915
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Background:
This PR adds Marvell software runtime support as outlined in the pre-RFC here (refer to Phasing section, Phase 2): https://discuss.tvm.apache.org/t/prerfc-byoc-integrating-marvell-ml-ai-accelerator-to-the-tvm-byoc-framework/16155
Our initial PR added basic support for partitioning and compilation (#16570).
This follow up PR integrates mrvl-tmlc (Marvell's ML compiler which generates MLIP ISA) and mrvl-mlsim which is a software simulator tool to simulate the MLIP hardware. This toolchain is hosted at our MarvellMLTools GitHub repo: https://github.com/MarvellEmbeddedProcessors/MarvellMLTools
Summary of Changes:
The mrvl-tmlc compiler is invoked during compile time to generate MLIP instructions which are embedded in the runtime. The runtime then invokes the mrvl-mlsim tool to process the input, simulate the MLIP ISA instructions and return the output to the TVM runtime.