最近微软向 Chromium 提交的代码显示,基于 Chromium 的 Web 浏览器(如 Google Chrome,Brave,VivaldiOpera 以及新的 Microsoft Edge)将拥有更快的启动速度,并使用更少的内存

微软转向 Chromium 阵营后的一个重要变化就是让更多工程师为 Chromium 带去优化和改进。而最近微软提交的代码则表明,Chrome 的启动速度和内存使用将会有很大的变化。

在现代化的设备和系统上,Chrome 大都可以快速启动,但如果尝试在稍古老一些的计算机上运行 Chrome,我们可能会明显感受到启动的延迟。

因为基于 Chromium 的浏览器在启动时需要加载 chrome.dll 和 chrome_child.dll,而在运行缓慢的笔记本电脑上加载这些文件可能需要一秒多的时间 —— 在带有双核 CPU 和固态硬盘的 Windows 8.1 笔记本电脑上分别要花费 0.48 秒和 1.13 秒读取 dll 文件。

为此,开发者猜测,改变预读参数是否会显着降低加载时​​间?在进行更改后,他们发现同一台笔记本电脑可在不到一秒的时间内加载这两个文件。

在运行缓慢的笔记本电脑(Windows 8.1,双核,HDD)上,预读 chrome.dll 需要大约 0.48 秒,预读chrome_child.dll 则需要大约 1.13 秒。

通过增加预读取图像线程的优先级和一次预读 2MB 而不是 1MB,最后发现预读 chrome.dll 需要约 0.48 秒,预读 chrome_child.dll 则下降到只花费约 0.51 秒。

就内存使用而言,微软工程师Joe Laughlin 建议对进程内预取器进行更改,这将有利于浏览器的 CPU 使用和内存使用。

更改进程内(in-proc)预取程序以将代码加载到 Image 页而不是 MapFile 页以节省 CPU 并提高内存使用率,并且在启用较大文件的 OS PreFetch 的 OS 构建上不执行任何操作。

请注意,这需要 PreFetchVirtualMemory API,因此暂不支持 Windows 7。

当然提交的代码还需要测试才能被合并进 Chromium 中,不过能减少 Chrome 的内存使用终归是好事。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。