专题演讲嘉宾:刘文辉(知兵)

阿里巴巴高级技术专家

现任大淘宝技术部终端基础技术组工程师,负责多语言编译器/解释器Hyengine 项目。2015 年加入阿里巴巴开始虚拟机开发及相关应用落地,2017 年在手机淘宝端智能团队定制适应客户端的 Python 移植及优化,2020 年开始 Hyengine 项目,探索编译技术对 JavaScript/WebAssembly 等语言性能优化及在移动设备上的应用。

by 刘文辉(知兵)

阿里巴巴
高级技术专家

手机淘宝客户端在历史上存在过多种多样的脚本引擎,用于支持的语言包括:JavaScript/Python/WebAssembly/Lua。众多的引擎会共同面临包大小及性能相关的问题,我们是否可以提供一套方案,既能在支持业务需求的前提下,用一个引擎来支持尽可能多的语言,又能较好地兼顾包大小较小和性能优异。为了解决这个问题,我们开始了 hyengine 的探索。

hyengine 为统一移动技术所需的各种脚本语言(WebAssembly/JS/Python 等)执行引擎而生,以轻量级、高性能、多语言支持为设计和研发目标。我们首先对 WebAssembly 进行优化实践,目前已通过对 Wasm3 的 JIT 编译及 Runtime 优化,以极小包体积的代价实现了 WebAssembly 执行速度 2~3 倍的提升,未来还将通过实现自有字节码和 Runtime 增加对其他语言的支持。
演讲提纲:

1. Wasm3 解释器的性能优化剖析

  • Wasm3 引擎的编译实现

  • Wasm3 的尾调优化

  • Wasm3 的指令融合

  • 解释器的局限性

2. hyengine 的引入

  • 为什么要做 hyengine

  • hyengine 的设计及演进计划

  • hyengine 现有架构介绍

3. hyengine对 WebAssembly 的支持

  • 汇编器和反汇编器

  • WebAssembly 的 JIT 实现

  • JIT 代码和 Native 的交互实现

  • WebAssembly 的 JIT 优化器

  • 某 3D 业务场景的使用效果

3. 总结展望

  • hyengine 的阶段成果

  • hyengine 的后续计划

你将获得:

  • WebAssembly 解释器的性能优化原理

  • JIT 编译的原理

  • 汇编器、反汇编器、优化器的原理

  • WebAssembly JIT 的具体方案和实现

  • hyengine 对多语言支持的思路

交通指南

北京·四季酒店

Beijing International Convention Center
地址:北京市朝阳区亮马桥路48号
  • 微信咨询

  • 电话咨询

    联系电话:+86 15600537884

微信联系我们

小姐姐