GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué hace realmente Libgl_always_indirect=1?

KDE SC 4.5.0 tiene algunos problemas con algunas tarjetas de video, incluida la mía. Tras el lanzamiento, Arch recomendó varias soluciones. Uno de los cuales fue

exportar “LIBGL_ALWAYS_INDIRECT=1” antes de iniciar KDE

Decidí que era el mejor y más fácil método. Pero no sé qué hace o cómo afecta a mi sistema. ¿Es más lento que el predeterminado? ¿Debería recordar vigilar el problema y desactivarlo más tarde una vez que se solucione?

Respuesta aceptada:

La representación indirecta significa que el protocolo GLX se usará para transmitir comandos OpenGL y X.org hará el dibujo real.

La representación directa significa que la aplicación puede acceder al hardware directamente sin comunicarse primero con X.org a través de mesa.

La representación directa es más rápida, ya que no requiere un cambio de contexto en el proceso X.org.

Aclaración: En ambos casos, el renderizado lo realiza la GPU (o, técnicamente, puede hacerlo la GPU). Sin embargo, en la representación indirecta, el proceso se ve así:

  1. El programa llama a un comando(s)
  2. Los comandos se envían a X.org mediante el protocolo GLX
  3. X.org llama al hardware (es decir, GPU) para dibujar

En representación directa

  1. El programa llama a un comando(s)
  2. Los comandos se envían a la GPU

Tenga en cuenta que debido a que OpenGL fue diseñado de tal manera que puede operar a través de la red, la representación indirecta es más rápida de lo que sería una implementación ingenua de la arquitectura, es decir, permite enviar una gran cantidad de comandos de una sola vez. Sin embargo, hay algunos gastos generales en términos de tiempo de CPU dedicado a los cambios de contexto y al protocolo de manejo.


Linux
  1. ¿Qué significa "-" (doble guión)?

  2. ¿Qué hace Echo $? ¿¿Hacer??

  3. Que hace . ~/.bashrc Comando Hacer??

  4. ¿Qué devuelve malloc(0)?

  5. ¿Qué hace ulimit -s ilimitado?

¿Qué significa chmod 777?

¿Qué hace Bamfdaemon?

¿Qué hace poll() con un tiempo de espera de 0?

¿Qué significa 'cd -'?

¿Qué hace 'bash -c'?

¿Qué hace exactamente init?