SwiftcordApp/Swiftcord

Scroll Jank/High CPU Usage

cryptoAlgorithm opened this issue · 3 comments

Especially while scrolling, CPU usage sometimes shoots up to 90% and above. While idling, CPU usage is around 15-30%, which is unsatisfactory. The aim is to at least match the official client in CPU usage, which is less than 10% while idling, and almost no scroll jank.

These observations were made on a 14" 10c M1 Pro, so your experience might vary.

The cause of the high CPU usage has been narrowed down to useless SwiftUI rerenders every time the gateway cache is updated. Improvements are being worked on in the butter branch.

This is almost fully resolved as of the latest butter commit. It would need more testing before being merged though.

The butter branch has been merged.