Blender hängt sich bei Verwendung der integrierten Intel-Grafik auf

Blender hängt sich bei Verwendung der integrierten Intel-Grafik auf

Blender bleibt häufig hängen und muss während der normalen Verwendung des Bearbeitungsmodus und des Objektmodus mit integrierter Intel-Grafik beendet werden. Ich verwende Version 3.6.0 unter Ubuntu 22.04, obwohl das Problem auch in anderen Versionen vorhanden ist. Ich habe dieses Problem, seit ich Ubuntu installiert habe, und es blieb auch nach einer Neuinstallation von Ubuntu bestehen. Nach einem Einfrieren konnte ich in den Protokollen Folgendes finden:

Unter „System“

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

Unter "Anwendungen"

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'

Das Einfrieren scheint zu verschwinden, wenn ich eine ziemlich veraltete externe Grafikkarte verwende (was in jedem anderen Anwendungsfall schlimmer ist), also scheint das Problem spezifisch für die Intel-Grafik zu sein. Kein anderes Programm scheint damit Probleme zu haben. Ich habe viel herumgesucht, aber es besteht eine Wahrscheinlichkeit von >50 %, dass ich etwas schmerzlich Offensichtliches übersehe. Danke!

BEARBEITEN: Die Installation von libdecor hat keinen Einfluss auf das Hängenbleiben, daher sind die ersten Protokollmeldungen die einzigen relevanten.

Antwort1

Dieses Problem hatte ich auch unter Debian 11 („Bullseye“) mit Blender 3.6.1 (offizielle Linux-Binärdatei). Blender reagiert nicht mehr, wenn man einfach die Größe des Startwürfels ändert! dmesgzeigt ähnliche Meldungen über GPU-Hänger an. Meine Grafikkarte ist Skylake GT2 [HD Graphics 520], integriert in einen Intel Core i5-6300U.

Ich habe dieses Problem als Problem gemeldet gefunden2935(und duplizieren3125) im Freedesktop-Repo für den Intel DRM/i915-Kerneltreiber.

Ich habe den Workaround von Petr Nosek ausprobiert, der in diesen Diskussionen erwähnt wurde:

Erhöhen Sie zunächst den Treiberparameter preempt_timeout_msauf 10000. Diese Änderung kann mit jedem Texteditor (mit Root-Berechtigung) vorgenommen werden, aber hier ist ein einzeiliger Befehl, der dies erledigt (mit teewie inhttps://stackoverflow.com/a/36853636):

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

Die Änderung kann durch überprüft werden $ cat /sys/class/drm/card0/engine/rcs0/preempt_timeout_ms.

Hinweis: Diese Änderung der Treibereinstellungen istbleibt nicht über Neustarts hinweg bestehen!

Dann sollte Blender mit einer Umgebungsvariable gestartet werden (keine Ahnung, was sie tut, aber sie ist dokumentiert unterhttps://docs.mesa3d.org/envvars.html#intel-driver-environment-variables).

$ INTEL_DEBUG=reemit blender

Ich fand jedoch, dass dieser zweite Schritt einfacher zu automatisieren war, indem ich die blender.desktopLauncher-Datei modifizierte, die ich in platziert hatte ~/.local/share/applications.https://unix.stackexchange.com/q/469466/194642, ich habe die Exec-Zeile wie folgt geändert:

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

Bisher funktioniert es (Blender friert nicht mehr ein) …

verwandte Informationen