Edge在Windows 2020年5月10日更新中利用了Windows段堆内存的改进之后,现在Google Chrome希望采取类似的方法。根据一项新的承诺,谷歌浏览器还致力于用段堆替换旧堆,该段堆与Windows 10版本2004兼容。
Chrome浏览器消耗更少的内存
在Google Chrome上添加对分段堆的支持将“在某些机器上,在浏览器和Network Service实用程序进程中节省数百MB”。
“在chrome.exe清单中添加SegmentHeap条目将告诉Windows足够新的版本(20-04及更高版本)选择chrome.exe使用段堆而不是旧堆。”
“细节存在于错误中,但似乎Windows堆已针对吞吐量最重要的服务器工作负载进行了优化,Chromium(尤其是由于其多进程体系结构)也必须考虑内存占用。”
早些时候,微软表示Edge消耗的内存比以前少得多。多亏了Windows 10(版本2004),段堆内存的改进现在已扩展到Win32应用程序,这些应用程序有望比以前显着改善内存管理。
微软的早期内部测试表明,使用Edge浏览时,Windows 10 2004设备显示内存使用量最多减少了27%。但是,性能会根据配置和用法而有所不同。
什么是Windows段堆内存?
段堆是一种现代的堆实现,它替代了Windows 10计算机上的旧堆。段堆使开发人员可以减少总体内存消耗。“ heapType”元素与Windows 10版本2004和更高版本兼容。
“我们现在可以启用它,但这会引起构建警告。因此,启用该功能在切换到Windows 10.0.19041.0 SDK时会被阻止,该SDK目前由于某些神秘的构建失败而被阻止,” Google工程师指出。
'heapType'元素还覆盖Win32堆函数的默认堆实现。因此,在Microsoft Edge和Google Chrome之后,我们可以放心地假设将来会有更多Win32应用程序希望利用这些新添加的Windows段堆内存的改进。