WasmEdge: Porting OpenVINO on multiple platforms for the WASI-NN proposal in WasmEdge

Piao, Ran
2 min readNov 27, 2022

--

I am Ran, a student of Cyberspace Security. My project community is WasmEdge, and my mentor is Hung-Ying Tai. I am very grateful to my mentor and my community for their guidance and help. I have learned a lot from them.

I first submitted the application for this project two days before the event ended. I just heard about this project two weeks ago and I was very interested in it, although I had only heard about webassembly at that time. So I applied for this project with a try mentality. I made adequate preparation for the preparatory work, browsed the WasmEdge documents and tried the pretest of other projects. It was a great honor to be selected by WasmEdge and to be their mentee.

About my project, the OpenVINO official release supports various platforms. WasmEdge supports the WASI-NN proposal with OpenVINO backend now, but only in Ubuntu 20.04. In this project, we want to porting and integrating the OpenVINO installation for the multiple platforms such as MacOS, Windows, or manylinux with the WasmEdge WASI-NN plugin.

Picture 1. Plugin for WasmEdge

My job and my difficulties

My main task was to solve the problem of environment configuration, exposure to various operating system platforms, and to install and deploy WasmEdge plug-ins on them and add CI, scripts for them. OpenVINO has excellent cross-platform support, especially in the major platforms, windows, linux and macos all have general distribution binaries, some even support the arm architecture. They integrate WasmEdge very easily on linux, and the difficulty I encountered was mainly the adaptation on windows. At present, the plug-in function is in the process of solving the relevant work, so the plug-in integration can not be carried out directly at present, I will participate in the completion of them.

I was very confused about windows development at first. I rarely used windows to write code, so there were always problems with windows development. And it took me a long time to do that. But later in development, I learned a few ways to debug WasmEdge on windows.

Next Step

Now, WasmEdge with OpenVINO is now running on common linux distributions and macos 11 and 12, but there are still some problems on windows, such as the host function is not perfect, WasmEdge’s plugins on windows are not stable at the moment, the next step is to fix these problems (fix OpenVINO plugins as well as other plugins). These could be another interesting parts of the work.

WasmEdge community is really a very positive community. Everyone is very enthusiastic about WasmEdge. I believe that WasmEdge will get better and better in the future, and I will continue to participate in it.

Unlisted

--

--