Skip to content

Implement the Wasm simd proposal #1364

@Robbepop

Description

@Robbepop

This is about adding support for the simd Wasm proposal.


The simd Wasm proposal has been stabilized (Phase 5) since a long time now. Many Wasm producers already can produce simd capable Wasm binaries and it is likely to gain even more traction.

Wasmi originally did not intend to support simd and was hoping for an eventual uptake of the alternative flexible-vectors Wasm proposal. However, it seems unlikely at this point that the alternative design will see significant development in the near to medium future.

Having simd support in wasmi is the final missing Wasm proposal required to make Wasmi Wasm 2.0 compatible which would be great for advertisement. Obviously, simd users could use Wasmi. In some past tests we actually saw decreased file sizes by using simd proposal when generating Wasm, so it might also have a nice side benefit. Especially Wasm based game engines that rely on Wasmi might find simd support very useful.

Due to the massive size of the Wasm simd proposal it will be put behind a crate feature flag simd. This is important for users who do not need simd support as this will significantly impact Wasmi compile time and Wasm execution performance as well as memory usage during Wasm execution.

Subtasks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions