Velocity 2011:现代化 Internet Explorer 的性能影响

ieblog

2011 年 6 月 24 日上午 10:43

Velocity 2011 现代化 Internet Explorer 的性能影响

为了实现 HTML5 应用程序的承诺,浏览器必须要有极好的性能。现代化 Internet Explorer 9 已经改变了网站的可能状态,并明显改善了当今用户使用的 HTML4 的性能。为了演示在近日举办的 Velocity 2011 会议上 IE9 实际性能的成果,我们发表了有关现代化 Internet Explorer 使其作为一项交互式 HTML4 Web 应用程序的演讲。

clip_image002
查看完整的 Velocity 2011 演示文稿:现代化 Internet Explorer

本实际场景是体验当今众多网站的可能性的好方法,这些网站在过去二十年利用 HTML4 基于标准的标记开发而成,并且浏览器利用完全硬件加速,因而无需使用 HTML5 重写网站。

本站点使用当今网站中相同的 HTML、CSS 以及 JavaScript 编码模式,在浏览器之间一致地工作。与此同时,本站点也显示了我们在现代化 Internet Explorer 中所采用的系统方法的性能优势。

当您与 Internet Explorer 9 中的演示文稿进行交互时,您将发现实时体验与其说是像 Web 应用程序,不如说更像本机的 Windows 应用程序。幻灯片切换平稳而流畅。您可在演示文稿章节间迅速滚动(按住键盘上的方向键)。对于您指令的响应将很少低于 100%。

Velocity 会议由 O’Reilly Media 媒体主办,并由 Steve SoudersJesse Robbins 主持,云集了整个行业的 2000 多名开发人员,以了解社区专家的最佳实践,并在如何让 Web 作为一项产业更快速的整合方面开展协作。

这是自 Internet Explorer 9 今年三月发布以来的首次 Velocity 会议,也是我们第一次与 Velocity 社区分享现代化 Internet Explorer 的性能成果。在去年的 Velocity 会议上,我们刚刚发布了第三个 IE9 平台预览版。之后我们又发布了 7 个版本,我们在一年时间所取得的性能改进让人叹为观止!

性能分析

借助 Windows Performance Toolkit,我们可以度量 Web 应用程序的运行时性能,了解它们如何使用底层硬件,并比较不同浏览器之间的性能。以下 CPU 图表显示了我们的 Velocity 2011 演示文稿要求的在 IE8 和 IE9 中绘制演示文稿并制作一帧动画的所用时间。这些结果是从问世三年之久的 戴尔Precision工作站 3.0 GHz 英特尔奔腾双核, 4GB 物理内存, NVIDIA 的GeForce 8600 GT的, 100GB 7200 RPM 驱动器, Windows 7 中得出的。体验将基于 PC 配置而略有不同,但该整体模式能够代表 Internet Explorer 9 的客户体验。

clip_image004

如您所见,IE8 需要 1.251 秒来制作演示文稿的一帧动画。该进程(以蓝色表示)始于基于 JavaScript 计时器唤醒 IE8,并处理未完成的事件。IE8的 JavaScript 解释器(以黄色表示)随后将计算每个幻灯片的下一位置,并利用这些位置信息更新 DOM。接下来,IE8 布局引擎(以绿色表示)将利用 IE8 基于 CPU 的图形系统于最终在屏幕上绘制幻灯片(以粉色表示)前在屏幕上移动幻灯片。

利用 IE9时,该结果的耗时令人震惊,仅用了 9 毫秒(即 0.009 秒,比 IE8 快了 139 倍)。您将发现 CPU 上将产生同样的运行时模式,而无论其多么接近本机速度。由于系统的内存压力更小,待处理的事件更少,因此 IE9 能够更迅速地处理未完成的事件(以蓝色表示)。全新的 Chakra JavaScript 引擎已在本机集成至 IE9,将执行本机编码以计算幻灯片的新位置,并更新 DOM(以黄色表示)。全新的 IE9 布局引擎将交互式地移动幻灯片(以绿色表示)。最后,GPU 将在屏幕(以粉色表示)上绘制内容。

感谢 Velocity Web 性能社区为我们提供了又一场愉快的会议。我们非常感激你们为改善 Web 性能所做的一切努力。社区将继续发展壮大,并与我们一起不断改变 Web,实现其潜在价值。

—Jason Weber, Internet Explorer 性能主管