Closed Bug 1998353 Opened 11 months ago Closed 17 days ago

Make html accel also do SIMD writes

Categories

(Core :: DOM: HTML Parser, enhancement)

enhancement

Tracking

()

RESOLVED FIXED
159 Branch
Tracking Status
firefox159 --- fixed

People

(Reporter: hsivonen, Assigned: jjaschke)

References

(Blocks 2 open bugs)

Details

(Keywords: perf-alert)

Attachments

(1 file)

The SIMD acceleration adding in bug 1499682 and follow-ups accelerates the read side of code that was previously structured (both in the parser and the serializer) to do by-code-unit reads to find a stretch of data to later copy in bulk. This makes sense on the assumption that writes using memcpy are so much faster than by-code-unit writes that it makes sense to re-reread the data.

With SIMD acceleration, we've already read the data into SIMD registers. We should consider doing SIMD writes from the same inner loop that does the SIMD reads, since that might now be faster than re-reading the data later for bulk writing.

Blocks: 2000528

Copy comment and quoted attribute data from the SIMD registers into
strBuf, avoiding a separate memcpy. The final stride may write past
strBufLen; the existing capacity bound keeps those writes within the
allocation.

Assignee: nobody → jjaschke
Status: NEW → ASSIGNED
Status: ASSIGNED → RESOLVED
Closed: 17 days ago
Resolution: --- → FIXED
Target Milestone: --- → 159 Branch

Perfherder has detected a browsertime performance change from push 387083f11eef89e98d79269e14408a532ccd6e91.

No action is required from the author; this comment is provided for informational purposes only.

Improvement Test Platform Options Absolute values [old vs new] Performance Profiles
2% speedometer3 TodoMVC-jQuery/total (doc) macosx1500-aarch64-nightlyasrelease fission webrender 62.27 ms -> 61.10 ms Before/After
2% speedometer3 TodoMVC-jQuery/total (doc) macosx1500-aarch64-nightlyasrelease fission no-nova webrender 62.30 ms -> 61.24 ms Before/After
2% speedometer3 TodoMVC-JavaScript-ES6-Webpack-Complex-DOM/total (doc) macosx1500-aarch64-nightlyasrelease fission webrender 21.71 ms -> 21.35 ms Before/After

Need Help or Information?

If you have any questions, please reach out to fbilt@mozilla.com. Alternatively, you can find help on Slack by joining #perf-help, and on Matrix you can find help by joining #perftest.

Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.

Keywords: perf-alert
QA Whiteboard: [qa-triage-done-c160/b159]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: