-
Notifications
You must be signed in to change notification settings - Fork 537
Initial framework of an ethos-u runtime backend #3 #659
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Basic runtime targeting Corstone-300 with U55 - cross compile support with a cmake toolchain (Arm baremetal build) - support for a few models AoT -> TOSA -> Vela -> U55 hardware - dependencies on the ethos-u core driver and cmsis (submodules) Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
* There is a toolchain/linking issue mixing hard and soft float ABI which is causing the test to fail, but the structure is there and the delegate is registered. Signed-off-by: Rob Elliott <[email protected]>
* Override the default CPU in cmake which was causing a mixture of FPU and ABI flags to be passed to different compilation stages. * Updated fallback logging implementation in delegate app to fix sporadic crash Signed-off-by: Rob Elliott <[email protected]>
* uses the simple_add model to run through the AoT flow and the various debug options for looking at export. * produces a .pte file for runtime delegation on the ArmBackend for Ethos-U55 platforms Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
* export the list of offset from AoT floq * appropriately copy inputs and ouputs to/from SRAM Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
* File moved to new path in examples * fix arg handling and md5sum for setup scripts Signed-off-by: Rob Elliott <[email protected]>
✅ Deploy Preview for resplendent-gnome-14e531 canceled.
|
* Introduction of BI_INT to have a small set of pure int tests * added either vela or tosa output from compilation * Fixed tosa e2e tests to use tosa output form * unit tests currently use tosa due to missing vela dependency * vela e2e testing runs with default compile flags and emits to .pte Signed-off-by: Rob Elliott <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know since you are waiting I am submitting these as I go. Just finished looked at the AoT python code. And next looking at the runtime bits.
Signed-off-by: Rob Elliott <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
round 2 for delegate runtime
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is it. Not sure if I missed anything, I am not the biggest fan of this GH UI :\
examples/arm/ethos-u-setup/core_platform/patches/0007-Add-delegate-runner-test.patch
Show resolved
Hide resolved
examples/arm/ethos-u-setup/core_platform/patches/0007-Add-delegate-runner-test.patch
Show resolved
Hide resolved
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
Signed-off-by: Rob Elliott <[email protected]>
@digantdesai has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
|
||
#include <cstring> | ||
#include <memory> | ||
#include <vector> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's try to see if we can get away without this std::container. It will be better from size and portability point of view. Other than input/output we aren't using it anywhere else so should be easy to get rid of it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#677 FYI
@digantdesai merged this pull request in 78197a3. |
Update support tables and explanatory text.
Cleaned up ethos-u runtime flow, replaces #595
Added shell of runtime Arm Backend for Ethos-U
./backends/arm/cmake/build.sh will pull the appropriate compiler and build the ethos-u driver and delegate and produce the libraries needed to link an application in, which can run a delegated .pte with the revised vela_bin_stream form contained in these patches.
Currently supports .pte files stored in SRAM.