Resumen:
A medida que los procesadores de inteligencia artificial se vuelven más populares, cada vez más PC comienzan a estar equipadas con unidades de procesamiento de redes neuronales (NPU) utilizadas específicamente para la computación de IA. Sin embargo, este tipo de hardware se utiliza actualmente principalmente para la inferencia de modelos de IA locales y el procesamiento de imágenes, y los escritorios diarios de Windows todavía dependen principalmente de tarjetas gráficas integradas o tarjetas gráficas independientes para completar la representación de gráficos.

Recientemente, un equipo de desarrollo llamado labscommunity lanzó el proyecto de código abierto npu-driver, implementando con éxito un experimento bastante especial: permitir que Windows 11 complete la síntesis de gráficos de escritorio completamente a través de la NPU, en lugar de depender de la GPU tradicional. Aunque la velocidad de ejecución actual es extremadamente lenta, este resultado demuestra que la NPU, que originalmente se usaba principalmente para cálculos de inteligencia artificial, también puede realizar algunas tareas tradicionales de procesamiento de gráficos.
El proyecto tiene la licencia de código abierto Apache 2.0 y el código fuente se ha publicado públicamente en GitHub. El objetivo del equipo de desarrollo es explorar una pregunta: ¿Se puede transferir completamente el trabajo de renderizado del escritorio completado originalmente por la GPU a la NPU sin modificar la aplicación de Windows y el compositor de escritorio?
Para lograr este objetivo, los desarrolladores diseñaron un controlador de pantalla especial que intercepta las operaciones gráficas enviadas originalmente a la tarjeta gráfica por el Administrador de ventanas del escritorio de Windows (DWM) y luego convierte estas operaciones en tareas informáticas que la NPU puede manejar.
Las aplicaciones de Windows todavía se ejecutan de la forma tradicional. El Bloc de notas, el Explorador de archivos, el menú Inicio, Microsoft Edge y otras ventanas no requieren una adaptación especial a la NPU. Lo que realmente ha cambiado es la ruta de procesamiento de gráficos subyacente: las tareas de composición de escritorio realizadas originalmente por la GPU se han reasignado a la NPU.
En términos de implementación específica, npu-driver utiliza un controlador de modo de usuario Direct3D 10 personalizado para registrar operaciones gráficas como lotes de datos de fotogramas, que luego se entregan a la NPU Intel para su procesamiento a través de OpenVINO y un núcleo informático SHAVE dedicado. El sistema también implementa su propio módulo de procesamiento de rasterización, que es responsable de las operaciones gráficas tradicionales como el procesamiento de vértices, el muestreo de texturas y la combinación de capas.
Actualmente, esta solución se ha probado en portátiles equipados con procesadores Intel Panther Lake. Panther Lake utiliza la arquitectura NPU de quinta generación y la potencia informática de NPU de los procesadores relacionados alcanza entre 45 y 50 TOPS.
Sin embargo, los resultados experimentales también expusieron un problema muy obvio: el rendimiento.
La velocidad de actualización actual del escritorio de npu-driver es de solo 2 a 3 fotogramas por segundo, y algunas pruebas son incluso tan bajas como 0,6 fotogramas. En comparación, un escritorio estándar de Windows normalmente funciona a 60 fotogramas por segundo o más. Incluso si no hay juegos involucrados, simplemente mover ventanas, abrir el Explorador de archivos u operar la barra de tareas puede volverse extremadamente lento.
En otras palabras, esta solución demuestra actualmente que la NPU puede realizar tareas completas de síntesis de gráficos de escritorio, pero está lejos del nivel de rendimiento requerido para el uso diario.
Los desarrolladores pretenden aumentar la frecuencia de actualización a 30 cuadros por segundo, pero aún están lejos de ese objetivo.
Para evitar fallas graves durante el experimento, el equipo de desarrollo también diseñó un mecanismo de reversión automática. Cuando ocurre un error en el controlador NPU, o el usuario solicita activamente cambiar, el sistema puede reutilizar la tarjeta gráfica integrada o la tarjeta gráfica independiente para completar la representación de gráficos. Sin embargo, todavía existen algunas limitaciones para este mecanismo de recuperación. En algunas pruebas, no se pudieron restaurar completamente las posiciones de todas las ventanas de la aplicación.
El desarrollador del proyecto enfatizó que npu-driver es actualmente solo un prototipo de investigación, no un producto maduro para los consumidores. Requiere hardware Intel Panther Lake específico, controladores NPU compatibles y herramientas de desarrollo adicionales. Los usuarios comunes no pueden simplemente instalarlo y ejecutar un sistema Windows 11 sin GPU.
La importancia de este experimento no es en realidad demostrar que la NPU puede reemplazar a la tarjeta gráfica, sino explorar cómo redistribuir el trabajo de diferentes unidades informáticas dentro de los procesadores modernos.
Las CPU, GPU y NPU actuales tienen objetivos de diseño diferentes. La GPU es buena para la computación de gráficos paralelos a gran escala, mientras que la NPU está especialmente optimizada para operaciones matriciales y razonamiento de redes neuronales. Permitir que la NPU asuma tareas de renderizado de escritorio significa que los desarrolladores deben reconvertir los procesos de procesamiento de gráficos tradicionales en tareas adecuadas para unidades informáticas de redes neuronales, lo que en sí mismo es un proyecto bastante complejo.
Sin embargo, si la eficiencia del procesamiento se puede mejorar significativamente en el futuro, la NPU podría asumir algunas de las tareas de escritorio livianas realizadas originalmente por la GPU, liberando así recursos de la GPU para juegos, procesamiento de video o inferencia local de IA.
En la actualidad, npu-driver aún está lejos de ser realmente práctico, pero ha completado una interesante verificación técnica: el escritorio de Windows 11 no solo es capaz de realizar renderizado sintético a través de GPU tradicionales. La NPU en los procesadores modernos también puede hacerse cargo de este trabajo, pero el precio por rendimiento pagado en esta etapa es demasiado alto.
Más información:
https://github.com/labscommunity/npu-render
Comentarios