[Bug]: sync client makes MacBook Pro switch to dGPU, should use iGPU first
⚠️ Before submitting, please verify the following: ⚠️
- [X] This is a bug, not a question or a configuration issue.
- [X] This issue is not already reported on Github (I've searched it).
- [X] Nextcloud Server and Desktop Client are up to date. See Server Maintenance and Release Schedule and Desktop Releases for supported versions.
- [X] I agree to follow Nextcloud's Code of Conduct
Bug description
the new facelift of the sync client will now default to using the dGPU (High performance mode) on a macbook with dual GPUs. The machine will stay on High performance mode, even when the menu bar gui is not being shown. Will only revert back to iGPU once the app is quit
I consider this a bug because using the dGPU uses significantly more battery, and should only ever be turned on when using a graphics intensive app (photoshop, blender, coding shaders, etc).
This has only started happening when I updated to 3.14.0. previous versions did not do this. this issue stating the same problem is closed
Steps to reproduce
- open nextcloud sync client
- use an app like gswitch to determine gpu switching (can list Nextcloud as a dependency)
Expected behavior
Syncing clients should never use dGPU when iGPU is available, uses too much battery
Which files are affected by this bug
all files?
Operating system
macOS
Which version of the operating system you are running.
macOS Sonoma
Package
Official macOS 12+ universal pkg
Nextcloud Server version
Nextcloud Hub 8 (29.0.4)
Nextcloud Desktop Client version
3.14.0
Is this bug present after an update or on a fresh install?
Updated from a minor version (ex. 3.4.2 to 3.4.4)
Are you using the Nextcloud Server Encryption module?
Encryption is Disabled
Are you using an external user-backend?
- [X] Default internal user-backend
- [ ] LDAP/ Active Directory
- [ ] SSO - SAML
- [ ] Other
Nextcloud Server logs
No response
Additional info
No response
Same issue here on macOS Ventura 13.7.1 running NextCloud desktop client 3.14.3. I was wondering why my battery seemed so diminished lately…
one discovery that ive made is that if you set the sync client to minimize at system start, it will not switch to dGPU until you click on the tray icon, where it will open up the Qt gui thats been hardware accelerated. so you can still have the sync client active and continuously syncing your data, until you accidentally click on it. an app restart won't fix it it seems - only a full system reboot
I confirm the reported problem on a MacBookPro9,1 w/ macOS Ventura 13.7.2. I would like to add that I know of at least one other Qt-based project - OpenTodoList - that is now experiencing the same kind of problem on dual GPU-MacBook Pros:
https://gitlab.com/rpdev/opentodolist/-/issues/676
Just as an uneducated guess, of course, but are there any ways and means in Qt 6-based projects to deactivate graphics acceleration for the GUI entirely in the binaries built?
Not a solution, but maybe of interest for finding one: I've followed this advice on reddit, in other words:
- I've opened a macOS terminal session in my user context.
- In the opened bash session, I've exported the two mentioned variables:
export QMLSCENE_DEVICE=softwarecontext
export QT_OPENGL=software
- I've then launched OpenTodoList via
open /Applications/Nextcloud.app/
Result: Unfortunately, the Nextcloud Desktop Sync Client GUI remains blank/empty, but this opens the application without creating a dependency to my MacBook Pro's dGPU. gfxCardStatus remains on its 'i' for integrated graphics and does not display any dependency to the dedicated GPU. If you still want to use the Nextcloud Desktop Sync Client without interacting with its GUI, it may already be a workaround.
BTW: In the case of OpenTodoList I've mentioned above, even the (software-)rendered GUI is fine.
Same problem on a macbook pro with dgpu on sonoma 14.7.2 (23H311). I was also why my mac was so hot and battery life so poor ... That's really problematic @HackintoshHD I tried software rendering, it also show blank scree on sonoma.
Same on MacBook Pro 2019 with Radeon Pro 5500M. This issue notably drains battery.
any statement about this from developers? this is a real issue
I noticed that it switches to High performance mode after first clicking on the symbol in the menu bar. Once the nextcloud gui opens up the sytem stays in that mode.
So one way to avoid this issue for now is to not click in the symbol until necessary. Once open quiet and restart without opening the gui / clicking on the menu bar symbol.
Same on 3.16.6
This is still happening with Nextcloud 4.0.2 on MacOS 13.7.8. Sometimes—always after app updates, and occasionally at other times that I haven't been able to narrow down—the app switches to the discrete GPU and stays that way until quit. Restarting the app releases the discrete GPU, until at some point later it requests it again.