使用 Intel 整合顯示卡時 Blender 掛起

使用 Intel 整合顯示卡時 Blender 掛起

在正常使用英特爾整合顯示卡的編輯模式和物件模式期間,Blender 經常掛起並且必須終止。我在 Ubuntu 22.04 上使用版本 3.6.0,但其他版本也有該問題。自從我安裝了 Ubuntu 以來,這個問題就一直存在,並且在重新安裝 Ubuntu 後它仍然存在。凍結後我能夠在日誌中找到以下內容:

在“系統”下

20:02:34 kernel: i915 0000:00:02.0: [drm] GPU HANG: ecode 9:1:85df9e9f, in blender [35275]
20:02:34 kernel: i915 0000:00:02.0: [drm] blender[35275] context reset due to GPU hang

在“應用程式”下

20:02:26 blender: WAYLAND found but libdecor was not, install libdecor for Wayland support, falling back to X11
20:02:26 blender: Unable to find 'libdecor-0.so'

如果我使用相當過時的外部顯示卡(在其他所有用例中情況更糟),凍結似乎就會消失,因此該問題似乎是英特爾顯示卡特擁有的。其他程式似乎沒有出現問題。我已經搜索了很多,但有 >50% 的可能性我錯過了一些非常明顯的東西。謝謝你!

編輯:安裝 libdecor 對掛起沒有影響,因此第一個日誌訊息是唯一相關的。

答案1

我在 Debian 11(「Bullseye」)和 Blender 3.6.1(官方 Linux 二進位檔案)上也遇到了這個問題。只需調整啟動立方體的大小,Blender 就會變得無響應!dmesg顯示有​​關 GPU 掛起的類似訊息。我的顯示卡是 Skylake GT2 [HD Graphics 520],與 Intel Core i5-6300U 整合。

我發現這個問題被報告為問題2935(並重複3125)在 Freedesktop 儲存庫上,用於 Intel drm/i915 核心驅動程式。

我已經嘗試過 Petr Nosek 在這些討論中提到的解決方法:

首先,將驅動程式參數增加到10000 preempt_timeout_msteehttps://stackoverflow.com/a/36853636):

$ echo 10000 | sudo tee /sys/class/drm/card0/engine/rcs0/preempt_timeout_ms

可以通過 來檢查更改$ cat /sys/class/drm/card0/engine/rcs0/preempt_timeout_ms

備註:此驅動程式設定變更是重新啟動後不會持續!

然後,Blender 應該使用環境變數啟動(不知道它的作用,但它記錄在https://docs.mesa3d.org/envvars.html#intel-driver-environment-variables)。

$ INTEL_DEBUG=reemit blender

然而,我發現透過修改blender.desktop我放置在~/.local/share/applications.下列的https://unix.stackexchange.com/q/469466/194642,我將 Exec 行修改為:

Exec=env INTEL_DEBUG=reemit /my/path/to/blender/bin/blender-3.6.1/blender %f

到目前為止它有效(不再有 Blender 凍結)...

相關內容