没有合适的资源?快使用搜索试试~ 我知道了~
TurboFan TechTalk presentation.pptx
需积分: 0 0 下载量 3 浏览量
2019-12-10
20:51:07
上传
评论
收藏 368KB PPTX 举报
温馨提示
试读
61页
TurboFan 设计文档 TurboFan TechTalk presentation.pptx
资源推荐
资源详情
资源评论
TurboFan JIT Design
Ben L. Titzer
Google Munich
Google Proprietary
V8 Background
●
JavaScript has some difficult to optimize features
○
No explicit types
○
Prototype-based property lookup
○
Dynamic evaluation of code
●
V8 was the first really *fast* JavaScript VM
○
Sophisticated and efficient object layout
○
Compile-only: no interpreter
■
Quick, non-optimizing JIT (fullcode)
■
Inline caching, type feedback
■
Generational GC with low pause times
●
V8 launched with Chrome in 2008
○
Optimizing JIT (CrankShaft) launched in 2010
Google Proprietary
TurboFan Design Goals
●
Achieve best peak performance
○
Highest quality machine code
○
Within normal constraints of JIT compilation
●
Make best use of static type information
○
asm.js, latent JavaScript types, TypeScript, SoundScript proposal
●
Reduce platform-specific implementation effort
○
Better separation between front, middle, and backend of compiler
●
Improve testability
○
Prevent correctness bugs and verify optimizations activate
Google Proprietary
TurboFan Program Representation (IR)
●
NOT: Control Flow Graph (CFG)
○
Fully-specified evaluation order; e.g. pure operations like integer addition
●
INSPIRATION: Sea of Nodes
○
Relax evaluation order for most operations
○
Effect edges order stateful operations
○
Skeleton of a CFG remains
○
Why? Better redundant code elimination, more code motion
●
REALLY: “Soup” of Nodes
○
Relax Sea of Nodes control flow subgraph even further
○
Disconnected “floating control” islands offer more scheduling freedom
○
Why? Lowering of language levels, even more code motion
Google Proprietary
Do not get seasick!
3 x
+
All computations are expressed as nodes in the sea of nodes
Edges represent dependencies between computations
+
3 x
constant
parameter
addition
operator
data flow edge
剩余60页未读,继续阅读
资源评论
raojun
- 粉丝: 10
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- mc.as
- 618家具社群团购清单.xlsx
- Javascript的鼠标手势
- hdmi in视频采集,输出到hdmi out, 支持HDMI指令控制,支持TFTP远程下载图片
- 批量word文件内容替换工具1.0 (批量实现多个 Word 文档文件文字替换利器).exe
- Cartoon GUI Pack 1.2.zip
- 我分享个魔兽内存修改器
- Python毕业设计基于Django的网易云数据分析可视化大屏系统的设计与实现+使用说明+全部资料(优秀项目).zip
- mp3 idv2,idv1,frame分析工具
- 鹈鹕优化算法POA MATLAB源码, 应用案例为函数极值求解以及优化svm进行分类,代码注释详细,可结合自身需求进行应用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功