Google disables Windows 10 RAM reduction in Chrome
Google disables Windows 10
RAM reduction in Chrome
The cost to CPU performance
of a Windows 10 memory-saving feature is too great to keep, say Chromium
developers.
By Liam Tung | July
15, 2020 -- 12:43 GMT (05:43 PDT) | Topic: Enterprise Software
Google has decided to disable
a feature in Windows 10 version 2004 that allowed Chrome and Microsoft Edge
browsers to use a lot less RAM.
Windows 10 gave Win32 apps
including Chrome access to a 'segment heap' API to allow apps to reduce memory
usage, but as Techdows spotted, Chromium engineers have decided for
now to turn off the feature by default in Chrome 85 after discovering it has a
negative impact on CPU usage. Chrome 85 should reach stable status in
August.
Microsoft boasted last month
that Edge on the May 2020 Update was using up to 27% less memory than without
segment heap. Chromium developers adopted it for Chrome on Windows 10 2004
and later.
The CPU issue was discovered by an Intel engineer who found that when
Chrome used segment heap, it led to significant performance regression in
benchmarks on a PC with an Intel Core i9-9900K processor. Depending on the
benchmark, CPU performance was degraded between 10% to 13%, Google found.
Microsoft has defended the
trade-off between memory and CPU but conceded it can be implemented better to
reduce the impact on CPU performance.
"It is common practice
to trade one resource for another. More often it's increased memory usage for
reduced CPU usage. In this case it's increased CPU usage for dramatically
reduced memory usage, or more accurately commit," wrote a Microsoft
employee.
Reducing the impact on CPU
would require "significant changes across the entire browser
codebase", and Microsoft's Windows team is investigating whether it can
improve the performance of segment heap.
"In the short term this
is a good trade-off of one resource for another as memory/commit usage is a
significant pain point for browser users," argued the Microsoft
employee.
However, Chromium developers
want to see more evidence about the possible impact of Chrome using segment
heap.
"Although I have heard
encouraging things about memory savings from lab tests I don't see any way for
us to leave this enabled until we have clean telemetry data and lab tests on
20H1, neither of which will be happening in time for M85," wrote Chromium
member Bruce Dawson.
"So, the plan is to
disable this for M85 (thus giving us another telemetry datapoint) and
reconsider in the future.
"The CPU cost (10%
slowdown on Speedometer 2.0, 13% increase in CPU/power consumption) is too
great for us to keep."
Comments
Post a Comment