areusch opened a new pull request #6703:
URL: https://github.com/apache/incubator-tvm/pull/6703
This PR adds two Vagrantfiles:
- a µTVM base box in `tools/microtvm/base-box` intended to support general
µTVM development. it includes all the dependencies necessary to build the
Zephyr runtime and test it with attached hardware (I.e. use USB port
forwarding). This means it includes cross-compilers for RISC-V, ARM, and x86,
among others (see Zephyr SDK).
- a specialization of the base box which mounts the local `tvm` directory
using Host-VM shared folders, builds your local copy of TVM inside the VM, then
creates a poetry (Python) virtualenv containing all TVM and Zephyr
dependencies. You can use this VM to test µTVM against real hardware, for
example:
`tvm@microtvm:/Users/andrew/ws/tvm2$ TVM_LIBRARY_PATH=build-microtvm
poetry run python3 tests/micro/qemu/test_zephyr.py
--microtvm-platforms=stm32f746xx -s`
This PR also includes additional transports needed to talk to real hardware,
specifically a pySerial-based RPC transport layer plus utilities to invoke GDB
to debug e.g. runtime problems, bad operator implementations, and to help with
porting to new architectures. Because µTVM aims to be platform-agnostic, µTVM
assumes only that some shell command exists to launch GDB and connect to the
SoC's debug port. Due to this constraint, an additional RPC server is included:
`tvm.exec.microtvm_debug_shell`, which uses the event-driven RPC server to host
the debugger in a dedicated shell, so that signals can be forwarded to the
inferior GDB.
cc @tmoreau89 @tqchen @u99127 @tom-gall @liangfu @mshawcroft
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]