Yes, this is somewhat expected behavior in that we're deliberately experimenting on early beta and nightly with lowering frame rates. We're doing this because under some circumstances, this leads to better performance (ie faster page loads) because we run layout/paint less frequently. And yes, this will likely have positive power implications, too.
This functionality trips for CPUs with clock speeds under 1.8ghz and 2 or fewer cores. It was deliberately made very naive to start with to be able to evaluate and iterate quickly (rather than spend a lot of time building a complete model of available cpus and various other characteristics, and only then check how effective this is in the wild and/or what the trade-offs are).
It seems to me that, for this ASUS T300 Chi device, we're looking at the base speed of the processor (1.2ghz) even though it has a "turbo" mode that'll go up to 2.9ghz, which would disqualify it from being considered "low-end". There's a technical question here of how we can detect that situation and do better autodetection.
Separately though, I'm curious about 2 things.
The first is, how did you notice this? I'm assuming that, on updating Firefox, loading testufo.com was not the first thing you did with the machine? When/how did you notice it was running at 30fps - using in-browser games, or video, or something else?)
The second is that I'm a little confused by comment #0:
(In reply to lpy750 from comment #0)
I can force 60 fps using "layout.frame_rate" but it very stuttery.
I don't see any reason why it should be running at 30 fps when 60 fps runs fine on this tablet.
I'm a little confused here. Does 60fps stutter when using layout.frame_rate to force it, but not when setting
performance.adjust_to_machine to false? If so, do you see the same stutter / not-quite-60fps behavior if you have
performance.adjust_to_machine set to false and also set
true (you may need to restart Firefox for this to take effect) ?
(Note that you probably want to set
performance.adjust_to_machine to false rather than setting
performance.low_end_machine, which will get overridden by our autodetection the next time you update Firefox, as long as