Wasmtime 1.0 发布,官方曾透露高性能的秘密

2022 年 9 月 25 日 InfoQ

作者 | 闫园园

美东时间 9 月 20 日,Bytecode Alliance 宣布经过三年开发,正式迎来 Wasmtime 1.0 版本。Wasmtime 是创建在编译器 Cranelift 之上的 WebAssembly Runtime。Wasmtime 利用 Rust 编程语言,完全开源并符合 WASI。Wasmtime 还支持与 C/C++、Python、.NET、Go 等语言集成,同时运行在 Windows/Linux/macOS 等平台上。

Bytecode Alliance 是一个推动 WebAssembly 标准化的组织,该组织正在推动标准化的 WASI(WebAssembly System Interface),使 WebAssembly 能够安全地访问文件、网络和内存等系统资源。

Wasmtime 1.0 被 Bytecode Alliance 总结为“快速、安全和生产就绪”,v1.0 公告中指出:

事实上,我们在一年多以前就可以称 Wasmtime 为生产就绪。但我们并不想只发布任何 WebAssembly 引擎。我们希望有一个超级快速和超级安全的 WebAssembly 引擎。我们希望当我们推荐人们选择 Wasmtime 时,能够感到非常有信心。 


  因此,为了确保它为你们所有人做好生产准备,我们字节码联盟的一些人在过去一年里一直在生产中运行 Wasmtime。而 Wasmtime 在这些生产环境中表现出色,提供了一个稳定的平台,同时也给我们带来了安全和速度上的胜利。

目前,Shopify、Fastly、微软等公司已经在生产环境中使用了 Wasmtime 半年多到一年多的时间不等。其中,Wasmtime 为 Shopify 带来了约 50% 的性能提升;Fastly 从一个 WebAssembly 引擎切换到 Wasmtime 后,每秒钟的请求数也增加了 163% ,且其他几个公司在使用 Wasmtime 时也同样看到了可观的收益。

高性能的秘密

在正式公告发布前,Bytecode Alliance 就曾发布文章,介绍 Wasmtime 1.0 所应用的加速技术。具体来看,Bytecode Alliance 通过加速编译器和 Runtime 的各项工作,大幅增加了 Wasmtime 的整体执行速度。

其中实例化 Wasm 模块的速度,则是加速的关键之一。官方提到,他们在过去一年间,针对这项工作进行了大量的优化,将模块实例化从毫秒等级加速至微秒等级,在实际的 SpiderMonkey.wasm 案例中,实例化时间从原本的 2 毫秒缩减成 5 微秒,快了 400 倍。

同时,官方针对 Cranelift 也进行了性能改进,最重要的工作是大幅改造托管器分配器 regalloc2。Regalloc2 应用了更高端的算法,来决定托管器分配值的方法,提升了程序性能。在导入 regalloc2 后,SpiderMonkey.wasm 的执行时性能提升约 5%。

Bytecode Alliance 表示,如果 WebAssembly 想要成功,就需要加速执行的工具,这样它才能够与原生程序进行竞争。“我们将继续朝着这个目标努力。”

GitHub 地址:

https://github.com/bytecodealliance/wasmtime/releases/tag/v1.0.0

参考链接:

https://www.phoronix.com/news/Wasmtime-1.0-Released

https://www.ithome.com.tw/news/152999

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐

钉钉总裁称非常讨厌红点和 DING 消息;Mozilla 控诉苹果、谷歌和微软锁定浏览器;特斯拉上海工人薪酬曝光:到手七八千|Q 资讯

接手了一座年收入 2000 万美元的代码“屎山”,我到底是该重写还是该跳槽?

从一线研发到公司创始人,基础软件创业者迷雾中与市场赛跑

Azure CTO 呼吁不要使用 C/C++ 启动新项目,C++ 之父回应:你们这些高管就爱喜新厌旧

登录查看更多
0

相关内容

《支持多域作战的美陆军统一网络计划》美国陆军18页报告
美陆军2022最新发布《美国陆军数据计划》,17页报告
专知会员服务
155+阅读 · 2022年10月17日
何恺明组新论文:只用ViT做主干也可以做好目标检测
专知会员服务
29+阅读 · 2022年4月2日
【AI与工业】2022最新发布《工业物联网AI框架》59页PDF
专知会员服务
142+阅读 · 2022年3月30日
专知会员服务
47+阅读 · 2021年4月18日
【硬核书】Linux核心编程|Linux Kernel Programming,741页pdf
专知会员服务
78+阅读 · 2021年3月26日
【2020新书】C语言编程傻瓜式入门,第二版,464页pdf
专知会员服务
61+阅读 · 2020年10月15日
Docker 发布 WebAssembly 支持工具预览版
InfoQ
0+阅读 · 2022年10月26日
Go 宣布新的漏洞管理支持方案
InfoQ
0+阅读 · 2022年9月15日
Istio 1.15.0 正式发布,支持 arm64 架构
InfoQ
0+阅读 · 2022年9月2日
W3C 发布 WebAssembly 2.0 工作草案
InfoQ
0+阅读 · 2022年4月24日
CNCF 2021 年度调查报告发布
AI前线
0+阅读 · 2022年2月15日
2022年,Rust 将成为 Linux 内核第二官方语言?
AI前线
0+阅读 · 2021年12月20日
国家自然科学基金
2+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年11月25日
Arxiv
14+阅读 · 2022年5月14日
Arxiv
24+阅读 · 2020年3月11日
VIP会员
相关VIP内容
相关基金
国家自然科学基金
2+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员