Today I discovered a GNOME Shell extension that made me take out my glorious laptop again…. but let’s take a step back.
Dell 7548 UHD Touch
Do you remember my Dell 7548? I decided to take it out again to update Arch, clean it up and test this addon. Although very dated its UHD touch 15 inches screen is something sensational for pixel density & colours.
The first two hours were of updating (over 2GB yay) and cleaning up the huge amount of AUR packages I had installed over years and years of building. I had to root out obsolete Python2 and Qt4 libraries as well as regenerate all keys.
Intel HD Graphics vs AMD Radeon
Those who have been following me for a long time will remember how crazy I was in looking for a really efficient system to make a selection between integrated Intel HD Graphics 5500 and AMD Radeon R7 M270.
AMDGPU has also made things much easier for hybrid graphics, installation is now automatic in Arch.
Supergfxctl
Supergfxctl was born inside the asus-linux.org community. It is tested on a variety of laptops including Intel/Nvidia, AMD/Nvidia, Intel/AMD and AMD/AMD GPU combinations.
Supergfxctl is in AUR on Arch Linux archive but you can compile it quite easily on Ubuntu or other distributions.
Personally I had problems with the AUR version perhaps due to some mess I had done with Rust and cleaning the system so I decided to compile it.
Buildind supergfxctl
Give the following terminal commands
$ sudo apt update && sudo apt install curl git build-essential
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
$ source ~/.cargo/env
Navigate to your preferred build folder
$ git clone https://gitlab.com/asus-linux/supergfxctl.git
$ cd supergfxctl
$ make && sudo make install
Enable the service at startup and groups
$ sudo systemctl enable supergfxd.service --now
$ sudo usermod -a -G users $USER (replace $ USER with your own user)
Now we have a lot of terminal commands available to act on the GPU:
https://gitlab.com/asus-linux/supergfxctl#supergfxctl-1
- Integrated supergfxctl --mode integrated
- Hybrid supergfxctl --mode hybrid
- Compute supergfxctl --mode compute
- VFIO supergfxctl --mode vfio
Switch GPU modes
- Switching to/from Hybrid mode requires a logout only. (no reboot)
- Switching between integrated/compute/vfio is instant. (no logout or reboot)
- Mode can be set via kernel cmdline with
supergfxd.mode=
Capitalisation does not matter.
Super Graphics Control for GNOME Shell
Super Graphics Control GNOME Shell addon adds a switch to the GNOME topbar that allows in my case to select between hybrid graphics or Intel integrated only, but depending on your laptop configuration the options may vary.
Super Graphics Control extension switch make the change of GPU moldality immediate. The extension already supports GNOME 43 and is installed in the classic way from Shell Extsension page via browser connector , GNOME Web or Firefox / Chrome addons.
Testing
Personally I ran some Linux benchmarks with GL Mark 2 and Unigine Benchmark. R7M270 GPU was already very poor and differences with the Intel 5500 are minimal but it was interesting to do this experiment. Shell animations with the 5500 are much more jittery. My new RTX 3070 setup is 14 times faster…
Leave a Reply