我的 ubuntu gnome 不使用笔记本电脑中的nvidia GTX ,而是使用英特尔 gpu来渲染大型应用程序和 GUI。制作扩展程序会blur my shell
导致一些延迟和帧丢失
$ nvidia-smi
Wed Mar 19 20:11:43 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 570.86.15 Driver Version: 570.86.15 CUDA Version: 12.8 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce GTX 1650 Off | 00000000:01:00.0 Off | N/A |
| N/A 51C P0 14W / 50W | 84MiB / 4096MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 3006 G /usr/bin/gnome-shell 1MiB |
| 0 N/A N/A 39062 G /usr/bin/gjs 7MiB |
| 0 N/A N/A 42492 G ...ersion=20250317-050122.955000 60MiB |
| 0 N/A N/A 44114 G /usr/bin/extension-manager 11MiB |
+-----------------------------------------------------------------------------------------+
而英特尔 GPU 使用情况:
intel-gpu-top: Intel Cometlake (Gen9) @ /dev/dri/card1 - 8/ 8 MHz; 98% RC6; 0.04/ 4.47 W; 21 irqs/s
IMC reads: 1495 MiB/s
IMC writes: 158 MiB/s
ENGINES BUSY MI_SEMA MI_WAIT
Render/3D 1.36% |█ | 0% 0%
Blitter 0.00% | | 0% 0%
Video 0.00% | | 0% 0%
VideoEnhance 0.00% | | 0% 0%
PID MEM RSS Render/3D Blitter Video VideoEnhance NAME
1 680800K 677648K |▎ || || || | systemd
44983 213276K 213276K | || || || | firefox
42492 268K 268K | || || || | chrome
20430 260K 260K | || || || | Typora
4096 108440K 86260K | || || || | Xwayland
3006 0 0 | || || || | gnome-shell
我尝试了几乎所有公共解决方案,例如设置 nvidia prime 设置
$ prime-select query
nvidia
笔记本电脑仍然不使用 nvidia gpu 来渲染扩展效果,例如模糊我的外壳并导致延迟
我最终只用一件事就可以做到这一点:编辑或创建文件/etc/udev/rules.d/61-mutter-primary-gpu.rules
然后添加内容:
ENV{DEVNAME}=="/dev/dri/card2", TAG+="mutter-device-preferred-primary"
其中card2是我的nvidia 驱动程序。你可以通过以下方式检查
sudo ls -l /sys/class/drm/cardX/device/driver
还要确保您有 nvidia 非服务器驱动程序包,否则可能会导致启动失败