Intel 統合グラフィックスを使用すると Blender がハングする

Intel 統合グラフィックスを使用すると Blender がハングする

Blender は、Intel 統合グラフィックスで編集モードとオブジェクト モードを通常使用中に頻繁にハングアップし、強制終了する必要があります。私は 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'

かなり古い外部グラフィック カードを使用するとフリーズは解消されるようです (他の使用例ではさらに悪いです)。したがって、この問題は Intel グラフィックに特有のようです。他のプログラムでは問題は発生していないようです。かなり調べてみましたが、明らかなことを見逃している可能性が 50% 以上あります。ありがとうございます。

編集: libdecor をインストールしてもハングには影響がないので、関連するのは最初のログ メッセージだけです。

答え1

私も Debian 11 ("Bullseye") の Blender 3.6.1 (公式 Linux バイナリ) でこの問題に遭遇しました。スタートアップ キューブのサイズを変更するだけで Blender が応答しなくなります。GPU がdmesgハングするという同様のメッセージが表示されます。私のグラフィック カードは、Intel Core i5-6300U に統合された Skylake GT2 [HD Graphics 520] です。

この問題は問題として報告されています2935(そして重複3125) は、Intel drm/i915 カーネル ドライバー用の Freedesktop リポジトリにあります。

私はこれらのディスカッションで言及されている Petr Nosek の回避策を試しました:

まず、ドライバーパラメータをpreempt_timeout_ms10000に増やします。この変更は任意のテキストエディタ(ルート権限付き)で行うことができますが、ここでは1行のコマンドで実行できますteehttps://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しかし、この2番目のステップは、に置いたランチャーファイルを変更することで自動化しやすくなりました~/.local/share/applicationshttps://unix.stackexchange.com/q/469466/194642Exec 行を次のように変更しました。

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

これまでのところは動作しています (Blender がフリーズすることはなくなりました)...

関連情報