Add option to use integrated GPU for hardware acceleration

When hardware acceleration is enabled on machines with multiple GPUs like the higher-end MacBooks, Brave engages the discrete GPU, even when running on battery power.

This is not a major issue, however an option to always run on the integrated GPU can be useful to extend battery life and improve thermal performance.

This is implemented as a preference in Opera (their Chromium fork), independent of their other “battery saver” feature. From my experience, running on the iGPU is a net positive, without noticeable performance impact on any site but with significantly longer and cooler browsing sessions.

Edit: Upon further inspection, Brave steps up to the discrete GPU only when a WebGL context is created (e.g. Google Maps), but the problem is that it never switches back, even after all browser windows are closed. The “needs high perf GPU” flag stays on until I quit the browser.

Hardware: MacBook Pro (Retina, 15-inch, Mid 2015)
GPU: AMD Radeon R9 M370X + Intel Iris Pro Graphics 5200
Operating System: macOS Mojave (10.14.6)
Brave Version: 0.69.135 Chromium: 77.0.3865.120

4 Likes

Made an account just to add to this.

I’m finding plenty of reports of this happening on Mac devices, but this is also happening on Windows 10 rigs too.

My rig is a Dell 7537 with the Intel integrated GPU and an nVidia GPU. I have my nVidia settings set to display the GPU use icon on the taskbar. If hardware acceleration is turned on, Brave uses the nVidia chip no matter what. That’s fine and dandy if I’m plugged in, though still overkill for most web surfing. If I change settings in the nVidia control panel so Brave is set to use the integrated GPU, it ignores that and still forces itself onto the nVidia one until I do below.

The only “solution” has been to turn hardware acceleration off. For testing purposes I also changed it to use the nVidia GPU and it doesn’t if hardware acceleration is off. So it completely ignores the nVidia control panel setting altogether.

Ideally Brave should use the integrated chip and only switch to the discrete when needed if hardware acceleration is enabled, then back to integrated once whatever wanted the extra power is closed.

Please fix the way hardware acceleration behaves as I love Brave otherwise.

Did some tests on browserbench, not sure just how reliable that actually is, but honestly having hardware acceleration on or off doesn’t seem to matter much. Except oddly MotionMark was much better with acceleration off. idk, here are my findings…

Hardware Acceleration on, nVidia GT 750m in-use:
JetStream2: 75.683
MotionMark: 151.22 +/- 28.59%
Speedometer: 37.2 +/- 0.66

Hardware Acceleration off:
JetStream2: 72.751
MotionMark: 236.89 +/- 5.64%
Speedometer: 34.8 +/- 2.0

1 Like

I’m having same issue on my new 16" Macbook Pro running latest OS Catalina 10.15.2.

Brave is constantly making the fan run loud. Never had this problem before on Chrome or my smaller 13 inch Macbook Air. Perhaps the issue is specific to certain laptops.

This would be soooo good to have on the latest macbook…

same problem here, MacBook Pro 16" and can’t use brave, is draining all my battery

Same problem here, will use e-gpu by default. Request to have i-gpu as an option