Intel graphics (Español)

Esta traducción de
Intel graphics
fue revisada el
2020-07-29
. Si existen
cambios
puede
actualizarla
o avisar al
equipo de traducción
.
Artículos relacionados
Xorg (Español)
Kernel mode setting (Español)
Xrandr
Hybrid graphics
Vulkan
GPGPU
Intel provee y mantiene controladores de código abierto, por lo que sus tarjetas de video son esencialmente plug-and-play.
Para un listado más detallado de modelos de GPU Intel, con sus correspondientes chipsets y CPUs, vea
Wikipedia:List of Intel graphics processing units
.
Nota
Tarjetas gráficas basadas en PowerVR (series GMA 3600) no son soportadas por los controladores de código abierto
Instalación
Instale
el paquete
mesa
, que provee el controlador
DRI
para aceleración en 3D.
Para soporte de aplicaciones 32-bit también instale
lib32-mesa
desde el repositorio
multilib
.
Para el controlador
DDX
(que provee aceleración en 2D en
Xorg
),
instale
el paquete
xf86-video-intel
(usualmente no es recomendado, revise la nota más abajo).
Para sopore de
Vulkan
(
Ivy Bridge
y más reciente) instale el paquete
vulkan-intel
.
Véase también
Hardware video acceleration
.
Nota
Algunos (
Debian & Ubuntu
,
Fedora
,
KDE
) no recomiendan instalar el controlador
xf86-video-intel
y en su lugar recurrir al controlador modesetting para GPUs Gen4 y más recientes (GMA 3000 del 2006 en adelante). Vea
[1]
,
[2]
,
Xorg#Installation
y
modesetting(4)
. Sin embargo, el controlador modesetting puede causar problemas como
Chromium Issue 370022
y
vsync jitter/video stutter in mpv
.
Carga
El módulo de núcleo proporcionado por Intel debería cargar automáticamente al arranque del sistema.
Si esto no ocurre, entonces:
Asegúrese que
no
tiene
nomodeset
o
vga=
como un
parámetro de núcleo
, puesto que Intel requiere mode-setting del núcleo.
También revise que Intel no esté desactivada mediante alguna lista negra modprobe dentro de
/etc/modprobe.d/
o de
/usr/lib/modprobe.d/
.
Iniciar de forma anticipada KMS
Kernel mode setting (Español)
es soportado por los chipsets de Intel que utilizan el controlador DRM i915, lo cual es mandatorio y está activado de forma predeterminada.
Refiérase a
Kernel mode setting#Early KMS start
para instrucciones de cómo habilitar KMS lo más pronto posible durante el proceso de arranque.
Habilitar la carga del firmware GuC / HuC
Para los procesadores Skylake y más recientes algunas características de video (e.g. control de velocidad de CBR en el modo de codificación de bajo consumo en SKL) pueden requerir utilizar un firmware de GPU actualizado, lo que actualmente (versión 4.16) no está habilitado por defecto. Habilitar la carga de firmware GuC/HuC puede causar problemas en algunos sistemas; desactívelo si experimenta congelamientos (por ejemplo, al iniciar después de una hibernación).
Nota
Vea
Gentoo:Intel#Feature support
para una vista general en las generaciones de procesadores Intel.
Para aquellos procesadores es necesario añadir
i915.enable_guc=2
a los
parámetros de núcleo
para habilitar la carga del firmware de GuC y HuC. Alternativamente, si
initramfs
ya incluye el módulo
i915
(vea
Kernel mode setting#Early KMS start
), puede establecer estas opciones mediante un archivo en
/etc/modprobe.d/
, e.g.:
/etc/modprobe.d/i915.conf
options i915 enable_guc=2
Configuración de Xorg
Nota
Lo siguiente requiere
xf86-video-intel
.
Puede no existir la necesidad de configuraciones para ejecutar
Xorg
.
Sin embargo, si
Xorg
no inicia (y para tomar ventaja de algunas opciones del controlador) puede crear un archivo de configuración para Xorg similar al mostrado debajo:
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
  Identifier "Intel Graphics"
  Driver "intel"
