写点什么

WebKit 全面支持 WebAssembly

  • 2017-06-13
  • 本文字数:627 字

    阅读完需:约 2 分钟

Apple Safari 现在全面支持 WebAssembly,包括支持在未来集成 ECMAScript 模块和多线程。

Apple 为 WebKit 增加了对 WebAssembly 的全面支持,让 Safari 浏览器可以运行使用其他编程语言编写的代码。WebKit 目前支持 x86、x64 和 ARM 64 位平台上的 WebAssembly。

在浏览器里,WebAssembly 可以被作为一个 JavaScript 对象进行访问,所以 WebKit 可以重用已有的 JavaScript 功能来支持 WebAssembly。例如,WebAssembly.Instance API 是通过浏览器支持的 ECMAScript 模块来实现的,并为支持未来的特性做好准备。另外,WebKit 对 WebAssembly 的支持是线程安全的,所以可以在未来加入多线程支持,Chrome 的发展线路图中就包括了对多线程的支持。

代码被编译成WebAssembly 时,已经进行了各种性能上的优化。WebKit 增加了额外的两层优化,分别是Build Bytecode Quickly(BBQ)和Optimized Machine-code Generator(OMG),它们都是基于 B3 JIT ,WebKit 用它调优 JavaScript。据 Apple 工程师透露,BBQ 的编译速度比OMG 快4 倍,但生成代码的运行速度只是OMG 的一半。BBQ 用于加快代码的运行速度,OMG 用于预热代码,对在执行速度方面有很高要求的部分代码进行深度优化。

WebAssembly 包含在 Safari 技术预览版 32 里。Chrome 和 Firefox 在 3 月份已经提供了对 WebAssembly 的全面支持,而 Microsoft Edge 对 WebAssembly 的全平台支持处于预览模式,包括桌面版、移动版、Xbox 和混合现实

查看英文原文: WebKit Now Has Full Support for WebAssembly

2017-06-13 19:002831
用户头像

发布了 322 篇内容, 共 158.6 次阅读, 收获喜欢 148 次。

关注

评论

发布
暂无评论
发现更多内容

居家办公竟比去公司上班还累? | 社区征文

架构精进之路

初夏征文

EMQ携手谐云,打造车联网平台联合解决方案

EMQ映云科技

车联网 物联网 IoT 兼容性测试 6月月更

web前端培训组件内部数据state的知识点分享

@零度

前端开发 state

通过Rust语言计算加速技术突破图片识别性能瓶颈​​

宇宙之一粟

rust 6月月更

flutter系列之:flutter中的flow

程序那些事

flutter 程序那些事 6月月更

预约直播 | 主流视觉算法介绍及在PAI上的应用

阿里云大数据AI技术

机器学习 视觉算法

Rxjs mergeMap 的使用场合

汪子熙

typescript 响应式编程 angular RXJS 6月月更

Elasticsearch 在地理信息空间索引的探索和演进

vivo互联网技术

elasticsearch 数据分析 数据检索

政策关注 | 加快构建数据基础制度,维护国家数据安全

青藤云安全

数据治理 数据安全

【值得收藏】Centos7 安装mysql完整操作命令

迷彩

MySQL 数据库 centos 6月月更

红包雨: Redis 和 Lua 的奇妙邂逅

勇哥java实战分享

在外企远程办公是什么体验? | 社区征文

Geek_rze78a

Java 程序员 远程办公 外企 初夏征文

大数据培训Scala 类和对象知识与案例分享

@零度

scala 大数据

对象的访问机制及其他

Jason199

js 原型链 6月月更

TopoLVM: 基于LVM的Kubernetes本地持久化方案,容量感知,动态创建PV,轻松使用本地磁盘

大卡尔

Kubernetes 云原生 6月月更

maven编译遇到"编码GBK的不可映射字符"警告的处理

程序员欣宸

Java maven 6月月更

TDengine 邀请函:做用技术改变世界的超级英雄,成为 TD Hero

TDengine

数据库 tdengine

Spring Boot零配置启动原理

码农参上

Spring Cloud springboot

Salesforce 容器化 ISV 场景下的软件供应链安全落地实践

阿里巴巴中间件

阿里云 容器 云原生

K8S学习笔记--一起来看容器的本质

IT蜗壳-Tango

IT蜗壳教学 6月月更

我大抵是卷上瘾了,横竖睡不着!竟让一个Bug,搞我两次!

小傅哥

小傅哥 异常 bug 连接池 面试问题

华为开启2022全球校园AI算法精英大赛 百万奖金等你来挑战算法极限

科技汇

Future & CompletionService

Ayue、

多线程 Future接口

IIS 部署静态网站和 FTP 服务

乌龟哥哥

6月月更

直播电子商务应用程序开发需要什么基本功能?未来发展前景如何?

开源直播系统源码

软件开发 直播源码 带货直播

SpringCloud - Eureka核心源码解析

码农参上

微服务 SpringCloud Eureka 注册中心

Vue3+ElementPlus+Axios实现从后端请求数据并渲染

Python研究所

6月月更

面试突击60:什么情况会导致 MySQL 索引失效?

王磊

Java MySQL 面试

前端食堂技术周刊第 42 期:Vue 2.7 Beta、TS 4.8 Beta、React 开源奖、ECMAScript 2022

童欧巴

JavaScript typescript Vue 前端 React

基于STM32设计的蓝牙健康管理设备

DS小龙哥

6月月更

SpringBoot 3.0最低版本要求的JDK 17,这几个新特性不能不知道!

博文视点Broadview

WebKit全面支持WebAssembly_JavaScript_Abel Avram_InfoQ精选文章