5 年了,使用火狐瀏覽器導(dǎo)致CPU異常高負(fù)載的罪魁禍?zhǔn)捉K于找到了!

自 2018 年 11 月以來,一些用戶發(fā)現(xiàn),Windows Defender 中的一個未知錯誤會使得用戶在打開 Firefox 火狐瀏覽器時,CPU 占用率會異常提高進而影響瀏覽器性能。多年來,此問題該一直在影響用戶,并且不僅限于 Windows 10。

今年 3 月,Mozilla 工程師 Yannis Juglaret 在 Bugzilla 發(fā)帖表示(Bugzilla是由開發(fā)網(wǎng)絡(luò)瀏覽器Firefox的Mozilla基金會運營的錯誤管理系統(tǒng)),他們已經(jīng)確認(rèn)了導(dǎo)致此問題的具體原因,并且將其細節(jié)反饋給了微軟 Windows 團隊,等待其修復(fù)。

該工程師表示,當(dāng)前版本的 MsMpEng.exe 中存在嚴(yán)重的性能問題。這個性能問題使得在 Windows 系統(tǒng)中,當(dāng) Windows Defender 的實時保護功能激活時(不合理高占用計算在 MsMpEng.exe 進程中執(zhí)行),對 VirtualProtect(以及其他事物)的調(diào)用變得不合理。而在標(biāo)準(zhǔn)的 Firefox 配置中,對 VirtualProtect 的調(diào)用數(shù)量目前非常高,這就解釋了 打開 Firefox 后出現(xiàn)的 CPU 高使用率問題。

由于對 VirtualProtect 的調(diào)用大多數(shù)是 JIT 引擎引起的,隨后,Yannis Juglaret 嘗試在 Firefox 中禁用 JIT 引擎以解決不合理的 CPU 占用問題,禁用 JIT 引擎之后,他還進行了性能測試。

Yannis Juglaret 的測試結(jié)果顯示,在“正常”情況下,打開火狐瀏覽器,系統(tǒng)的 CPU 就會出現(xiàn)嚴(yán)重且不合理的資源占用(如下表。圖中紅色區(qū)域代表有大量的CPU高負(fù)載情況),這極大影響了應(yīng)用本身的運行效率。

而在禁用 JIT 引擎之后,CPU 高占用的紅色區(qū)域大幅減少。由此可見這個解決思路是正確的, MsMpEng.exe 的問題很大。

(總 CPU 時間從 16 秒減少到 6 秒;CPU 時間減少了 63%))

該工程師和微軟溝通后,目前,微軟表示已經(jīng)發(fā)布了一個補丁,將在即將到來的 3 月發(fā)布(mpengine.dll 引擎版本1.1.20200.2/3)中嘗試緩解這個問題,這意味著用戶將在接下來的4周內(nèi)逐漸獲得修復(fù)。微軟表示,修復(fù)之后,MsMpEng.exe 的 CPU 使用率將減少多達 75%。

5年了,這個困擾火狐瀏覽器用戶多年的老問題,如今終于有了解決辦法。

微軟 Windows 團隊,你可長點心吧。

標(biāo)題:5 年了,使用火狐瀏覽器導(dǎo)致CPU異常高負(fù)載的罪魁禍?zhǔn)捉K于找到了!

地址:http://www.17168cn.cn/gzdm/12816.html