EndSection
Opciones adicionales son añadidas por el usuario en nuevas líneas debajo de
Driver
.
Para un listado completo de opciones, vea el manual
intel(4)
.
Nota
Puede que requiera añadir más dispositivos que el mostrado anteriormente. Esto será indicado donde sea necesario.
AccelMethod
Puede que necesite indicar
Option "AccelMethod"
al momento de crear el archivo de configuración, las opciones clásicas son
UXA
,
SNA
(predeterminado) y
BLT
.
Si experimenta problemas con la opción predeterminada
SNA
(e.g. gráficos pixelados, texto corrupto, etc), intente utilizar
UXA
en su lugar, lo que puede lograr añadiendo la siguiente línea a su
archivo de configuración
:
Option      "AccelMethod"  "uxa"
Vea
intel(4)
bajo
Option "AccelMethod"
.
Opciones basadas en módulos
El módulo de kernel
i915
permite configurarse mediante las
opciones del módulo
. Algunas opciones del módulo impactan el ahorro de energía.
Una lista de todas las opciones junto a una breve descripción y valores predeterminados puede ser generada con la siguiente órden:
$ modinfo -p i915
Para verificar las opciones actualmente activadas, ejecute:
# systool -m i915 -av
Notará que muchas opciones contienen el valor predeterminado -1, resultando en un ahorro de energía predeterminado por chip. No obstante, es posible configurar un ahorro de energía más agresivo utilizando las
opciones del módulo
.
Advertencia
Diverger de los valor predeterminados marcará al núcleo como
tainted
. a partir de Linux 3.18 en adelante. Esto básicamente implica que utilizar otras opciones a las predeterminadas por chip es considerado experimental y no recibe soporte de los desarrolladores.
Compresión de framebuffer (enable_fbc)
Hacer uso de compresión Framebuffer (FBC) puede reducir el consumo de energía y a su vez reducir el ancho de banda requerido para los refrescos de pantalla.
Para habilitar FBC utilice
i915.enable_fbc=1
como
parámetro de kernel
o establézcalo en
/etc/modprobe.d/i915.conf
:
/etc/modprobe.d/i915.conf
options i915 enable_fbc=1
Nota
La compresión Framebuffer puede no ser fidedigna o no estar disponible en generaciones de GPU Intel anteriores a Sandy Bridge (generación 6). Esto resulta en mensajes registrados al diario del sistema similares al siguiente:
kernel: drm: not enough stolen space for compressed buffer, disabling.
Habilitar la compresión frame buffer en CPUs anteriores a Sandy Bridge resulta en interminables mensajes de error:
# dmesg
[ 2360.475430] [drm] not enough stolen space for compressed buffer (need 4325376 bytes), disabling
[ 2360.475437] [drm] hint: you may be able to increase stolen memory size in the BIOS to avoid this
La solución a esto es desactivar la compresión frame buffer, lo que subirá el consumo energético de forma imperceptible (al rededor de 0.06 W). Para deshabilitarlo añada
i915.enable_fbc=0
a las líneas de parámetro del núcleo. Mayor información en los resultados de compresión deshabilitada pueden ser encontrados
aquí
.
Fastboot
La meta de Intel Fastboot es preservar el frame-buffer del modo en que fue establecido por la BIOS o el
gestor de arranque
para evitar parpadeos hasta que
Xorg
comience
[3]
.
Para habilitar fastboot, establezca
i915.fastboot=1
como
parámetro de núcleo
o establézcalo en
/etc/modprobe.d/i915.conf
:
/etc/modprobe.d/i915.conf
options i915 fastboot=1
Advertencia
Este parámetro no está habilitado de forma predeterminada y puede causar problemas con algunos sistemas antiguos (anteriores a Skylake).
[4]
Soporte para virtualización de targeta gráfica Intel GVT-g
Vea
Intel GVT-g
para detalles.
Consejos y trucos
Ajuste del modo de escalado
Esto puede ser resultar de utilidad para algunas aplicaciones a pantalla completa.
$ xrandr --output LVDS1 --set PANEL_FITTING
param
donde
param
puede ser:
center
: la resolución será mantenida exactamente como fue definida, sin realizar un escalado,
full
: escala la resolución de modo que utiliza la totalidad de la pantalla o
full_aspect
: escala la resolución al máximo posible, pero mantiene la relación de aspecto.
Si no funciona, intente lo siguiente:
$ xrandr --output LVDS1 --set "scaling mode"
param
donde
param
puede ser
"Full"
,
"Center"
o
"Full aspect"
.
Nota
Esta opción no funciona actualmente en monitores externos (e.g. VGA, DVI, HDMI, DP).
[5]
Decodificación de H.264 en GMA 4500 por aceleración de hardware
El paquete
libva-intel-driver
sólo provee decodificación MPEG-2 acelerada por hardware para las series de GPU GMA 4500. El soporte de decodificación de H.264 es mantenido en una rama g45-h264 separada, que puede ser utilizada instalando el paquete
libva-intel-driver-g45-h264
AUR
[
enlace roto
: package not found]
. No obstante, note que este soporte es experimental y su desarrollo ha sido abandonado. Utilizar VA-API con este controlador en las series de GPU GMA 4500 bajará la carga de la CPU, pero puede no otorgar una reproducción suave como lo haría el método de reproducción sin aceleración por hardware. Pruebas utilizando mplayer mostraron que la utilización de vaapi para reproducir videos codificados con H.264 a una resolución de 1080p redujeron a la mitad la carga en la CPU (comparado con la superposición XV), pero resultaron en una reproducción muy agitada; mientras que a una resolución de 720p funcionó razonablemente bien
[6]
. Ajustar una mayor asignación de memoria ram en la bios resulta en una considerablemente mejor reproducción decodificada por hardware. Inclusive la h264 a 1080p funciona bien una vez lo anterior es realizado. Una reproducción suave (1080p/720p) funciona tambien con
mpv-git
AUR
en combinación con
ffmpeg-git
AUR
y
libva-intel-driver-g45-h264
AUR
[
enlace roto
: package not found]
.
Controlador antiguo de OpenGL (i965)
A partir de Mesa 19.2, un nuevo controlador OpenGL, Iris, está disponible para pruebas. En Mesa 20.0, el controlador Iris fue promovido a ser el predeterminado para Gen8+. Ciertas aplicaciones se ejecutan más rápido con él. Puede desactivarlo y regresar al antiguo controlador i965 ajustando la
variable de entorno
MESA_LOADER_DRIVER_OVERRIDE=i965
antes de empezar cualquier aplicación OpenGL. Este ajuste no afecta las aplicaciones de Vulkan.
Advertencia
Reporte bugs y regresiones relacionadas con el controlador Iris
aquí
.
Anulando la versión de OpenGL reportada
La
variable de entorno
MESA_GL_VERSION_OVERRIDE
puede ser utilizada para anular la versión de OpenGL reportada a cualquier aplicación. Por ejemplo, ajustar
MESA_GL_VERSION_OVERRIDE=4.5
reportará OpenGL 4.5.
Advertencia
Puede utilizar esta variable para reportar cualquier versión conocida de OpenGL, incluso si no es soportada por la GPU. Algunas aplicaciones ya no se quebrarán, otras comenzarán a hacerlo (probablemente no sea de su preferencia establecer esta variable como global).
Ajustar brillo y gamma
Vea
Backlight
.
Solución de problemas
Desgarro
El método de aceleración SNA causa desgarros en algunas máquinas. Para arreglarlo, habilite la opción
"TearFree"
en el controlador añadiendo la siguiente línea a su
archivo de configuración
:
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
  Identifier "Intel Graphics"
  Driver "intel"

  Option "TearFree" "true"
