cómo verificar qué controlador gráfico está en uso

4

En mi computadora portátil Linux tengo dos controladores compatibles con VGA (información de lshw):

  • producto: GK107 [GeForce GT 640M]
    identificación física: 0
    información del bus: pci @ 0000: 01: 00.0
    ..
    reloj: 33MHz
    capacidades: pm msi pciexpress vga_controller bus_master cap_list
    configuración: driver = nouveau latencia = 0
    recursos: irq: 16 memoria: f2000000-f2ffffff memoria: e0000000-efffffff memoria: f0000000-f1ffffff ioport: 3000 (tamaño = 128)
  • producto: procesador
    físico de tercera generación. Controlador gráfico. Identificación física del controlador : 2
    bus información: pci @ 0000: 00: 02.0
    reloj:
    capacidades de 33MHz : msi pm vga_controller bus_master cap_list
    configuración rom : driver = latencia i915 = 0
    recursos: irq: 44 memoria: f3000000- f33fffff memoria: d0000000-dfffffff ioport: 4000 (tamaño = 64)

lspci | grep VGA salida:

  • 00: 02.0 Controlador compatible con VGA: Controlador de gráficos del procesador Intel Corporation 3rd Gen Core (rev 09)
  • 01: 00.0 Controlador compatible con VGA: NVIDIA Corporation GK107 [GeForce GT 640M] (rev a1)

Cuando ejecuto glxgears, tengo el siguiente resultado (mientras se ejecuta la aplicación):

 Error de libGL: error al cargar el controlador: i965
 Error de libGL: intente nuevamente con LIBGL_DEBUG = detallado para más detalles.
 XIO: error fatal IO 11 (recurso temporalmente no disponible) en el servidor X ": 0"
       después de 2968 solicitudes (2966 procesadas conocidas) con 0 eventos restantes.

¿Entonces supongo que falla con Intel VGA?

He instalado los siguientes controladores:

  • intel-dri
  • xf86-video-intel 2.20 (X.org Intel i810 / i830 / i915 / 945G / G965 + controladores de video)
  • xf86-video-nouveau

1 ¿Cómo puedo verificar qué controlador utilizan los sistemas / programas ?

2 ¿Cómo puedo asegurar que se utilice un controlador específico ?

3 ¿Cómo puedo asegurarme de que el controlador i965 esté cargado, en lugar de i915 (desde la lshwsalida)? (lo apropiado para mi intel agp)

4 ¿Por qué lshwmuestra el reloj: 33MHz ? Para GeForce 640M debe ser de 625 MHz .

Estoy usando Linux Arch.

Robert Zaremba
fuente
1
bumblebee-project.org - nvidia optimus en linux
semana
1
El 915 parece estar en un bus PCI (pci @ 0000: 00: 02.0), no en un bus PCIe. Un bus PCI funciona a 33MHz o a 66MHz. (33Mhz para la mayoría de las PC, 66 Mhz para estaciones de trabajo, servidores, Apple G3 antiguo, etc.).
Hennes

Respuestas:

4
  1. Para averiguar qué controlador de gráficos utiliza actualmente el sistema / programas, use los dos comandos siguientes:

    grep LoadModule /var/log/Xorg.0.log
    grep Driver /etc/X11/xorg.conf
    

    El primero le dará una lista de todos los módulos cargados (o módulos que X intentó cargar), y el segundo le dará una lista de todos los dispositivos que están configurados para ejecutarse en su caja. La intersección de estos archivos le proporciona un controlador en ejecución.

  2. Defínalo en /etc/X11/xorg.conf

    No entrar en demasiados detalles, pero definir Driverlínea en Devicesección.

  3. Si está instalado y configurado /etc/X11/xorg.conf, se ejecutará. Tenga en cuenta que los controladores a veces son genéricos, lo que significa que nvidia es el controlador para todas las tarjetas nvidia, por lo que i915 podría ser el controlador apropiado para i965.

  4. @Hennes ya respondió en parte arriba. Parece que es un lshwerror mostrar la velocidad del bus PCI para cada dispositivo, ya sea en PCI o PCIe. Mira esta foto: NVidia GeForce GT220 (no es mía, pero tengo dos NVidias y lshw para ambas, dice 33MHz).

tallo
fuente
SpeedyGonsales, cuando intento el segundo comando, obtengo esto: grep: /etc/X11/xorg.conf: No existe tal archivo o directorio ... ¿Eso significa que no tengo nada instalado? ¿Qué tengo que hacer? Pensé que acababa de instalarlos usando howopensource.com/2012/10/…
fersarr