This repository has been archived by the owner on Feb 20, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
[Bug] Dispatchers.Main still has long cold start delay (Phase II) #4064
Labels
🐞 bug
Crashes, Something isn't working, ..
E2
Estimation Point: easy, half a day to 2 days
P1
Current sprint
performance
Possible performance wins
Milestone
Comments
I'm calling this P2. It has a major effect on performance, but we're waiting on Google to release Android Gradle Plugin and JetBrains to release a new Kotlin coroutines version. |
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Aug 21, 2019
…elay (Phase II)
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Aug 21, 2019
…elay (Phase II)
boek
pushed a commit
that referenced
this issue
Aug 21, 2019
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Aug 26, 2019
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Aug 26, 2019
colintheshots
added a commit
that referenced
this issue
Aug 29, 2019
This should be fixed in the latest master using a Dev version of R8. The results should appear in Nimbledroid in the next day or so. |
@colintheshots can we close this or put a qa needed label on it? :) |
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Dec 13, 2019
…oroutines library
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Dec 13, 2019
…oroutines library
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Dec 13, 2019
…oroutines library
colintheshots
added a commit
that referenced
this issue
Dec 13, 2019
I removed the pre-release R8 version and replaced this with an improved Kotlin coroutines library instead. |
colintheshots
added a commit
to colintheshots/fenix
that referenced
this issue
Dec 16, 2019
…outines library
colintheshots
added a commit
that referenced
this issue
Dec 17, 2019
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
🐞 bug
Crashes, Something isn't working, ..
E2
Estimation Point: easy, half a day to 2 days
P1
Current sprint
performance
Possible performance wins
Steps to reproduce
Look at the latest Nimbledroid.com report OR run cold startup with Systrace running.
Expected behavior
We should not block the main thread for hundreds of milliseconds to checksum the jar using FastServiceLoader or ServiceLoader classes.
Actual behavior
Even with the latest fixes from Kotlin Coroutines, Dispatchers.Main still blocks the main thread for too long. It takes 200ms to run FastServiceLoader, only a ~60ms improvement.
This bug is initially marked "waiting" because we're waiting on the Android team to fix it using R8. If we can use upgrade to the future stable 2.5.0 Android Gradle Plugin and a new version of Kotlin Coroutines which no longer uses FastServiceLoader, we can perform cold startup in a substantially shorter time. This is because R8 will optimize out all ServiceLoader calls and Kotlin Coroutines will switch back to the built-in ServiceLoader calls so they get optimized out.
Device information
┆Issue is synchronized with this Jira Task
The text was updated successfully, but these errors were encountered: