AMD se defiende: «Las RX 7900 son compatibles con Shader Pre-Fetching»
Estos días ha habido una gran controversia tras las afirmaciones y filtraciones de un importante leaker sobre el hecho de que los chips Navi 31 de las RX 7900 llegaban capados en una serie de características no habilitadas por AMD, donde además, el silicio elegido sería el encargado de limitar todo esto. AMD ha salido a la palestra afirmando y desmintiendo lo comentado, afirmando con ello que las RX 7900 son totalmente compatibles con Shader Pre-Fetching, pero esto no termina aquí...
Varios frentes abiertos tras la filtración del código de los drivers de Mesa3D, donde en el mismo se afirmaba que algunas GPU con la revisión A0 del chip Navi 31 estaban fuera del soporte para la característica Shader Pre-Fetching, en concreto, los chips CHIP_GFZ1100, CHIP_GFX1102 y CHIP_GFX1103.
RX 7900 y Shader Pre-Fetching, ¿un capado real y necesario?
So AMD decided to release Navi31 A0 silicon, which is known to have a non-working shader prefetch HW 🤦♂️🤦♂️🤦♂️🤦♂️https://t.co/cQTRKynN0B pic.twitter.com/CIdv6GUcYW
— Kepler (@Kepler_L2) December 14, 2022
Dado que AMD estaba siendo atacada y que la característica era vista por cualquiera a poco que se metiese en gitlab, la compañía ha querido especificar y aclarar todo este tema tan controvertido:
"Al igual que las generaciones de hardware anteriores, Shader Pre-Fetching es compatible con RDNA 3. El código en cuestión controla una función experimental que no estaba destinada a incluirse en estos productos y no se habilitará en esta generación de RX 7900. Esta es una práctica común de la industria para incluir funciones experimentales que permitan la exploración y el ajuste para la implementación en una futura generación de productos."
La afirmación del leaker y su argumento decían que el chip Navi 31 con stepping A0 no soportaba esta función, lo que significa que la primera revisión del chip no era compatible y dado que muchas GPU están catalogadas con este chip y revisión, la controversia estaba servida. La respuesta de AMD tira por tierra este argumento, pero deja abierta la segunda puerta del mismo, lo cual choca frontalmente con la declaración de los de Lisa Su.
Las RX 7900 usan chips A0, entonces, ¿cómo son compatibles?
El tema del stepping lleva décadas con nosotros tanto en CPU como en GPU. El problema es poder leerlo por software correctamente. GPU-Z, por ejemplo, no lee dicho stepping del chip en las RX 7000 o anteriores, porque lo que logra es acceder a la parte de la revisión del PCB para dicho chip, mostrando una información distinta a la que buscamos en este artículo.
Los compañeros de Tom's Hardware informan de que las fuentes de la industria consultadas ante este debate informan sobre el uso, efectivamente, de chips A0 para Navi 31, pero esto es una práctica común, porque ya pasó con las RX 6000 y RX 5000. Es, por decirlo de alguna forma, la primera revisión terminada de cualquier chip, tras la cual llegarán versiones optimizadas en diversas índoles, sea por un refinamiento del proceso litográfico o porque se añadan cambios por software.
Por lo tanto, si AMD está usando chips A0 en Navi 31, y su código para Mesa3D limita el uso de Shader Pre-Fetching en las RX 7900, pero al mismo tiempo la compañía dice que sí que se soporta... ¿Es simplemente un error en el código suministrado? ¿Acaso hace referencia a una función experimental anexa como tal? Quizás las fuentes de la industria se equivoquen y sean chips A1 y no A0, quizás el código fuente sea erróneo simplemente o ¿acaso AMD no está siendo sincera? Hay que tener en cuenta que, según lo visto, esto se extendería a Navi 32 y Navi 33 por los códigos de los chips filtrados: GFX1100, GFX1102 y GFX1103. Seguiremos informando sobre este tema.