AMD GPU on Mac slows down the work

• Oct 17, 2020 - 04:42
Reported version
3.5
Type
Performance
Frequency
Few
Severity
S3 - Major
Reproducibility
Always
Status
active
Regression
No
Workaround
No
Project

I have a 2019 MacBook Pro 16' with a 5500M 8G GPU, when I run MuseScore (in macOS Catalina), the system switch to the AMD GPU automatically. When I'm typing notes, the playback of one note can last up to 10 seconds, MuseScore is frozen in this period. This happens on all the notes I type every time, I have to restart MIDI engine to relieve it, but that don't last long, it become slow in tens of seconds. I have to run this command "sudo -S pmset -a GPUSwitch 0" in Terminal to force all the apps in the system only use Intel GPU. Once MuseScore is not using the AMD GPU, this issue doesn't happen any more.
I hope you can fix the compatibility with 5500M (or all AMD GPUs?) or just put an option in settings to disable the discrete GPU.
I tried a lot of versions of MuseScore 3, also reinstalled the system, even macOS Big Sur beta. I didn't try that in Windows.


Comments

Frequency Once Many
Reported version 3.5 3.6

This needs to stop. There is no reason for MuseScore to need the discrete GPU and only makes the rest of the computer's performance suffer.

I know nothing about what might be triggering this, but MuseScore doesn't really have much OS=-dependent code, we just rely on Qt and standard system libraries. I would assume any system that provides multiple GPU's but also creates problems if the wrong one is used, would provide an override so at the OS le el to allow you to specify which you prefer using. Is this not the case for your OS?

In reply to by Marc Sabatella

Unfortunately, macOS does not allow you to choose on a program-level basis to specifically use the integrated graphics. It only lets you choose to use the dedicated graphics occasionally or all of the time. It would be helpful if MuseScore itself had a way to specifically choose the integrated graphics, if that were possible.

It seems to me if macOS doesn't provide the ability to do this per application, then there would be no way for MuseScore to do so either. But I could be wrong. If anyone has technical details explaining how it could be done, that would be helpful.

Does MuseScore have a "Info.plist" file? If so, we could set NSSupportsAutomaticGraphicsSwitching to false.

See https://developer.apple.com/library/archive/qa/qa1734/_index.html and https://developer.apple.com/documentation/bundleresources/information_p…


I also found this: https://doc.qt.io/qt-5/qtwebengine-platform-notes.html Do we want to support AirPlay?

> macOS Airplay Support on MacBooks with Dual GPUs

> To make Qt WebEngine work correctly when streaming to an AppleTV from a MacBook that supports GPU switching, it is important to add the NSSupportsAutomaticGraphicsSwitching option to the application Info.plist file, with the value set to YES. Otherwise rendering issues might occur when creating new web engine view instances after Airplay is switched on or off.