Skip to content

WASI-NN milestones #1573

@tonibofarull

Description

@tonibofarull

Motivation

We'd like to implement WASI-NN into WebAssembly runtime so that all WASM applications that we develop have a standard API to manage neural networks.

Milestones

MVP milestone

Neural networks can be exported into multiple formats, have multiple tensor types, and run in multiple types of targets. We define the Minimum Viable Product (MVP) as a solution that implements all the functionalities for a particular format, tensor type, and target.

For instance, the standard specifies the following formats,

enum graph-encoding {
    openvino,
    onnx,
    tensorflow,
    pytorch
}

targets,

enum execution-target {
    cpu,
    gpu,
    tpu
}

and tensor types,

enum tensor-type {
    fp16,
    fp32,
    up8,
    ip32
}

Check here for more information.

For the MVP, we have selected:

  • TensorFlow
  • CPU
  • FP32

The criteria are to select the most usage of each of the options. In the case of TensorFlow, the developer survey of Stack Overflow.

GPU capability

Add compatibility of execution-target = gpu for Tensorflow.

Support of all tensor types

Support all tensor types for Tensorflow.

What’s Next

  • Add support for other frameworks and devices.
  • Frequently check WASI-NN to keep the interface and new features up to date.

Metadata

Metadata

Assignees

No one assigned

    Labels

    doneThe feature/issue was implemented/resolvednew featureDetermine if this Issue request a new feature or this PR introduces a new feature.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions