4 ms·
This is a really good step forward, but it's disappointing to see the author using FPS to measure UI responsiveness (I've harped on this before: http://news.yco
by ender7 14y ago
This is a really good step forward, but it's disappointing to see the author using FPS to measure UI responsiveness (I've harped on this before: http://news.ycombinator.com/item?id=3777058 http://news.ycombinator.com/item?id=3777058).
While FPS is a decent measure of performance in constant-load applications such as the fishbowl, it's really, really bad for sporadic-load applications such as most UIs.
For measuring UI responsiveness, you should really use frame delay, which is the greatest elapsed time between any two concurrent frames during a UI event. If your swipe gesture has a frame delay above ~33ms, it will look bad, even if your measured framerate is ~30fps.
- Retric 14y agoOne of the big problems with frame delay is it tends to round up. On a 60FPS device 30.1FPS generally means you miss one out of every 2 refreshes. But a 35ms frame delay and you missed 2 refreshes and can even lose 3 which is ~100ms and rather noticeable.
- ender7 14y agoTrue, but having 30.1FPS doesn't protect you from that phenomenon either. If you maintain 30.1FPS over a long period of time, it means that, yes, you generally get one out of every 2 refreshes. The problem is that UI interaction events can take place over very short stretches -- say ~200ms. That's only a handful of frames, which reduces the quality of any metric that relies of averages (such as FPS). I don't really care if I get 1 out of every 2 refreshes as measured over 2 or 3 minutes, I care about the first 5 frames after I swipe the screen.