EndSection
Vea el
reporte original de bug
para mayor información.
Nota
Esta opción puede no funcionar cuando
SwapbuffersWait
está establecido como
false
.
Esta opción puede incrementar considerablemente la asignació de memoria y reducir el rendimiento.
[7]
Esta opción es problemática para aplicaciones sensibles a la sincronización vsync, como
Super Meat Boy
.
Esta opción no funciona con el método de aceleración UXA, solamente con SNA.
Deshabilitar la sincronización vertical (VSYNC)
De utilidad cuando:
Chromium/Chrome presenta retrasos y un rendimiento lento debido a la GPU y se ejecuta con suavidad con la bandera --disable-gpu
glxgears no muestra el rendimiento deseado
El controlador de intel utiliza
Triple Buffering
[
enlace roto
2023-07-30]
para sincronización vertical, esto permite un rendimiento total y evita el desgarro. Para desactivar la sincronización vertical (e.g para una evaluación comparativa) utilice este
.drirc
en su directorio de usuario:
~/.drirc
<device screen="0" driver="dri2">
	<application name="Default">
		<option name="vblank_mode" value="0"/>
	</application>
</device>
Nota
No utilice
driconf
AUR
[
enlace roto
: package not found]
para crear este archivo. No funciona correctamente y establecerá el controlador equivocado.
Problemas con DRI3
DRI3
es la versión predeterminada de DRI en
xf86-video-intel
. En algunos sistemas esto puede causar problemas como
este
. Para regresar a
DRI2
añada la siguiente línea a su
archivo de configuración
:
Option "DRI" "2"
Para el controlador
modesetting
, este método para deshabilitar DRI3 no funciona. En su lugar, puede establecer la variable de entorno
LIBGL_DRI3_DISABLE=1
.
Corrupción en la fuente y pantalla de aplicación GTK (falta glyphs después de suspender/resumir)
Si presenta la falta de fuente glyphs en aplicaciones GTK, la siguiente solución puede ayudar.
Edite
/etc/environment
para añadir la siguiente línea:
/etc/environment
COGL_ATLAS_DEFAULT_BLIT_MODE=framebuffer
Véase también
FreeDesktop bug 88584
.
Pantalla blanca durante inicio del sistema, durante "Loading modules"
Si está utilizando el "inicio retrasado" de KMS y la pantalla se va a negro durante "Loading modules", puede ayudar añadir
i915
y
intel_agp
a initramfs. Vea la sección
Kernel mode setting#Early KMS start
.
Alternativamente, anexar el siguiente
parámetro de núcleo
también funciona:
video=SVIDEO-1:d
Si necesita una salida de video mediante VGA, entonces intente lo siguiente:
video=VGA-1:1280x800
X se congela/quebra con el controlador de intel
Algunos problemas con X quebrándose, la GPU colgándose, o problemas relacionados con X congelándose, pueden ser solucionados deshabilitando la utilización de la GPU con la opción
NoAccel
; añada la siguientes líneas a su
archivo de configuración
:
Option "NoAccel" "True"
Alternativamente, intente deshabilitar solamente la aceleración en 3D con la opción
DRI
:
Option "DRI" "False"
Baytrail se congela completamente
Si está utilizando el núcelo > 3.16 en la arquitectura Baytrail y encuentra congelamientos arbitrarios del sistema, la siguiente opción de núcleo es una solución provisoria hasta que
este bug
sea arreglado en el núcleo linux.
intel_idle.max_cstate=1
Este es originalmente un bug de la CPU Intel que puede ser provocado por cierta transición c-state. También puede ocurrir con el núcleo linux 3.16 o Windows, aunque aparentemente esto rara vez ocurre. La opción de núcleo va a prevenir el congelamiento al evitar las transiciones c-state, pero también resultará en un incremento del consumo energético.
Añadir resoluciones no detectadas
Este problema es cubierto en la página de
Xrandr
.
Backlight no es ajustable
Si después de resumir desde una suspensión, los atajos de teclado para cambiar el brillo de pantalla no surten efecto, revise su configuración con la estipulada en el artículo
Backlight
.
Si el problema persiste, intente uno de los siguientes
parámetros de núcleo
:
acpi_osi=Linux
acpi_osi="!Windows 2012"
acpi_osi=
También asegúrese que no está utilizando el modo fastboot (el parámetro de núcleo i915.fastboot), es
conocido
por quebrar los controles de backlight.
Corrupción o falta de respuesta en Chromium y Firefox
Si experimenta corrupción, falta de respuesta, retrasos o un rendimiento lento en Chromium y/o Firefox algunas soluciones posibles son:
Establecer el AccelMethod a "uxa"
Deshabilitar VSYNC
Habilitar la opción TearFree
Deshabilitar "DRI" y el método de aceleración (probado en Intel Iris décima generación):
Option "NoAccel" "True"
Option "DRI" "False"
Núcleo se quebra en versión 4.0+ con chips Broadwell/Core-M
Segundos después de la carga de X/Wayland la máquina se congela en su totalidad y journalctl registra un quiebre en el núcleo haciendo referencia a la tarjeta gráfica de Intel como puede verse a continuación:
Jun 16 17:54:03 hostname kernel: BUG: unable to handle kernel NULL pointer dereference at           (null)
Jun 16 17:54:03 hostname kernel: IP: [<          (null)>]           (null)
...
Jun 16 17:54:03 hostname kernel: CPU: 0 PID: 733 Comm: gnome-shell Tainted: G     U     O    4.0.5-1-ARCH #1
...
Jun 16 17:54:03 hostname kernel: Call Trace:
Jun 16 17:54:03 hostname kernel:  [<ffffffffa055cc27>] ? i915_gem_object_sync+0xe7/0x190 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffffa0579634>] intel_execlists_submission+0x294/0x4c0 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffffa05539fc>] i915_gem_do_execbuffer.isra.12+0xabc/0x1230 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffffa055d349>] ? i915_gem_object_set_to_cpu_domain+0xa9/0x1f0 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffff811ba2ae>] ? __kmalloc+0x2e/0x2a0
Jun 16 17:54:03 hostname kernel:  [<ffffffffa0555471>] i915_gem_execbuffer2+0x141/0x2b0 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffffa042fcab>] drm_ioctl+0x1db/0x640 [drm]
Jun 16 17:54:03 hostname kernel:  [<ffffffffa0555330>] ? i915_gem_execbuffer+0x450/0x450 [i915]
Jun 16 17:54:03 hostname kernel:  [<ffffffff8122339b>] ? eventfd_ctx_read+0x16b/0x200
Jun 16 17:54:03 hostname kernel:  [<ffffffff811ebc36>] do_vfs_ioctl+0x2c6/0x4d0
Jun 16 17:54:03 hostname kernel:  [<ffffffff811f6452>] ? __fget+0x72/0xb0
Jun 16 17:54:03 hostname kernel:  [<ffffffff811ebec1>] SyS_ioctl+0x81/0xa0
Jun 16 17:54:03 hostname kernel:  [<ffffffff8157a589>] system_call_fastpath+0x12/0x17
Jun 16 17:54:03 hostname kernel: Code:  Bad RIP value.
Jun 16 17:54:03 hostname kernel: RIP  [<          (null)>]           (null)
Esto puede arreglarse deshabilitando el soporte a execlist, el cual fue cambiado a predeterminado en el núcleo 4.0. Añada el siguiente
parámetro de núcleo
:
i915.enable_execlists=0
Esto es conocido por estar quebrado hasta al menos el núcleo 4.0.5.
Retraso en el invitado Windows
La salida de video del invitado Windows en VirtualBox algunas veces se cuelga hasta que el anfitrión fuerza una actualización de pantalla (e.g. moviendo el cursor). Quitando la opción
enable_fbc=1
arregla el problema.
Parpadeo de la pantalla
Panel Self Refresh (PSR), una característica para el ahorro de energía utilizada por la iGPU de Intel es conocida por causar pestañeos en algunas instancias
FS#49628
FS#49371
FS#50605
. Una solución temporal es deshabilitar esta función utilizando el
parámetro de núcleo
i915.enable_psr=0
.
OpenGL 2.1 con el controlador i915
La actualización de
mesa
desde la versión 13.x a la versión 17 puede quebrar el soporte para OpenGL 2.1 en GPUs Intel de tercera generación (GMA3100, véalo
aquí
), como es descrito en este
artículo
, revirtiéndolo a OpenGL 1.4. Sin embargo, esto puede ser restaurado manualmente ajustando las opciones
/etc/drirc
o
~/.drirc
del siguiente modo:
/etc/drirc
<driconf>
...
    <device driver="i915">
        <application name="Default">
            <option name="
