Open Bug 1408699 Opened 7 years ago Updated 2 years ago

High keyboard input latency compared to chrome

Categories

(Core :: Graphics, defect, P2)

58 Branch
defect

Tracking

()

People

(Reporter: gregory.mkv, Unassigned)

References

(Depends on 1 open bug)

Details

(Whiteboard: [gfx-noted])

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:58.0) Gecko/20100101 Firefox/58.0
Build ID: 20171014100219

Steps to reproduce:

1. Download https://pavelfatin.com/typometer/
2. Go to https://www.w3schools.com/TagS/tryit.asp?filename=tryhtml_textarea
3. Measure the input latency of the plain textarea in the right pane



Actual results:

On every keypress, firefox (32ms avg) has ~3x the latency of Chrome (12ms avg).
See screenshot attached with results of comparison.


Expected results:

Firefox should have better or equal input latency than Chrome.
There is perceivable lag when typing into html fields on Firefox that is not acceptable if it is to compete with Chrome performance-wise.
Component: Untriaged → Event Handling
Product: Firefox → Core
(In reply to gregory.mkv from comment #0)
> Created attachment 8918593 [details]
> Screenshot from 2017-10-14 15-50-50.png
> 
> User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:58.0) Gecko/20100101
> Firefox/58.0
> Build ID: 20171014100219
> 
> Steps to reproduce:
> 
> 1. Download https://pavelfatin.com/typometer/
> 2. Go to https://www.w3schools.com/TagS/tryit.asp?filename=tryhtml_textarea
> 3. Measure the input latency of the plain textarea in the right pane
> 
> 
> 
> Actual results:
> 
> On every keypress, firefox (32ms avg) has ~3x the latency of Chrome (12ms
> avg).
> See screenshot attached with results of comparison.
> 

Hello Reporter, Thanks for reporting. To clarify - is the ~3x number applied only to that w3cshools link? What about the data when testing on other websites, for example Facebook or Google search?

Also NI Olli & Stone to see if they have comments.

> 
> Expected results:
> 
> Firefox should have better or equal input latency than Chrome.
> There is perceivable lag when typing into html fields on Firefox that is not
> acceptable if it is to compete with Chrome performance-wise.
Flags: needinfo?(sshih)
Flags: needinfo?(gregory.mkv)
Flags: needinfo?(bugs)
Assignee: nobody → sshih
Flags: needinfo?(sshih)
Hmm, is the latency coming from waiting for vsync.
First we get keyboard event in parent, it is sent to child, editor is modified and it causes a layout change, we request vsync from parent/gpu process, get vsync to child and paint and update the layer tree... something like that.
Flags: needinfo?(bugs)
Yeah I would expect a 2-frame delay between input and visual difference. Both our painting and compositing are vsync-driven.
(In reply to Hsin-Yi Tsai [:hsinyi] from comment #1)
> (In reply to gregory.mkv from comment #0)
> > Created attachment 8918593 [details]
> > Screenshot from 2017-10-14 15-50-50.png
> > 
> > User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:58.0) Gecko/20100101
> > Firefox/58.0
> > Build ID: 20171014100219
> > 
> > Steps to reproduce:
> > 
> > 1. Download https://pavelfatin.com/typometer/
> > 2. Go to https://www.w3schools.com/TagS/tryit.asp?filename=tryhtml_textarea
> > 3. Measure the input latency of the plain textarea in the right pane
> > 
> > 
> > 
> > Actual results:
> > 
> > On every keypress, firefox (32ms avg) has ~3x the latency of Chrome (12ms
> > avg).
> > See screenshot attached with results of comparison.
> > 
> 
> Hello Reporter, Thanks for reporting. To clarify - is the ~3x number applied
> only to that w3cshools link? What about the data when testing on other
> websites, for example Facebook or Google search?
> 
> Also NI Olli & Stone to see if they have comments.
> 
> > 
> > Expected results:
> > 
> > Firefox should have better or equal input latency than Chrome.
> > There is perceivable lag when typing into html fields on Firefox that is not
> > acceptable if it is to compete with Chrome performance-wise.

Yes, the ~3x number is the same in every textarea I've tested latency on, incl. other websites. 
For the purpose of simplicity, I've omitted wysiwyg editors and the like, however.
Flags: needinfo?(gregory.mkv)
I wonder how this aligns with Hasal's results. Shako, does this surprise you?
Flags: needinfo?(sho)
Priority: -- → P2
I will say the tool surprises me, the tool is awesome and it minimizes the overhead of detecting the screen changes to measure the input latency, this could lead us to think a more efficient way to optimize Hasal. 

But I'm not surprised about the testing result, I create a new test case testing with the same URL, and the number I have for Firefox is around 33 ms, Chrome is around 17 ms. And the number I had from typometer for Firefox is around 33 ms, but for Chrome is around 23 ms (I think the difference comes from the recording FPS). I think we have the similar result for both browsers on the same URL.
Flags: needinfo?(sho)
Assignee: sshih → nobody
Component: Event Handling → Graphics
Whiteboard: [gfx-noted]
May I ask why this is still "unconfirmed" given the response of Shako Ho in comment #6?
I'll mark it "new" but that's not going to get it fixed any faster.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Depends on: 1675614
Depends on: 1506537
Depends on: 1708325
Depends on: 1735391
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: