Closed Bug 750507 Opened 9 years ago Closed 9 years ago

Need a talos jank test


(Firefox for Android Graveyard :: General, defect)

Not set


(firefox15 fixed)

Firefox 15
Tracking Status
firefox15 --- fixed


(Reporter: kats, Assigned: kats)



(1 file)

We want a talos test to measure jank. Sort of like testPan (aka robopan) does now, but somewhat enhanced so we weight missed frames by the amount we missed the frame by, rather than just counting the number of missed frames.

:jmaher, should we just change the calculation used in testPan, or is it better to write a new test for this?
I am fine just changing testPan.  From the description of this issue it seems like we are not getting all we want from testPan and adjusting it would give us what we want.
I put together a first patch and ran it on try a bunch of times, but it's giving very variable results, just like the new tcheckerboard and tcheckerboard2 numbers. See for the patch and numbers. I'm going to try dividing by number of frames to hopefully smooth out the numbers a bit. It should still be a measure of jank but with less variability because it won't depend on how long the test runs for.
Attached patch PatchSplinter Review
The patch with division by number of frames didn't reduce variability much, I'm not sure why. The results for that can be found at

This is just the first patch I tried, where we sum the squares of the missed frame times in milliseconds.
Attachment #620288 - Flags: review?(jmuizelaar)
Comment on attachment 620288 [details] [diff] [review]

Review of attachment 620288 [details] [diff] [review]:

Might be worth adding a note about why we're choosing this new metric over the old one.

::: build/mobile/robocop/
@@ +235,4 @@
>              for (int i = 1; i < frames.size(); i++) {
> +                long frameTime = frames.get(i) - frames.get(i - 1);
> +                if (frameTime > FRAME_TIME_THRESHOLD) {
> +                    badness += Math.pow(frameTime - FRAME_TIME_THRESHOLD, 2);

I would square this by hand instead of using pow.

@@ +245,5 @@
>              log(LogLevel.ERROR, e);
>          }
> +        // higher values are worse, and the test failing is the worst!
> +        return 12345678;

Attachment #620288 - Flags: review?(jmuizelaar) → review+
Landed with review comments addressed.
Target Milestone: --- → Firefox 15
Closed: 9 years ago
Resolution: --- → FIXED
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.