El próximo Linux 7.4 continúa acumulando mejoras importantes para equipos con hardware AMD. Entre ellas aparece PerfOpt, una nueva optimización destinada a reducir la sobrecarga de la IOMMU cuando una GPU integrada accede directamente a la memoria del sistema.
El cambio todavía debe integrarse definitivamente en el kernel, cuya llegada se espera para finales de octubre o principios de noviembre, pero las primeras pruebas muestran resultados especialmente interesantes. En un sistema AMD Strix Halo, determinadas cargas locales con modelos de lenguaje han registrado mejoras de rendimiento de entre el 18% y el 23%, aunque ese resultado no puede extrapolarse automáticamente a todas las iGPU ni a cualquier aplicación.
PerfOpt evita parte del trabajo de traducción realizado por la IOMMU
La IOMMU actúa como intermediaria entre determinados dispositivos de entrada y salida y la memoria del sistema, controlando qué regiones pueden utilizar y realizando traducciones entre diferentes espacios de direcciones.
PerfOpt permite que determinadas GPU integradas consideradas de confianza accedan directamente a la memoria sin realizar la traducción habitual de direcciones GPA a SPA. La IOMMU continúa aplicando los permisos de lectura y escritura correspondientes, pero evita parte del procesamiento relacionado con esas traducciones.
En la práctica, esto busca reducir la sobrecarga introducida durante los accesos de la iGPU a la memoria compartida, algo especialmente relevante en procesadores donde CPU y GPU utilizan físicamente el mismo conjunto de memoria.
La mejora puede beneficiar sobre todo a cargas sensibles a latencia, ancho de banda o un gran número de accesos a memoria, aunque el impacto dependerá considerablemente de cómo utilice cada aplicación la GPU integrada.
AMDGPU solo activará la función bajo determinadas condiciones
PerfOpt no elimina de forma general la IOMMU ni modifica automáticamente el comportamiento de cualquier dispositivo conectado al sistema. Los propios controladores tienen que solicitar explícitamente el uso de esta optimización.
En el caso de AMD, el controlador AMDGPU podrá activarla cuando la GPU integrada ya funcione en modo identidad, una configuración donde las direcciones utilizadas por el dispositivo corresponden directamente con las direcciones físicas del sistema.
Esto evita realizar traducciones que, en determinadas circunstancias, no aportarían una ventaja práctica, pero sí introducirían trabajo adicional durante cada acceso a memoria.
También existirá un parámetro del módulo para mantener PerfOpt desactivado, incluso cuando la GPU se encuentre en ese modo, permitiendo conservar el comportamiento anterior si el usuario o administrador lo considera necesario.
Strix Halo mejora hasta un 23% en determinadas cargas con modelos de lenguaje
Las primeras pruebas realizadas sobre una APU AMD Strix Halo muestran uno de los escenarios donde PerfOpt puede tener un impacto considerable: la ejecución local de modelos de lenguaje utilizando la GPU integrada.
En esos ensayos se han observado incrementos comprendidos aproximadamente entre el 18% y el 23%, una diferencia demasiado grande como para atribuirla únicamente a variaciones normales entre ejecuciones.
El resultado tiene sentido en una plataforma como Strix Halo, donde la GPU integrada puede acceder a una gran cantidad de memoria del sistema y utilizarla para modelos de IA que superarían fácilmente la capacidad disponible en muchas GPU dedicadas convencionales.
Sin embargo, la mejora corresponde a unas cargas, hardware y condiciones concretas. PerfOpt no implica que los juegos, aplicaciones gráficas o cualquier otro programa vayan a ganar automáticamente un 20% de rendimiento con Linux 7.4.
Las APU pueden beneficiarse especialmente al compartir memoria con la GPU
Una GPU dedicada dispone normalmente de su propia memoria gráfica, mientras una iGPU depende de la memoria principal utilizada también por el procesador. Esto hace que la eficiencia de los accesos entre GPU y RAM tenga una importancia todavía mayor.
Reducir determinadas operaciones de traducción puede ayudar cuando la GPU mueve grandes cantidades de información o realiza accesos muy frecuentes a memoria, aunque el beneficio disminuirá en cargas limitadas principalmente por potencia de cálculo, frecuencia o ancho de banda físico.
Por ese motivo, PerfOpt podría resultar interesante para APU de escritorio, portátiles y dispositivos compactos basados en procesadores AMD, pero será necesario comprobar su comportamiento individualmente.
Las consolas portátiles basadas en hardware AMD, incluida Steam Deck, son un caso potencialmente interesante debido a sus limitaciones de consumo y rendimiento gráfico. Aun así, todavía no existe una fecha para que Valve adopte Linux 7.4 dentro de SteamOS, ni puede darse por hecho que la mejora observada en Strix Halo vaya a reproducirse con la misma magnitud en una APU diferente.
Las distribuciones con kernels recientes podrían recibir PerfOpt antes
La incorporación al kernel principal permitirá que PerfOpt termine llegando progresivamente a diferentes distribuciones Linux, aunque cada proyecto mantiene su propio calendario de actualización.
Distribuciones orientadas a adoptar rápidamente nuevas versiones del kernel, como CachyOS, podrían integrar la optimización antes que sistemas con ciclos de actualización más conservadores.
SteamOS sigue un proceso diferente porque Valve mantiene y adapta su propio kernel para Steam Deck, por lo que la publicación de Linux 7.4 no significará que PerfOpt aparezca inmediatamente en la consola portátil.
La mejora se suma además a otros cambios previstos para esta versión, entre ellos avances en HDMI con VRR, FreeSync y modo automático de baja latencia, reforzando especialmente el soporte gráfico del kernel.
PerfOpt puede ser especialmente importante para la IA local
El interés de esta optimización va más allá de conseguir algunos FPS adicionales. Las APU modernas están empezando a utilizarse para ejecutar modelos de IA aprovechando grandes cantidades de memoria compartida, un escenario donde reducir la sobrecarga de acceso puede tener un impacto considerable.
Strix Halo representa precisamente ese tipo de plataforma, combinando una GPU integrada relativamente potente con grandes capacidades de memoria accesibles desde el mismo sistema, algo muy diferente al funcionamiento tradicional de una iGPU destinada únicamente a escritorio o juegos ligeros.
Si las mejoras observadas se mantienen en más cargas, PerfOpt podría convertirse en una optimización particularmente útil para inferencia local, procesamiento de datos y aplicaciones que realizan accesos intensivos a memoria.
Linux 7.4 apunta así a introducir un cambio relativamente pequeño a nivel arquitectónico, pero con un impacto potencialmente importante en determinadas GPU integradas de AMD, especialmente cuando la sobrecarga de la IOMMU se convierte en uno de los factores que limitan el rendimiento.
Vía: TechPowerUp










