n***@net.bsd
2021-08-02 16:21:40 UTC
Thought I'd post this as a kind of memory dump..
Was attempting to improve X11 performance on a old 32bit HP Slimline
with Intel on-board itegrated graphics that uses DVMT to shuffle system
memory to graphics as needed. This saves the manufacture some money
but possibly is a source of instability as the system will experience
frequent pauses during moments of higher load.
Anyway.. NetBSD apparently has a very old Linux port of DRM which results
in GPU hangs if enabled on this system. If acceleration and DRI are
disabled the system is stable but very slow.
The partial solution was to create a xorg.conf file under /etc/X11 and
add the following tweaks to the main "Device" section:
Option Accel "True"
Option AccelMethod "BLT"
Option DRI "False"
The "BLT" option (Block Litigated Transfer) seems to be the deciding
factor between having a system that still occasionally hiccups but
recovers vs a system that regularly experiences garbled display, loss
of pointer cursor or full on X11 crash that lands the user back at the
xdm login screen.
The intel(4) manpage says the BLT option tells the system to "..disable
render acceleration and only use the BLT engine". Not sure what the BLT
engine is as not much comes up in web search results but I'm guessing
it's still part of the SNA acceleration scheme and selecting "BLT"
results in a crippled "SNA" (Sandybridge New Acceleration); certainly
there is no advanced 3D acceleration going on.
Ultimately the NetBSD folks need to freshen their DRM stuff so DRI can
be enabled. Chatting with some NetBSD developers suggests this may not
be a high priority so until then work-arounds as described are the only
option.
ref:
- intel(4) manpage
- Intel HD Graphics/BLT Engine:
https://wiki.osdev.org/index.php?title=Intel_HD_Graphics&oldid=24565"
Was attempting to improve X11 performance on a old 32bit HP Slimline
with Intel on-board itegrated graphics that uses DVMT to shuffle system
memory to graphics as needed. This saves the manufacture some money
but possibly is a source of instability as the system will experience
frequent pauses during moments of higher load.
Anyway.. NetBSD apparently has a very old Linux port of DRM which results
in GPU hangs if enabled on this system. If acceleration and DRI are
disabled the system is stable but very slow.
The partial solution was to create a xorg.conf file under /etc/X11 and
add the following tweaks to the main "Device" section:
Option Accel "True"
Option AccelMethod "BLT"
Option DRI "False"
The "BLT" option (Block Litigated Transfer) seems to be the deciding
factor between having a system that still occasionally hiccups but
recovers vs a system that regularly experiences garbled display, loss
of pointer cursor or full on X11 crash that lands the user back at the
xdm login screen.
The intel(4) manpage says the BLT option tells the system to "..disable
render acceleration and only use the BLT engine". Not sure what the BLT
engine is as not much comes up in web search results but I'm guessing
it's still part of the SNA acceleration scheme and selecting "BLT"
results in a crippled "SNA" (Sandybridge New Acceleration); certainly
there is no advanced 3D acceleration going on.
Ultimately the NetBSD folks need to freshen their DRM stuff so DRI can
be enabled. Chatting with some NetBSD developers suggests this may not
be a high priority so until then work-arounds as described are the only
option.
ref:
- intel(4) manpage
- Intel HD Graphics/BLT Engine:
https://wiki.osdev.org/index.php?title=Intel_HD_Graphics&oldid=24565"