sábado, 16 de diciembre de 2017

Soporte directo por parte de AMD - Pre-GCN y GCN

La evolución y mejora de AMD Enduro hasta el 2012. En adelante las mejoras están enfocadas en el ahorro de energía. Como pueden observar, existen muchas mejoras en el 2012, esto es debido a la publicación de un driver.
Desde que se fabricaron notebooks con mas de un GPU surge el problema de la administración de energía, cómo se mencionó anteriormente este detalle es solucionado tanto con el Modo Fijo como con el Dinámico; además, si poseemos un notebook con un dGPU AMD es normal querer actualizar los drivers gráficos para así obtener un mejor rendimiento, pero siempre que se realizaba no era posible hace unos años atrás.

En esta publicación les explicaré a modo de historia cuándo fue que obtuvimos soporte directo. Tener en cuenta que esta es una lectura opcional.
Iniciaremos con la siguiente pregunta:

I. ¿Cómo era la gestión de drivers gráficos antes de poseer soporte directo por parte de AMD?
Actualmente los usuarios son libres de instalar drivers de la misma AMD, aunque no siempre fue así.
Los fabricantes de notebooks poseían el control total de drivers, pero obviamente ellos no eran capaces de crearlos, es AMD quien fabrica los GPUs y ellos mismos son los que realizan pruebas de operatividad con un driver interno.
Se puede decir que AMD no incluyó los IDs de los GPUs en sus drivers oficiales para que así los fabricantes sean los encargados de añadir las líneas finales al driver proporcionado por AMD. De esta manera ellos poseen el control total y los usuarios no son capaces de instalar un driver oficial de AMD. Además, el paquete de instalación de AMD (proporcionado por el fabricante) incluía un driver Intel, es decir, estábamos aún más limitados. Esto es lo que se llama un "Driver Híbrido".

El párrafo anterior es lo que ocurrió, pero en verdad no tiene sentido que la misma AMD bloquee la instalación de drivers en GPUs que ellos mismos fabrican.

II. ¿Esta gestión de drivers es perjudicial?
Si consideramos el caso ideal donde los fabricantes publican drivers regularmente (3 o 4 al año), entonces no tendríamos quejas. Pero nunca se cumple lo ideal.
Hablando por experiencia y todo lo que llevo en el Foro HP, si los fabricantes lanzan un portátil en el año 2012, entonces en el 2013 ya no publican drivers, y si los publican siguen siendo del 2012.

En mi caso, compré el HP Pavilion g4-2082la (2012) y desde ese año no hay nuevas actualizaciones, los drivers de la página de HP están en una versión anticuada de Enduro, AMD hizo muchas mejoras pero el usuario no las puede disfrutar por las limitaciones que conlleva el servicio.

Entonces, la gestión de drivers por parte de los fabricantes es perjudicial, es más, en la actualidad sigue siendo muy mala.

III. ¿Existió un driver que mejoró el rendimiento en notebooks antes de poseer soporte directo?
Claro, fue un driver innovador.
AMD realizó una mejora extrema para Enduro con el lanzamiento de los "Catalyst 12.11 Enduro" a fines del 2012 (DriverVer = 9.010.0), y naturalmente los fabricantes demoraron en publicar este driver para Win7/8.x.
Diapositiva de lanzamiento del Catalyst 12.11, nuevas mejoras y rediseño de AMD Enduro.
Para vender notebooks nuevas los fabricantes no publicaron este driver para dar a entender que los equipos antiguos no daban para más.
Entonces, coincidentemente cuando salió Win8.0 todos notaron una mejoría en gráficos,  esto no es debido a que fue un sistema operativo optimizado, sino a que los fabricantes lanzaron sus equipos con un driver de la misma rama que el Catalyst 12.11 (DriverVer = 9.0.0.0), posteriormente el driver fue publicado.

Más mejoras para AMD Enduro, este fue un buen driver.
Naturalmente, Win8.0 en el 2012 recién ocupaba el mercado y el que reinaba era Win7, además por marketing los fabricantes no publicaron este driver para Win7.

Pueden verificar esto último con el HP Pavilion dv6-6c80la. Es más, con el HP Pavilion g4-2082la, este driver nunca fue publicado (que suerte la mía xD).

IV. ¿Algún tercero tomo iniciativa para solucionar el problema?
A esto quería llegar, la respuesta es SI.
Al ver la problemática, el equipo UnifL (Leshcatlabs) decidió poner manos a la obra e incluir los IDs faltantes en los drivers de oficiales de AMD además de las modificaciones necesarias para obtener un acoplamiento exitoso de GPUs. De esta manera pudimos disfrutar del Catalyst 12.11 y superiores.
Pero aún nos encontrábamos ante la otra problemática: los drivers seguían siendo híbridos.
Leshcatlabs, una gran salvación para notebooks con AMD.
Nota: Existieron otros terceros como LeeKM y Mahmoud Elfar pero dejaron de publicar, no obstante realizaron grandes contribuciones al equipo UnifL y se agradece su trabajo.
Nota: Actualmente Leshcatlabs no publica más drivers porque no cuentan con dGPUs GCN para realizar pruebas con los "Radeon Software", además los nuevos GPUs GCN no necesitan modificaciones de drivers y no existen drivers nuevos con mejoras significativas para Pre-GCN.

