← Back to context

Comment by cellularmitosis

2 days ago

For typical apps, the four variables here are backend latency, network latency, client-side deserialization, and client GUI rendering. (Less commonly, apps which have complex client-side state will also spend time reconciling server and client state.)

Keeping UI rendering under 16ms is the gold standard for native apps. That leaves only deserialization as the other target which the mobile developer can optimize. However, the typical solution there involves convincing the backend to ship a different format (i.e. switching from JSON to binary PList or to SQLite DB file).

> Keeping UI rendering under 16ms is the gold standard for native apps.

No, it isn't.

If you're not including the actual rendering, so the actual code of the app only or at least only the code on the UI thread, the targets are much smaller. More like 3-6ms/frame.

If you're including rendering then pipelining and 90hz+ being common still changes that anyway.

> Keeping UI rendering under 16ms is the gold standard for native apps.

Not since they’ve started releasing 120hz screens.