微軟出手改進 Chromium,內存佔用更少啟動更快

←手機掃碼閱讀     admin @ 2019-05-13 , reply:0

最近微軟向 Chromium 提交的代碼顯示,基於 Chromium 的 Web 瀏覽器(如 Google Chrome,Brave,Vivaldi,Opera 以及新的 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 的內存使用終歸是好事。





[admin ]

來源:OsChina
連結:https://www.oschina.net/news/106647/chromium-startup-faster-less-memory
微軟出手改進 Chromium,內存佔用更少啟動更快已經有20次圍觀

http://www.coctec.com/news/all/show-post-205312.html