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í:
- El programa llama a un comando(s)
- Los comandos se envían a X.org mediante el protocolo GLX
- X.org llama al hardware (es decir, GPU) para dibujar
En representación directa
- El programa llama a un comando(s)
- 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.