[BYOC][CONTRIB] Vitis-AI codegen integration#6343
Conversation
mbaret
left a comment
There was a problem hiding this comment.
A general comment would be that it might be helpful if the Python-side code was more extensively documented.
|
Just as a general comment, it's useful if you can mark conversations as 'resolved' once you've made the changes so it's easy to see where conversations are still taking place. |
|
@zhiics @comaniac @anilmartha I'd like to revive this PR so we can consider merging it in. As @mbaret pointed, please mark your comments as resolved if they have been addressed. If anything is still outstanding, please make it clear what you'd like @anilmartha to change. |
|
@tmoreau89 I think we are waiting for more commits and responses from @anilmartha. I've just resolved the comments that should not be the blockers. The blockers now can be summarized as follows:
|
@tmoreau89 @comaniac We are currently working on following pieces to be added based on the comments:
We will add these pieces shortly and will tag reviewers to have a look. |
|
please also double check the merging, as i noticed a few files get removed |
comaniac
left a comment
There was a problem hiding this comment.
LGTM. Just some nits. Please fix the CI errors.
zhiics
left a comment
There was a problem hiding this comment.
just a few minor comments. Please fix the CI.
@tmoreau89, @mbaret, @jtuyls please take another look.
| namespace runtime { | ||
|
|
||
| /*! \brief The target Vitis-AI accelerator device */ | ||
| TVM_REGISTER_PASS_CONFIG_OPTION("relay.ext.vitis_ai.options.target", String); |
There was a problem hiding this comment.
I think we are kind of relying on the PASS_CONFIG too much. It's okay to keep it for now. We will need to figure out a better way to add these configure since they are not really related to passes.
mbaret
left a comment
There was a problem hiding this comment.
This is looking much better, approved.
tmoreau89
left a comment
There was a problem hiding this comment.
Thanks; nice work LGTM
|
@anilmartha please fix the CI error. Do we need to update the docker image? If that is the case, we need to bump up the image version as well. |
|
we have made some small changes to make the tests pass. |
|
Thanks everyone. This is now merged! |
* [BYOC][CONTRIB] VITIS-AI integration * Remove environment related files * Update vitis_ai.rst * Add review changes * Remove new lines and note frame in vitis_ai.rst * use sys.exit * Add condition for vitis_ai runtime exec function * remove unused graph_json * correct indentation * use code python instead of bash * Rename VITISAI.cmake to VitisAI.cmake * use relay.ext.vitis_ai.options.build_dir in comparison * Re-add deleted docker related files * Make use of PyXIR XGraph and RuntimeModule serialization & refactor flow * Fix linter errors * Fix linter errors * Address sphinx warnings * Add infertype to fix Vitis-AI annotation test * Renaming util to utils * Add Vitis-AI flag to config.cmake file * Move vitis-ai config options to compiler sources instead of runtime sources * Fix clang-format errors Co-authored-by: Anil Martha <anil.martha@xilinx.com> Co-authored-by: anilm (generated by with_the_same_user script) <anilm@xhdabidk40.xilinx.com> Co-authored-by: Jorn Tuyls <jornt@xilinx.com>
* [BYOC][CONTRIB] VITIS-AI integration * Remove environment related files * Update vitis_ai.rst * Add review changes * Remove new lines and note frame in vitis_ai.rst * use sys.exit * Add condition for vitis_ai runtime exec function * remove unused graph_json * correct indentation * use code python instead of bash * Rename VITISAI.cmake to VitisAI.cmake * use relay.ext.vitis_ai.options.build_dir in comparison * Re-add deleted docker related files * Make use of PyXIR XGraph and RuntimeModule serialization & refactor flow * Fix linter errors * Fix linter errors * Address sphinx warnings * Add infertype to fix Vitis-AI annotation test * Renaming util to utils * Add Vitis-AI flag to config.cmake file * Move vitis-ai config options to compiler sources instead of runtime sources * Fix clang-format errors Co-authored-by: Anil Martha <anil.martha@xilinx.com> Co-authored-by: anilm (generated by with_the_same_user script) <anilm@xhdabidk40.xilinx.com> Co-authored-by: Jorn Tuyls <jornt@xilinx.com>
* [BYOC][CONTRIB] VITIS-AI integration * Remove environment related files * Update vitis_ai.rst * Add review changes * Remove new lines and note frame in vitis_ai.rst * use sys.exit * Add condition for vitis_ai runtime exec function * remove unused graph_json * correct indentation * use code python instead of bash * Rename VITISAI.cmake to VitisAI.cmake * use relay.ext.vitis_ai.options.build_dir in comparison * Re-add deleted docker related files * Make use of PyXIR XGraph and RuntimeModule serialization & refactor flow * Fix linter errors * Fix linter errors * Address sphinx warnings * Add infertype to fix Vitis-AI annotation test * Renaming util to utils * Add Vitis-AI flag to config.cmake file * Move vitis-ai config options to compiler sources instead of runtime sources * Fix clang-format errors Co-authored-by: Anil Martha <anil.martha@xilinx.com> Co-authored-by: anilm (generated by with_the_same_user script) <anilm@xhdabidk40.xilinx.com> Co-authored-by: Jorn Tuyls <jornt@xilinx.com>
This PR implements the Vitis-AI codegen using the BYOC flow and enables us to offload subgraphs to FPGA DPU accelerators (cloud/edge).
Below are the features added as part of this PR
This PR depends on following Vitis-AI CI contribution PR.
The RFC for this PR can be found from here.
This work is co-authored by Jorn Tuyls jornt@xilinx.com @jtuyls, Elliott Delaye elliott@xilinx.com @edelaye and Sumit Nagpal sumitn@xilinx.com @sumitn-xilinx.