Gracias a Adreno Tools, ahora puedes actualizar el controlador de gráficos en tu dispositivo Android sin acceso de root. ¡Siga leyendo para saber más!
Los sitios web orientados a teléfonos inteligentes tienden a centrarse sólo en los dispositivos más recientes, pero una gran parte de los usuarios optan por no actualizar sus teléfonos por una razón u otra. Salvo que falle el hardware, es posible que muchos de estos dispositivos aún tengan años de uso por delante porque, para sus propietarios, todavía funcionan bien. Mientras ROM personalizadas puede mantener vivos los teléfonos inteligentes heredados durante años, puede ser una pesadilla para los modders mantener actualizados elementos como la cámara y los controladores de gráficos sin el soporte oficial del fabricante.
Actualización de controladores de GPU en Android
A diferencia del ecosistema de teléfonos inteligentes, actualizar el controlador de gráficos en su PC es algo en lo que siempre puedes pensar. Esto es posible gracias a la arquitectura modular de los controladores de hardware de PC, que permite a los usuarios avanzados Juegue con paquetes de controladores de código cerrado, o incluso opte por controladores de código abierto en lugar de los proporcionados por OEM. binarios. Sin embargo, en el caso de Android, las actualizaciones de controladores generalmente solo llegan a su teléfono junto con actualizaciones más importantes del sistema operativo.
Los controladores de GPU actualizables pueden resultar útiles para corregir errores, mejorar el rendimiento de los gráficos o agregar nuevas funciones de las API OpenGL o Vulkan. Hoy en día, Los teléfonos inteligentes son más grandes y más rápidos que nunca, lo que los convierte en el vehículo perfecto para jugar, por lo que trasladarles el diseño del controlador estilo PC hace que sea más fácil. sentido.
De hecho, en un esfuerzo por modularizar Android a través del Proyecto Treble, Google lo hizo posible. para empaquetar el controlador de gráficos configurado para una plataforma particular como una aplicación y actualizarlo a través de Play Almacenar. Desde entonces, varios OEM de Android tradicionales colaboraron con Google y los principales proveedores de GPU, incluidos ARM y Qualcomm, para distribuir actualizaciones para los controladores GPU de sus teléfonos independiente de versiones de software más grandes.
¿El diseño del controlador de gráficos actualizable reduce la fragmentación?
Sí, hasta cierto punto. Sin embargo, aún quedan algunas preguntas preocupantes sin respuesta. En primer lugar, el mecanismo de Google no proporciona una manera fácil de sustituir el controlador del proveedor de código cerrado por una oferta de código abierto de terceros. Por supuesto, puede reemplazar manualmente el paquete de controladores en la partición del proveedor del dispositivo de destino, siempre que tenga acceso raíz y de alguna manera conseguir los archivos necesarios, pero esa no es una solución ideal para muchos.
Luego viene la paradoja de estabilidad versus mejora. Android mantiene una disposición jerárquica a la hora de cargar el controlador de gráficos. Si bien se puede cambiar entre la versión instalada de fábrica y la versión actualizada más reciente usando Opciones de desarrollador => Preferencias del controlador de gráficos Por aplicación, en última instancia, todo se reduce a la decisión del OEM de cuándo impulsar la actualización del controlador de gráficos. Como resultado, un usuario final no puede utilizar compilaciones de controladores de última generación directamente del fabricante de SoC, ya que los OEM aún son responsables de implementar las actualizaciones.
Como se mencionó anteriormente, es posible actualizar los controladores de la GPU con acceso root, pero nada puede superar a un método que no sea root. Gracias al miembro senior de XDA estatutos, ahora tenemos una solución genial llamada Herramientas Adren que permite modificaciones o reemplazos del controlador de GPU sobre la marcha en Android, ¡y eso también sin root! La experiencia del desarrollador en migrar Android a Nintendo Switch ciertamente jugó un papel crucial en esta empresa, ya que todo el proyecto tiene su origen en Horizonte, un emulador de Nintendo Switch de código abierto y en desarrollo para Android.
Compañero desarrollador de Skyline Marca "Pixelylon" lanzó la idea de reemplazar la unidad de tiempo de ejecución a estatutos, que finalmente se materializó en Adreno Tools. Al ser una biblioteca desarraigada, Adreno Tools puede ayudar a cualquier aplicación normal a cargar controladores de GPU personalizados, manejar texturas BCn y redirigir operaciones de archivos para modificaciones más complejas en la familia de GPU Adreno de Qualcomm. Lo hace conectándose a las bibliotecas del sistema e intercambiando sin problemas el nuevo conductor. En particular, todavía no hay soporte para las GPU de Mali.
Dado que no hay limitación en el origen del controlador, los entusiastas también pueden cargar controladores de terceros a través de Adreno Tools. Esto es particularmente útil para aquellos que quieran probar Turnip, un controlador Vulkan de código abierto para hardware de gráficos Qualcomm Adreno que se incluye en el freedreno paraguas. Por ejemplo, ÉterSX2, el emulador de PlayStation 2 para Android ya utiliza Adreno Tools para brindar a los usuarios finales la elección de optar por Nabo en lugar del controlador OEM para un mejor rendimiento.
Herramientas Adreno en GitHub
¿Cómo me beneficio de esto?
Tenga en cuenta que el proyecto Adreno Tools se envía como una biblioteca de software. Significa que no puede encontrar un archivo APK precompilado que mágicamente permita usar una pila de controladores de gráficos externos en todo el sistema. En cambio, un desarrollador necesita incorporar la biblioteca a su proyecto, para que su aplicación pueda ofrecer la posibilidad de cargar archivos de controladores de gráficos actualizados o una alternativa de terceros sin root acceso. Así es exactamente como los desarrolladores de Skyline y AetherSX2 están utilizando Adreno Tools en este momento.
Desde la perspectiva del usuario final, Adreno Tools por sí solo no puede resolver todas las limitaciones de la implementación del controlador GPU de Android. Es simplemente una herramienta para que la comunidad de desarrolladores evite algunos de los mayores obstáculos de las actualizaciones de controladores de gráficos en dispositivos Android, eso es todo. Solo puede obtener sus beneficios a través de una aplicación, pero una actualización manual del controlador en todo el sistema aún requiere acceso de root.
¿Qué puedo hacer si tengo root?
Si es un usuario avanzado con un dispositivo rooteado, puede realizar una instalación forzada en todo el sistema de un controlador de gráficos actualizado en su dispositivo. Para hacerlo, debe extraer los archivos BLOB (Binary Large OBject) del controlador que contienen archivos binarios de software preempaquetados para interactuar con la GPU desde un paquete de firmware actualizado. Puede utilizar el firmware de un dispositivo diferente, pero el controlador debe corresponder a la misma familia de GPU del dispositivo de destino.
Después de extraer los archivos necesarios, puede empaquetarlos como un módulo Magisk e instalarlo en el teléfono inteligente de destino para reemplazar los controladores del proveedor existente sin sistema. Por supuesto, el proceso es un poco más complicado de lo que parece. Es posible que deba solucionar las incompatibilidades de interfaz entre los controladores heredados y actualizados, para lo cual sería necesario realizar ajustes.
"Calzar" es "cuñar (algo) o llenar un espacio". Esto es efectivamente lo que hace un desarrollador cuando escribiendo una corrección: agregan códigos adicionales para permitir que el BLOB interactúe con la plataforma que están trabajando con. Por suerte para nuestros lectores, desarrollador estatutos ya escribí una corrección para cerrar la brecha entre las diferentes revisiones de controladores Adreno, y puede encontrar controladores OpenGL y Vulkan flasheables listos para usar para Adren 500 y adreno 600 familia de GPU en nuestros foros.
¿Tiene curiosidad por conocer los beneficios de instalar manualmente un controlador de gráficos actualizado? Mishaal Rahman de Esper compartió una interesante comparación del rendimiento de la GPU en 3DMark desde un Snapdragon Google Pixel 3 XL con tecnología 845 y Android 12 con el controlador estándar versus un controlador más nuevo del Snapdragon 8 Generación 1:
Bastante fascinante, ¿no? Pero no olvidemos el equilibrio entre objetividad y relevancia. Si bien instalar un controlador de GPU actualizado con acceso de root tiene sus ventajas, ciertamente también tiene sus desventajas. No está destinado a principiantes y, además, manipular el dispositivo puede anular la garantía. Para empezar, necesita un gestor de arranque desbloqueado, lo que puede no ser factible en todos los escenarios.
Conclusión
Dadas las alternativas para la escena de modificación del controlador de GPU de Android en el pasado, la biblioteca Adreno Tools es un fantástico paso adelante, especialmente por su naturaleza desarraigada. Esperamos ver cómo el proyecto crece y madura en el futuro. ¡Asegúrate de probarlo y cuéntanos lo que piensas en los comentarios!
Fuente:Esper