Closed Bug 1631293 Opened 4 years ago Closed 4 years ago

100% CPU usage when moving cursor with image overlay

Categories

(Core :: Graphics: WebRender, defect)

77 Branch
Desktop
Windows 10
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla77
Tracking Status
firefox-esr68 --- unaffected
firefox75 --- unaffected
firefox76 --- unaffected
firefox77 --- verified

People

(Reporter: alwayschangingparadigm, Assigned: nical)

References

(Regression)

Details

(Keywords: nightly-community, regression)

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:75.0) Gecko/20100101 Firefox/75.0

Steps to reproduce:

On www.spotwx.com website
For example :

https://spotwx.com/products/grib_index.php?model=hrrr_wrfprsf&lat=31.80289&lon=-87.42371&tz=America/Chicago

Move the cursor over graphs timelines of data to see the overlayed image. Keep moving the cursor over the graphs.

Actual results:

CPU usage can go as high as 100% if I continue moving the cursor over the timeline graphs with an Intel i5-5200u with Intel graphics 5500.

It does affect the responsiveness of the page and cursor. It's worse on an older CPU like a Intel Core 2 duo E6850 where it becomes very slow with AMD Radeon 7770.

Expected results:

Moving the curcor over timeline graphs should make the CPU usage go around 30 % or less with an Intel i5-5200u.

Using mozregression, this is the commit that causes the issue :

2020-04-19T16:29:01.833000: INFO : application_buildid: 20200416201406
2020-04-19T16:29:01.833000: INFO : application_changeset: aff8eef07d078b20be9c4b7d6dfb689998fb11fa
2020-04-19T16:29:01.833000: INFO : application_display_name: Firefox Nightly
2020-04-19T16:29:01.833000: INFO : application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
2020-04-19T16:29:01.833000: INFO : application_name: Firefox
2020-04-19T16:29:01.833000: INFO : application_remotingname: firefox
2020-04-19T16:29:01.833000: INFO : application_repository: https://hg.mozilla.org/integration/autoland
2020-04-19T16:29:01.833000: INFO : application_vendor: Mozilla
2020-04-19T16:29:01.833000: INFO : application_version: 77.0a1
2020-04-19T16:29:01.833000: INFO : platform_buildid: 20200416201406
2020-04-19T16:29:01.833000: INFO : platform_changeset: aff8eef07d078b20be9c4b7d6dfb689998fb11fa
2020-04-19T16:29:01.833000: INFO : platform_repository: https://hg.mozilla.org/integration/autoland
2020-04-19T16:29:01.833000: INFO : platform_version: 77.0a1
2020-04-19T16:29:33.053000: INFO : b''
2020-04-19T16:29:33.053000: INFO : b'###!!! [Child][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost'
2020-04-19T16:29:33.053000: INFO : b''
2020-04-19T16:29:33.122000: INFO : b''
2020-04-19T16:29:33.122000: INFO : b'###!!! [Child][MessageChannel::SendAndWait] Error: Channel error: cannot send/recv'
2020-04-19T16:29:33.122000: INFO : b''
2020-04-19T16:29:36.991000: INFO : Narrowed integration regression window from [eb5dd046, 65951cbe] (3 builds) to [eb5dd046, aff8eef0] (2 builds) (~1 steps left)
2020-04-19T16:29:37.012000: DEBUG : Starting merge handling...
2020-04-19T16:29:37.012000: DEBUG : Using url: https://hg.mozilla.org/integration/autoland/json-pushes?changeset=aff8eef07d078b20be9c4b7d6dfb689998fb11fa&full=1
2020-04-19T16:29:37.840000: DEBUG : Found commit message:
Bug 1587713 - Remove the late blob rasterization code. r=jrmuizel

Differential Revision: https://phabricator.services.mozilla.com/D49186

2020-04-19T16:29:37.840000: DEBUG : Did not find a branch, checking all integration branches
2020-04-19T16:29:37.840000: INFO : The bisection is done.
2020-04-19T16:29:37.855000: INFO : Stopped

OS: Unspecified → Windows 10
Summary: 100 % cpu usage → 100 % CPU usage image overlay
Summary: 100 % CPU usage image overlay → 100 % CPU usage while moving image overlay with cursor
Summary: 100 % CPU usage while moving image overlay with cursor → 100% CPU usage while moving image overlay with cursor
Hardware: Unspecified → Desktop
Summary: 100% CPU usage while moving image overlay with cursor → 100% CPU usage when moving image overlay with cursor
Has Regression Range: --- → yes
Keywords: regression
Summary: 100% CPU usage when moving image overlay with cursor → 100% CPU usage when moving cursor with image overlay
Flags: needinfo?(alwayschangingparadigm)
Flags: needinfo?(alwayschangingparadigm)

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → Graphics
Product: Firefox → Core
Regressed by: 1587713
Component: Graphics → Graphics: WebRender
Flags: needinfo?(nical.bugzilla)
Assignee: nobody → nical.bugzilla
Flags: needinfo?(nical.bugzilla)
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Regressed by: 1630212
No longer regressed by: 1587713
Pushed by nsilva@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/bef6ce79d8f6
Clear the blob image dirty rect after preparing blob rsaterization requests. r=jrmuizel
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77

== Change summary for alert #25668 (as of Tue, 21 Apr 2020 09:23:12 GMT) ==

Improvements:

13% tsvg_static windows10-64-shippable-qr opt e10s stylo 47.74 -> 41.74
3% tart linux64-shippable-qr opt e10s stylo 3.44 -> 3.33

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=25668

Alexandru, this was a fix of a regression. It looks like we failed to catch it originally.

Flags: needinfo?(aionescu)

Thanks you Jeff, this is the entire alert.
== Change summary for alert #25668 (as of Tue, 21 Apr 2020 09:23:12 GMT) ==

Improvements:

33% tsvgx linux64-shippable-qr opt e10s stylo 362.29 -> 241.49
33% tsvgx linux64-shippable-qr opt e10s stylo 362.23 -> 241.99
19% tsvgr_opacity windows10-64-shippable-qr opt e10s stylo 121.81 -> 98.35
15% tsvgr_opacity linux64-shippable-qr opt e10s stylo 124.49 -> 105.81
13% tsvg_static windows10-64-shippable-qr opt e10s stylo 47.74 -> 41.74
13% tsvg_static linux64-shippable-qr opt e10s stylo 49.85 -> 43.61
3% tart linux64-shippable-qr opt e10s stylo 3.44 -> 3.33

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=25668

Flags: needinfo?(aionescu)
Flags: qe-verify+

CPU used: Intel i5-6500
I didn't manage to reproduce the issue as described, although there did seem to be a high CPU usage while hovering over the timeline graphs.
CPU usage went as high as 60-65% on the Firefox process.
After the fix was applied, CPU usage only climbed up to around 40% across all tested OS's (Win 10, Ubuntu 18.04 and macOS 10.15). This was verified using the latest nightly 78 and latest beta 77 builds.

Please note that on a Ryzen 3700x the Fx process barely rose to ~20% CPU usage.

Marking the issue as verified fixed.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: