25 de abril de 2009

Eliminando la mitad del driver de Intel

Via Phoronix, leo este recomendable post del blog de Keith Packards. En él explica los cambios radicales que ha sufrido el driver para chips gráficos Intel en los últimos tiempos, en los que se ha rediseñado casi por completo todo el "stack" gráfico de Linux. Sin embargo, parece que mantener el soporte de ambos sistemas, el viejo y el nuevo, ha causado problemas de estabilidad y rendimiento. Por ello han tomado la decisión de eliminar en las próximas versiones todo el soporte del antiguo sistema, lo cual parece ser que reducirá el tamaño del driver...¡en un 50% o más!

Gloria a los programadores de Intel.

2 comentarios:

  1. Que susto, por un momento creía que nos quedábamos sin soporte para las antiguas gráficas intel xD

    El viejo sistema es feo, inseguro e inestable. Su pérdida no hará que llore ;-)

    ResponderEliminar
  2. En realidad es justamente al revés, el mantener la vieja y la nueva solución fue una decisión que se adoptó precisamente para evitar las múltiples regresiones de rendimiento y estabilidad inherentes a una nueva arquitectura que aunque mucho más versátil y eficiente, permanecía incompleta para todas las combinaciones de drivers (teniendo en cuenta la combinación componente kernel, componente user-space) y hardware, lo cual podría suponer una autentica odisea para toda esa base de usuarios que hasta ese momento contaban con una stack, no tan versátil y eficiente, pero al menos totalmente funcional.
    Esta es una decisión admirable por parte del equipo de desarrollo, ya que supuso un enorme trabajo de mantenimiento extra al poseer 2 stacks que seguir desarrollando y manteniendo, y que ahora por fin supone un punto de inflexión, al terminar de incluir todos los elementos restantes en esta nueva stack (KMS+DRI2+UXA), lo cual la permite operar de manera equivalente o superior a la antigua en todas las combinaciones. Y una vez en esta posición, abre la puerta a la ansiada eliminación del mantenimiento de la antigua stack, para pasar ahora a centrarse únicamente en resolver los bugs de la nueva, eso si... hay que tener en cuenta que por delante queda una laboriosa tarea que tardará en estabilizarse del todo para cualquier tipo de hardware, pero ahora con la confianza de que no van a existir regresiones potenciales derivadas de la ausencia de elementos como GEM en el núcleo al usar UXA (en el caso de que los usuarios por alguna causa no usen o puedan usar un kernel con soporte GEM).

    #deabru

    ¿El sistema es feo? ¡Si estamos hablando de los drivers! Jejeje, hasta ahora no me había planteado mirar la belleza en ellos ;-)
    Por otro lado, hay que contar con que DRI2 va a ser más lento que DRI1, ya que ahora todas las aplicaciones OpenGL escriben en bufferes offscreen en vez de escribir directamente en el frontbuffer, así que... también debemos andar con cuidado a la hora de difundir la idea de eficiencia, habrá cuestiones que sean más eficientes como la aceleración 2D, y tendremos más versatilidad, al poder tener aplicaciones 3D corriendo bajo un gestor de ventanas con composición, algo imposible antes... pero también hay que tener en cuenta que estas ventajas vendrán a costa de un precio, IMHO asumible ;-)

    ResponderEliminar