Fix the slowness of the Silence UI #1235
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #981.
@stuartnelson3 I think I figured this!! The slowness in Chrome was mostly caused by CSS. Certain CSS properties triggered too many compositing layers for each silence on the list. That is why it shows slow rendering on this graph (most time spent updating the layer tree):
The fix was to set
position: static
instead ofrelative
for each silence in the list!I also made sure that the silences list is not filtered each time by caching it and then using
lazy
to render. Even though it might be premature optimisation, I think it squeezed the most performance out of the Elm architecture.