@jeshli, @mnl: Raheel and Dominic pointed me to this thread and the discussion about ONNX runtimes: Tract and Burn. I thought it might be useful for the community to share my findings:
- I managed to get the upstream Tract working on IC without any changes (i.e. without forking).
- The approach relies on the wasi2ic community project.
- I first compile Tract to
wasm32-wasi
and then usewasi2ic
to convert the binary towasm32-unknown-unknown
that is compatible with the IC. - Example usage: code
- Build steps of the example: code
Did anyone manage to compile Burn to IC? I would be curious to compare its performance with Tract.