Skip to content

Significant performance regression between 5.1.0 and 5.2.1 #3938

@database64128

Description

@database64128

Bug explanation

After releasing a new version of my app with MaterialDesignThemes 5.2.1, a user reported that the UI would hang after some activity. Upon investigation, it became clear that the hang was caused by frequent content updates to the log viewer TextBox overloading the UI thread. The relevant logic in my app did not change between releases, so I tested older versions of MaterialDesignThemes. Reverting to version 5.1.0 resolved the issue. The UI no longer hangs.

While there are certainly optimizations I can make in my app, this performance regression in MaterialDesignThemes also deserves attention. I attempted to capture a CPU profile during the unresponsive state, but 87% of the CPU time was spent inside ReactiveUI.IReactiveObjectExtensions.RaiseAndSetIfChanged, which was not helpful for pinpointing the cause.

In case anyone wants to look at the CPU profile: youtube-dl-wpf-ui-hang.diagsession.zip

Possibly related: #3840.

Version

5.2.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugevaluation requiredItems is pending review or evaluation by the team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions