Wasmi 2.0: самый быстрый портативный Wasm-интерпретатор
Engineering of the fastest WebAssembly interpreters
После восьми месяцев работы вышла версия 2.0 интерпретатора Wasmi, которая в среднем в 2,2 раза быстрее предыдущей. В статье подробно разбираются технические решения, обеспечившие такой прирост: четыре режима диспетчеризации инструкций, включая прямой и косвенный threaded code, аккумуляторные регистры и оптимизированные сигнатуры обработчиков. Приводятся результаты бенчмарков на разных процессорах, показывающие, что Wasmi 2.0 входит в число самых быстрых портативных интерпретаторов WebAssembly.
Можно с уверенностью сказать, что Wasmi 2.0 явно относится к категории самых быстрых портативных Wasm-интерпретаторов.
- josephg
Очень круто!
Как производительность этого wasm-интерпретатора соотносится с нативным исполнением? Мы уже близко?
И вы сравниваете с wasmtime.pulley, который является их оптимизирующим интерпретатором. Как он выглядит в сравнении с компилятором cranelift из wasmtime?
- herobird
Привет, я автор, готов ответить на все ваши вопросы! (извините за задержку, пост со второй попытки)