stub_occlusion_query
" value="
true
" />
            <option name="
fragment_shader
" value="
true
" />
        </application>
    </device>
...
</driconf>
Nota
La razón de este retroceso fue la mala experiencia de Chromium y otras aplicaciones. Si es necesario, puede editar el archivo drirc en un estilo específico para cada aplicación, vea
aquí
, para deshabilitar gl2.1 en el ejecutable de chromium, por ejemplo.
Problema de KMS: la consola está limitada a un área pequeña
Uno de los puertos de video de baja resolución puede estar habilitado en el arranque, lo que está causando que la consola utilice un área reducida de la pantalla. Para arreglarlo, deshabilite explícitamente el puerto con un ajuste de módulo i915 con
video=SVIDEO-1:d
en el parámetro de línea de órden del núcleo en el gestor de arranque. Vea
parámetros de núcleo
mayor información.
Si aquello no funciona, intente deshabilitar TV1 o VGA1 en lugar de SVIDEO-1. Los nombre de puertos de video pueden ser listados con
xrandr
.
Colores desgastados (problemas con el rango de colores)
La propiedad "Broadcast RGB" en el controlador de Intel define un rango de color que puede ser utilizado por el monitor; puede ser "Limited 16:235" (que limita el rango de color para algunas pantallas que no pueden procesar correctamente las señales de rango de color completas) y "Full". Desde el núcleo 3.9, la nueva propiedad predeterminada "Automatic" intenta determinar si la pantalla soporta el rango de colores total, y si no lo detecta/falla el rango de color se establece en "Limited 16:235". Si una falla en la detección limita el rango de colores, esto resulta en colores desgastados y en grises ennegrecidos. En algunas pantallas/conectores, a pesar de que el rango total de colores es soportado correctamente, la detección automática falla y establece el rango de colores limitado (
reporte de upstream bug, núcleo 4.18-4.20
).
Puede establecer el ajuste de rango de color deseado forzosamente ejecutando
xrandr --output <OUT> --set "Broadcast RGB" "Full"
(reemplace
<OUT>
con la salida de dispositivo apropiada, listada ejecutando
xrandr
). No hay una forma de volver este ajuste persistente en
xorg.conf
.
Véase también
https://01.org/linuxgraphics/documentation
[
enlace roto
2023-09-16]
(incluye una lista de hardware soportado).