Skip to content

Optimization

Mateusz Żebrak requested to merge mzebrak/performance into develop

Requires:

Overall: this MR reduces the CPU usage (measured on the Dashboard) from ~28-38% to ~8-15%

Before: image

After: image

Work done:

  • Optimized DynamicLabel (CPU usage on the dashboard on idle dropped from ~35% to ~13-15% on my Ryzen 5600x)
    Still, there is some place for optimization of this widget, since when DynamicLabel shows just a Static content, CPU usage on the Dashboard at idle drops to around 0%. Textual reactivity abstraction may help a lot since DynamicLabel won't be triggered every time the entire e.g. ProfileData changes (we could hook just on the specific attribute)
  • Optimized launching clive (because of connecting to/launching beekeeper) - 5s speedup
  • Optimized header clock - reduced the interval of updates. (sometimes it might look weird because gdpo and this 1s update can synchronize so that the now will be displayed for about 2s or the transition from e.g. 2s to 3s will take much less than a second, but it is crucial for performance - we use a header on every screen and this change reduced CPU usage ~5%)
Edited by Mateusz Żebrak

Merge request reports