V. ¿Cuándo se dejó de lado los drivers híbridos?
Como mencioné, antes poseíamos un driver híbrido (un solo paquete que instala el Driver de Intel y AMD) esto se basaba en un solo archivo INF, ahora poseemos instalaciones independientes.
El equipo UnifL se dio cuenta que a partir del los Catalyst 13.4, AMD realizó grandes cambios, muchos ya podían instalar directamente los drivers oficiales de AMD y también utilizar un driver Intel, es decir instalaciones independientes, pero no fue hasta los Catalyst 13.9 que Leshcatlabs decidió dejar de lado los drivers híbridos.
Así que técnicamente, se dejó de lado los drivers híbridos con los Catalyst 13.9 UnifL porque no teníamos forma de verificarlo con los Catalyst oficiales.

Como pueden ver hay mucha historia y en mi opinión, los usuarios actuales de notebooks AMD tienen muchos privilegios a comparación de hace unos años.

VI. ¿Por qué AMD realizó cambios y permitió instalaciones independientes?
Esto con el fin de veneficiar a futuros sistemas operativos Windows, porque la instalación de drivers híbridos era muy inestable hasta el punto de obtener un BSOD y no saber quién tenía la culpa ¿AMD o Intel?
Además, WinUpdate distribuía drivers pero estos no eran compatibles en ese entonces causando el error "Código 43" al no acoplar bien los drivers. Por tal motivo, las instalaciones independientes se realizaron con el fin de preparar los drivers AMD para un futuro lanzamiento.
Driver "WDDM" proporcionado por Microsoft cuando aún no teníamos soporte directo y generaba "Código 43".
VII. ¿Con qué driver obtuvimos soporte directo?
Desde el "Catalyst 13.11 Mobility Beta 9.2" obtuvimos soporte directo, es decir, poder realizar la instalación de drivers de la misma AMD. AMD incluyó los IDs de GPUs de los fabricantes.
Con el lanzamiento de esta Beta, AMD añadió en el núcleo del driver la posibilidad de una instalación oficial y como se dejó de lado los "Drivers híbridos", entonces WinUpdate es capaz de proporcionar e instalar drivers superiores sin problemas y el usuario sin conocimiento de esta problemática también es capaz de realizarlo.

VIII. ¿Con los Catalyst 13.11 todo funcionaba correctamente?
La respuesta es NO.
Como era de esperar, AMD no realiza pruebas en todos los GPUs.

Utilizando el Modo Dinámico:Los drivers funcionaban correctamente para GPUs 7600M y superiores. En GPUs inferiores faltaban menús en el software de gestión gráfica "Catalyst Control Center" imposibilitando la personalización de Enduro, pero descartando dicho detalle todo funcionaba bien.
Este problema se solucionaría más tarde con un RegFIX.
Utilizando el Modo Fijo:La instalación era exitosa, el problema radicaba en que la pantalla controlada por el dGPU poseía un brillo muy bajo (casi pantalla apagada).
Este problema se solucionaría más adelante por el equipo UnifL.
Menús de AMD Enduro desaparecidos.
El problema del Modo Dinámico es fácilmente corregible y los drivers proporcionados por el equipo UnifL solucionaban el tema; pero el del Modo Fijo existió desde mucho antes y la culpa no era de AMD sino de Intel.

Palabras finales
Hola a todos, aquí quantum-phy en otra publicación. Esta vez demoré mucho en publicar porque compré una nueva laptop y estuve realizando pruebas de todo tipo. Para el que se pregunte, opté por Nvidia por el motivo que AMD no toma en cuenta a los usuarios de portátiles.
Como mencioné, esta es una publicación opcional que también se encuentra en el Foro de HP solo que está tan disperso que quise realizar una unificación.
Para comentar sobre los fabricantes, me da mucha rabia que hasta el momento sigan y sigan haciéndonos esperar por una actualización de drivers gráficos (tanto para AMD como Nvidia), es más, esta forma de actuar trajo consecuencias negativas a los usuarios en el pasado, porque AMD hace correcciones en su tecnología Enduro (como en los Catalyst 12.11) y no las podíamos disfrutar de forma oficial. Al final no tuvimos mas opción que recurrir a Leshcatlabs.
Los drivers híbridos me parece un gran acierto y también el soporte directo porque así dejamos de lado a los fabricantes y sus drivers anticuados, pero siempre teniendo cuidado con los drivers oficiales porque incluso en Nvidia pueden causar BSODs.
Quisiera agradecer al equipo UnifL por modificar los drivers de AMD y dejarnos disfrutar de sus mejoras, fui uno de los usuarios que instalaron sus drivers y comprobaron que Win7 puede ser igual y más rápido que Win8.x/10 en aplicaciones de renderizado 3D.
Más adelante publicaré sobre los dos problemas finales que planteo, dicho tema es obsoleto para GPUs GCN pero siempre existen usuarios que no poseen equipos modernos y necesitan la solución.
Espero que esta información sea de ayuda.
Un saludo.

Estado

=======================================
Recomiendo este post donde se recopila mucho contenido útil y en español para jugar en Linux.
-¿Jugar en Linux?, están locos estos pingüinos

[Linux] ¿Fidelity FX Super Resolution (FSR) en cualquier juego?
- Pruebas en el canal de YouTube

[Linux] GalliumToggle publicado en GitHub.
=======================================

quantum-phy (NestorBase11)

Videos Destacados

Entradas recientes