El modelo de controlador de pantalla de Windows ( WDDM , [ 1 ] inicialmente LDDM como modelo de controlador de pantalla Longhorn y luego WVDDM en tiempos de Windows Vista) es la arquitectura de controlador gráfico para controladores de tarjetas de video que ejecutan versiones de Microsoft Windows a partir de Windows Vista . [ 2 ]
Es un reemplazo para el modelo de controlador de pantalla anterior de Windows 2000 y Windows XP XDDM/XPDM [ 3 ] y está dirigido a permitir un mejor rendimiento gráfico y nuevas funcionalidades y estabilidad gráficas. [ 2 ] Los controladores de pantalla en Windows Vista y Windows 7 pueden elegir adherirse a WDDM o a XDDM. [ 4 ] Sin embargo, con la eliminación de XDDM de Windows 8 , WDDM se convirtió en la opción unificada. [ 5 ] En Windows 2000 y Windows XP , XDDM/XPDM se basa en WDM .
WDDM proporciona la funcionalidad necesaria para renderizar el escritorio y las aplicaciones mediante Desktop Window Manager , un gestor de ventanas de composición que se ejecuta sobre Direct3D . También admite las nuevas interfaces DXGI necesarias para la gestión y creación básicas de dispositivos. La especificación WDDM requiere al menos una tarjeta gráfica compatible con Direct3D 9, y el controlador de pantalla debe implementar las interfaces del controlador de dispositivo para el entorno de ejecución de Direct3D 9Ex con el fin de ejecutar aplicaciones Direct3D antiguas; opcionalmente, puede implementar interfaces de entorno de ejecución para Direct3D 10 y versiones posteriores.
Funcionalidades habilitadas por WDDM
Los controladores WDDM habilitan áreas de funcionalidad que no eran proporcionadas uniformemente por los modelos de controladores de pantalla anteriores. Estas incluyen:
Memoria de vídeo virtualizada
En el contexto de los gráficos, la virtualización significa que los procesos individuales (en modo usuario ) no pueden ver la memoria de los procesos adyacentes, incluso mediante la inserción de comandos falsificados en el flujo de comandos. Los controladores WDDM permiten virtualizar la memoria de vídeo [ 6 ] y paginar los datos de vídeo desde la memoria de vídeo a la RAM del sistema o al archivo de paginación . En caso de que la memoria de vídeo disponible sea insuficiente para almacenar todos los datos y texturas de vídeo, los datos no utilizados se mueven a la RAM del sistema o al disco. Cuando se necesitan los datos intercambiados, se recuperan. La virtualización podía admitirse en cierta medida en modelos de controladores anteriores (como el modelo de controlador XP), pero era responsabilidad del controlador, en lugar de gestionarse en tiempo de ejecución.
Programación
El entorno de ejecución gestiona la planificación de contextos gráficos concurrentes. [ 7 ] Cada lista de comandos se coloca en una cola para su ejecución por la GPU , y puede ser interrumpida por el entorno de ejecución si llega una tarea más crítica y si aún no ha comenzado su ejecución. Esto difiere de los subprocesos nativos en la CPU, donde una tarea no puede ser interrumpida y, por lo tanto, puede tardar más de lo necesario y hacer que el ordenador parezca menos receptivo. Un algoritmo de planificación híbrido entre subprocesos nativos y ligeros con cooperación entre los subprocesos lograría un paralelismo perfecto. La planificación no es un concepto nuevo, pero anteriormente era responsabilidad de los desarrolladores de controladores individuales. WDDM intenta unificar la experiencia entre diferentes proveedores controlando la ejecución de las tareas de la GPU.
Compartir superficies Direct3D entre diferentes procesos
Una superficie gráfica Direct3D es el área de memoria que contiene información sobre las mallas texturizadas utilizadas para renderizar una escena 2D o 3D. WDDM permite compartir superficies Direct3D entre procesos . [ 8 ] De esta forma, una aplicación puede incorporar una malla creada por otra aplicación en la escena que está renderizando. Compartir texturas entre procesos antes de WDDM era difícil, ya que habría requerido copiar los datos de la memoria de vídeo a la memoria del sistema y luego de vuelta a la memoria de vídeo para el nuevo dispositivo.
Tolerancia a fallos mejorada


Si un controlador WDDM se bloquea o encuentra una falla, la pila de gráficos reiniciará el controlador. [ 2 ] [ 9 ] Se interceptará una falla del hardware gráfico y, si es necesario, se reiniciará el controlador.
Los controladores de Windows XP podían gestionar los fallos de hardware como mejor les pareciera, ya fuera notificándoselos al usuario o intentando recuperarse silenciosamente. En algunos casos, cuando el controlador de pantalla se podía detener de forma segura, Windows XP podía alertar sobre el fallo del controlador de pantalla y, al mismo tiempo, deshabilitar el controlador de vídeo, reduciendo así la resolución de pantalla a 640x480 con solo 16 colores. Con un controlador WDDM, lo más probable es que la resolución de pantalla no se vea afectada; todos los fallos de hardware provocan el reinicio del controlador y se notifica al usuario mediante una ventana emergente; esto unifica el comportamiento entre los distintos fabricantes.
Los controladores anteriores se implementaban completamente en modo kernel, mientras que WDDM se implementa parcialmente en modo usuario. Si el área de modo usuario falla con un error irrecuperable, como máximo provocará que la aplicación se cierre inesperadamente en lugar de generar una pantalla azul de error, como ocurría con los modelos de controladores anteriores.
WDDM también permite restablecer el hardware gráfico y que los usuarios actualicen los controladores sin necesidad de reiniciar el sistema. [ 2 ]
Limitaciones
El nuevo modelo de controlador requiere que el hardware gráfico sea compatible con Shader Model 2.0 como mínimo, ya que la canalización de funciones fijas ahora se traduce a sombreadores 2.0 . Sin embargo, según Microsoft, en 2009, solo entre el 1 y el 2 por ciento del hardware que ejecutaba Windows Vista utilizaba XDDM, [ 10 ] mientras que el resto ya era compatible con WDDM. También requiere otras características de hardware; por consiguiente, algunos dispositivos compatibles con SM 2.0, como la Intel GMA 900, no superan la certificación WDDM. [ 11 ]
Una de las limitaciones de la versión 1.0 del modelo de controlador WDDM es que no admite varios controladores en una configuración de múltiples adaptadores y múltiples monitores. Si un sistema de múltiples monitores tiene más de un adaptador gráfico que alimenta los monitores, ambos adaptadores deben usar el mismo controlador WDDM. Si se usa más de un controlador, Windows deshabilitará uno de ellos. [ 12 ] Esta es una limitación que data de cuando Windows Vista tenía el nombre en clave Windows "Longhorn". [ 13 ] WDDM 1.1 no tiene esta limitación. [ 14 ]
WDDM 1.0/1.1 no permite algunos modos que antes manejaba el controlador, como el modo de extensión (que estira el escritorio a través de dos monitores) [ 15 ] [ 16 ] aunque Dual View todavía está disponible. [ 12 ] [ 17 ]
Necesidad de un nuevo modelo de controlador de pantalla
Uno de los principales escenarios que permite el Modelo de Controlador de Pantalla de Windows (DWM) es el Administrador de Ventanas de Escritorio (DWM). Dado que las ventanas de escritorio y de aplicaciones gestionadas por DWM son aplicaciones Direct3D, el número de ventanas abiertas afecta directamente a la cantidad de memoria de vídeo necesaria. Al no existir un límite en el número de ventanas abiertas, la memoria de vídeo disponible puede resultar insuficiente, lo que requiere virtualización. Como el contenido de las ventanas que DWM compone para formar el escritorio final se genera mediante diferentes procesos, es necesario compartir la superficie entre procesos. Además, dado que puede haber otras aplicaciones DirectX ejecutándose junto con DWM en el escritorio gestionado por DWM, estas deben poder acceder a la GPU de forma compartida, lo que requiere planificación.
Si bien esto es cierto para la implementación de escritorio compuesto de Microsoft en Windows Vista, en teoría, un escritorio compuesto no necesita un nuevo modelo de controlador de pantalla para funcionar correctamente. Ya se habían implementado con éxito escritorios compuestos antes de Windows Vista en otras plataformas como Quartz , Compiz y WindowFX . El enfoque de Microsoft consistía en garantizar que WDDM ofreciera una experiencia unificada en diferentes GPU de múltiples proveedores, estandarizando sus características y rendimiento. Las funciones de software que faltaban en otros modelos de controlador podían considerarse irrelevantes mediante extensiones o con un modelo de controlador menos restrictivo o simplemente diferente.
Historia
WDDM 1.0
Windows Vista introdujo WDDM 1.0 como una nueva arquitectura de controlador de pantalla diseñada para ofrecer un mejor rendimiento, mayor fiabilidad y compatibilidad con nuevas tecnologías, incluido HDCP . El modo de suspensión híbrida , que combina la hibernación y la suspensión para una mayor estabilidad en caso de fallo de alimentación, también requiere WDDM. [ 2 ]
WDDM 1.1
Windows 7 admite importantes adiciones a WDDM conocidas como WDDM 1.1; los detalles de esta nueva versión se dieron a conocer en WinHEC 2008. Las nuevas características incluyen: [ 10 ]
- DXGI 1.1, que incluye el regreso de la aceleración 2D por hardware para su uso por GDI [ 18 ] (pero no por GDI+) y Direct2D / DirectWrite
- BitBlt , StretchBlt, TransparentBlt
- AlphaBlend , ColorFill
- Compatibilidad con fuentes ClearType
- Cambio de GPU sin cerrar sesión ni reiniciar
- Interfaz de controlador de dispositivo (DDI) de Direct3D 11
- Controlador de cliente instalable (ICD) de OpenGL
- DXVA-HD DDI [ 19 ]
- Superposición de vídeo por hardware DDI [ 20 ]
- Cifrado AES 128 opcional
- Decodificación opcional de contenido de vídeo cifrado
- Admite múltiples controladores en una configuración de múltiples adaptadores y múltiples monitores [ 10 ] [ 21 ]
- En Windows 7 , el DWM puede usar Direct2D 10 y Direct3D 10 con el controlador WDDM 1.1 [ 22 ].
La aceleración por hardware de las operaciones GDI y Direct2D/DirectWrite ayuda a reducir el consumo de memoria en Windows 7, ya que el motor de composición DWM ya no necesita mantener una copia en la memoria del sistema de todas las superficies utilizadas por GDI/GDI+, como en Windows Vista. [ 23 ] [ 24 ] [ 25 ]
DXGI 1.1, Direct3D 11, Direct2D y DirectWrite estuvieron disponibles con la Actualización de plataforma de Windows Vista ; sin embargo, GDI/GDI+ en Vista sigue dependiendo de la representación por software [ 26 ] y el Administrador de ventanas de escritorio sigue utilizando Direct3D 9Ex. [ 27 ]
Los controladores WDDM 1.1 son compatibles con versiones anteriores de la especificación WDDM 1.0; tanto los controladores 1.0 como los 1.1 se pueden usar en Windows Vista con o sin la Actualización de plataforma. [ 10 ]
WDDM 1.2
Windows 8 incluye WDDM 1.2 [ 28 ] [ 29 ] y DXGI 1.2. [ 29 ] [ 30 ] Las nuevas características se presentaron por primera vez en la conferencia Build 2011 e incluyen mejoras de rendimiento, así como compatibilidad con la renderización 3D estereoscópica y la reproducción de vídeo.
Otras características importantes incluyen la multitarea preventiva de la GPU con una granularidad más fina (búfer DMA, primitiva, triángulo, píxel o nivel de instrucción), [ 31 ] una huella de memoria reducida, un uso compartido de recursos mejorado y una detección y recuperación de tiempo de espera más rápidas. Los formatos de superficie de color de 16 bits (565, 5551, 4444) son obligatorios en Windows 8, y Direct3D 11 Video admite formatos de video YUV 4:4:4/4:2:2/4:2:0/4:1:1 con precisión de 8, 10 y 16 bits, así como formatos paletizados de 4 y 8 bits. [ 32 ]
WDDM 1.2 admite controladores WDDM de solo visualización y solo renderizado. Además, el controlador de pantalla básico de Microsoft [ 33 ] y el controlador de renderizado básico de Microsoft se basan en WARP , que reemplazó al controlador VGA en modo kernel .
WDDM 1.2 admite la aceleración de vídeo Direct3D 11 (D3D11VA), en la que se basan tanto el decodificador DXVA2 como el renderizador EVR . [ 34 ] Antes de WDDM 1.2, tanto el decodificador DXVA2 como el renderizador EVR se basaban en Direct3D 9.
En Windows 8 , el DWM puede usar Direct2D 11 y Direct3D 11 con el controlador WDDM 1.2.
WDDM 1.0/1.1 solo permite una programación de tareas rudimentaria utilizando la granularidad de "cola de lotes"; inicialmente se esperaban mejoras en la multitarea, así como en el cambio rápido de contexto y la compatibilidad con la memoria virtual , en las versiones denominadas provisionalmente WDDM 2.0 y WDDM 2.1, que se anunciaron en WinHEC 2006. [ 35 ] [ 36 ] [ 37 ]
WDDM 1.3
Windows 8.1 incluye WDDM 1.3 [ 38 ] y DXGI 1.3. [ 39 ] Las nuevas incorporaciones incluyen la capacidad de reducir el uso de memoria del adaptador DXGI, superposiciones de múltiples planos, cadenas de intercambio superpuestas y escalado de cadenas de intercambio, selección de subregión de backbuffer para la cadena de intercambio y presentación de cadena de intercambio de menor latencia. Las incorporaciones de características del controlador incluyen pantallas inalámbricas ( Miracast ), rangos de formato YUV , recursos entre adaptadores y capacidades de enumeración del motor de GPU. Mejoras en el rendimiento del núcleo gráfico.
WDDM 2.0
Windows 10 incluye WDDM 2.0, diseñado para reducir drásticamente la carga de trabajo del controlador en modo kernel para GPU que admiten direccionamiento de memoria virtual, [ 40 ] para permitir el paralelismo de subprocesos múltiples en el controlador en modo usuario y dar como resultado una menor utilización de la CPU. [ 41 ] [ 42 ] [ 43 ] [ 44 ] Windows 10 también incluye DXGI 1.4. [ 45 ]
La API Direct3D 12, anunciada en Build 2014 , requiere WDDM 2.0. La nueva API eliminará las tareas automáticas de administración de recursos y de canalización, y permitirá a los desarrolladores tomar el control total de bajo nivel de la memoria del adaptador y los estados de renderizado.
El modelo de controlador de pantalla de Windows 8.1 y Windows Phone ha convergido en un modelo unificado para Windows 10. [ 46 ]
Se implementa un nuevo modelo de memoria que proporciona a cada GPU un espacio de direcciones virtuales por proceso, lo que permite la memoria virtual de la GPU y la paginación de memoria de la GPU en WDDM 2.0. [ 47 ] WDDMv2 aún admite el direccionamiento directo de la memoria de vídeo para el hardware gráfico que lo requiere, pero esto se considera un caso heredado. Se espera que los fabricantes de hardware desarrollen nuevo hardware que admita el direccionamiento virtual. Se han realizado cambios significativos en el DDI para habilitar este nuevo modelo de memoria.
WDDM 2.1
La actualización de aniversario de Windows 10 (versión 1607) incluye WDDM 2.1, que admite Shader Model 6.0 (obligatorio para los niveles de características 12_0 y 12_1), [ 48 ] y DXGI 1.5, que admite HDR10 , un formato de gama amplia de alto rango dinámico de 10 bits [ 49 ] definido por ITU-T Rec. 2100 / Rec. 2020 , y frecuencias de actualización variables. [ 50 ]
WDDM 2.2
Windows 10 Creators Update (versión 1703) incluye WDDM 2.2, que está adaptado para realidad virtual , aumentada y mixta con renderizado estereoscópico para la plataforma Windows Mixed Reality , y DXGI 1.6. [ 51 ]
WDDM 2.3
Windows 10 Fall Creators Update (versión 1709) incluye WDDM 2.3. A continuación se muestra una lista de las nuevas características para el desarrollo de controladores de pantalla de Windows en Windows 10, versión 1709: [ 52 ]
- Shader Model 6.1 , que añade soporte para instanciación de vistas y semántica baricéntrica. [ 53 ]
- Las interfaces DDI de transformación de espacio de color de pantalla proporcionan un control adicional sobre las transformaciones de espacio de color aplicadas en el proceso de visualización posterior a la composición.
- La función de consultas de marcas de tiempo en la cola de copia de D3D12 permitirá a las aplicaciones realizar consultas de marcas de tiempo en las listas/colas de comandos COPY. Estas marcas de tiempo están diseñadas para funcionar de forma idéntica a las marcas de tiempo de otros motores.
- Integración mejorada de vídeo en Direct3D12 Runtime mediante: decodificación de vídeo acelerada por hardware, protección de contenido y procesamiento de vídeo.
WDDM 2.4
La actualización de Windows 10 de abril de 2018 (versión 1803) incluye WDDM 2.4. Las actualizaciones para el desarrollo de controladores de pantalla en Windows 10 versión 1803 incluyen las siguientes características [ 54 ] .:
- Shader Model 6.2 , que añade soporte para escalares de 16 bits y la capacidad de seleccionar los comportamientos con valores desnormalizados. [ 55 ]
- Extensión de la clase UMDF de visualización indirecta : el controlador puede pasar el SRM a la GPU de renderizado y tener un mecanismo para consultar la versión de SRM que se está utilizando.
- IOMMU ofrece soporte para el aislamiento de la GPU basado en hardware , lo que aumenta la seguridad al restringir el acceso de la GPU a la memoria del sistema.
- Compatibilidad con la paravirtualización de la GPU , lo que permite a los controladores de pantalla proporcionar capacidades de renderizado a entornos virtualizados de Hyper-V.
- Brightness , una nueva interfaz para admitir múltiples pantallas que se pueden configurar con niveles de brillo calibrados basados en nits.
- Cifrado de flujo de bits D3D11 , que expone CENC, CENS, CBC1 y CBCS con vectores de inicialización de 8 o 16 bytes.
- Histograma de decodificación de vídeo D3D11 y D3D12 , que permite aprovechar el hardware de función fija para el histograma y mejorar la calidad del mapeo de tonos en escenarios HDR/EDR.
- La decodificación de vídeo D3D12 ahora es compatible con Decode Tier II, lo que permite a las aplicaciones amortizar el coste de asignación y reducir el uso máximo de memoria durante el cambio de resolución.
- Nivel de recursos en mosaico y operaciones atómicas LDA , un nuevo nivel de compartición entre nodos para agregar soporte para instrucciones de sombreado atómicas que funcionan a través de nodos de adaptador vinculados (LDA), lo que permite implementar múltiples técnicas de renderizado de GPU como el renderizado de fotogramas divididos (SFR).
- Compatibilidad con tramado de GPU , lo que permite al sistema operativo solicitar explícitamente el tramado en escenarios donde se necesita una profundidad de bits efectiva mayor que la disponible físicamente en el enlace del monitor, por ejemplo, para HDR10 a través de HDMI 2.0.
- Anulación de la mejora del color posterior al procesamiento , que permite al sistema operativo solicitar al controlador que desactive temporalmente cualquier procesamiento posterior que mejore o altere los colores de la pantalla, para escenarios de aplicación específicos, con el fin de garantizar un comportamiento de color colorimétricamente preciso en la pantalla y coexistir de forma segura con las mejoras de color de pantalla propiedad del fabricante o del proveedor de hardware.
- Direct3D12 y Video , una nueva API y DDI, proporcionan acceso a la decodificación de vídeo acelerada por hardware, la protección de contenido y el procesamiento de vídeo.
- DisplayID , un nuevo DDI, diseñado para permitir que el descriptor DisplayID de VESA sea consultado desde una pantalla controlada por un adaptador gráfico.
- Datos de rendimiento de la GPU , una extensión para mostrar información sobre el hardware de la GPU, como la temperatura, la velocidad del ventilador, las velocidades de reloj de los motores y la memoria, el ancho de banda de la memoria, el consumo de energía y los voltajes.
- SupportContextlessPresent , una limitación del controlador para ayudar a los IHV a incorporar nuevos controladores.
- Mejoras en la compatibilidad con GPU externas/extraíbles en el sistema operativo , lo que proporciona una mejor compatibilidad con las GPU desmontables .
- Diagnóstico de pantalla , con cambios en la interfaz del controlador de dispositivo en modo kernel para permitir que el controlador de una pantalla informe eventos de diagnóstico al sistema operativo.
- Componentes de alimentación gráfica compartidos , que permiten que los controladores que no son gráficos participen en la gestión de energía de un dispositivo gráfico.
- Mejoras en las texturas compartidas , aumentando los tipos de texturas que se pueden compartir entre procesos y dispositivos Direct3D, y añadiendo compatibilidad con imágenes monocromáticas con una mínima copia de memoria.
WDDM 2.5
La actualización de Windows 10 de octubre de 2018 (versión 1809) incluye WDDM 2.5. [ 56 ] Las actualizaciones del desarrollo del controlador de pantalla en Windows 10, versión 1809, incluyen las siguientes características: [ 57 ]
- Shader Model 6.3 , que añade compatibilidad con el trazado de rayos DirectX12 (DXR). [ 58 ]
- Raytracing , para admitir el trazado de rayos acelerado por hardware en Direct3D 12.
- Requisitos universales para controladores : los controladores deberán asegurarse de que sus controladores en modo usuario de DirectX 11 y DirectX 12, así como otros DLL cargados por estos componentes, cumplan con la API universal.
- SRV-Only Tiled Resource Tier 3 , una nueva funcionalidad para recursos en mosaico que expone texturas de volumen dispersas sin necesidad de acceso desordenado ni compatibilidad con operaciones de destino de renderizado.
- Render Pass introduce el concepto de paso de renderizado en Direct3D 12, agregando nuevas API para ejecutarse en controladores existentes y permitiendo que los controladores en modo de usuario elijan la ruta de renderizado óptima sin una penalización importante de la CPU.
- Metacomandos , que añaden soporte de vista previa para DirectML , una biblioteca DirectX 12 de alto rendimiento y acelerada por hardware para aprendizaje automático. Con Windows 10 versión 1903 y posteriores, los metacomandos y DirectML son una parte estable de Windows. [ 59 ]
- La compensación de brillo HDR , una nueva función de aumento de brillo SDR, eleva el blanco de referencia del contenido SDR al valor deseado por el usuario, permitiendo que este se reproduzca con un brillo típico de 200-240 nits. Además, permite saber si el hardware o el controlador admiten la salida HDR mediante el formato de píxeles FP16 o solo mediante el formato ARGB10.
- Nivel de blanco SDR , para que los controladores gráficos conozcan el valor del nivel de blanco SDR que aplica el compositor del sistema operativo para todo el contenido SDR, en una pantalla que funciona en modo HDR.
- Sincronización de pantalla , que permite al sistema operativo comprobar las capacidades de sincronización de pantalla si el controlador expone la pantalla y antes de habilitarla.
- La función de seguimiento de cargas de trabajo también se añadió como una característica experimental para controlar mejor el equilibrio entre una ejecución más rápida del procesador y un menor consumo de energía, pero se eliminó de la versión 2004 de Windows 10 y se dejó de usar en versiones anteriores del sistema operativo como parte de una corrección de seguridad.
WDDM 2.6
La actualización de Windows 10 de mayo de 2019 (versión 1903) incluye WDDM 2.6. Las actualizaciones para el desarrollo de controladores de pantalla en Windows 10 versión 1903 incluyen las siguientes características: [ 60 ]
- Shader Model 6.4 , que añade soporte para intrínsecos de producto escalar empaquetado de baja precisión y para subobjetos de biblioteca para simplificar el trazado de rayos. [ 61 ]
- Super Wet Ink permite la creación de texturas en formatos y modos que los fabricantes de hardware no admiten de forma nativa, resolviéndolos como una proyección de recursos a un formato que el hardware/controladores admiten de forma nativa, lo que permite optimizaciones internas de los controladores.
- El sombreado de tasa variable , también conocido como sombreado de píxeles grueso , es un mecanismo que permite asignar rendimiento/potencia de renderizado a diferentes velocidades en las imágenes renderizadas. Viene con dos niveles (nivel 1 y nivel 2).
- Recopilar información de diagnóstico permite al sistema operativo recopilar datos privados de los controladores para las funciones de renderizado y visualización. Esta nueva función es un requisito en WDDM 2.6.
- El procesamiento en segundo plano permite a los controladores en modo de usuario expresar el comportamiento de subprocesos deseado, y al entorno de ejecución controlarlo y supervisarlo. Las API permiten a las aplicaciones ajustar la cantidad de procesamiento en segundo plano que es apropiada para sus cargas de trabajo y cuándo realizar dicho trabajo.
- Actualización en caliente del controlador , que reduce el tiempo de inactividad del servidor y permite aplicar parches de seguridad en caliente al controlador en modo kernel.
- Modelo de controlador de computación de Microsoft (MCDM) , para procesadores de IA como NPU .
WDDM 2.7
La actualización de Windows 10 de mayo de 2020 [ 62 ] (versión 2004) incluye WDDM 2.7. Las actualizaciones para el desarrollo de controladores de pantalla en Windows 10 versión 2004 incluyen las siguientes características: [ 63 ]
- Shader Model 6.5 , que añade soporte a las nuevas capacidades de canalización, así como intrínsecos Wave adicionales. [ 64 ]
- Planificación de GPU acelerada por hardware : aparece como una opción adicional en la configuración del sistema. Cuando está habilitada, descarga las tareas de alta frecuencia a un procesador de planificación dedicado basado en GPU, lo que reduce la sobrecarga de planificación de la CPU. Requiere hardware y controladores específicos. [ 65 ]
- Retroalimentación del muestreador , que permite un ajuste más preciso del uso de recursos en una escena. [ 66 ] Viene con dos niveles (nivel 0.9 y nivel 1.0). [ 67 ]
- DirectX Raytracing (DXR) Tier 1.1 , que introduce el trazado de rayos en línea, el despacho de rayos indirectos, el aumento del objeto de estado sin necesidad de crear uno nuevo y formatos de vértice adicionales para estructuras de aceleración. [ 68 ]
- Etapas de sombreado de malla y amplificación , una nueva canalización de geometría opcional que reemplaza la canalización tradicional (etapas de ensamblador de entrada-vértice-envolvente-teselado-dominio-geometría y salida de flujo). [ 69 ]
- Control mejorado de la asignación de memoria , con mejor control de residencia y la posibilidad de no poner a cero explícitamente los montones recién creados. [ 70 ]
- Interoperabilidad de recursos de Direct3D 9 , que permite proyectar un recurso de Direct3D 9 en una aplicación de Direct3D 12. [ 71 ]
- Compatibilidad con recursos protegidos de vídeo de Direct3D 12 , lo que permite reproducir contenido protegido en una aplicación Direct3D 12. [ 72 ]
WDDM 2.8
La versión preliminar de Windows 10 Insider Preview Manganese incluía WDDM 2.8, pero nunca se demostró públicamente que ningún controlador lo soportara y se omitió en las versiones de desarrollo "Iron" y "Cobalt".
WDDM 2.9
WDDM 2.9 en Windows 10 Insider Preview "Iron" traerá soporte para aceleración de hardware de GPU al Subsistema de Windows para Linux 2 (WSL 2) [ 73 ] y soporte para el nivel de características 12_2 [ 74 ] y HLSL Shader Model 6.6. [ 75 ]
WDDM 3.0
La versión final de Windows 11 RTM Retail incluye WDDM 3.0, [ 76 ] [ 77 ] que mejora la arquitectura gráfica en el Subsistema de Windows para Linux [ 78 ] y en Windows DWM agregando: [ 79 ]
- Controlador en modo usuario compilado para Linux en el paquete WSL.
- Controlador de host montado en Linux
- Frecuencia de actualización variable [ 80 ]
- Gestión automática del color [ 81 ]
- Codificación de vídeo Direct3D 12 [ 82 ]
- Cola de volteo de hardware [ 83 ]
- Permitir el paso de bloques CTA y bloques DisplayID de EDID [ 84 ]
WDDM 3.1
La actualización de Windows 11 de 2022 (versión 22H2) incluye WDDM 3.1. [ 85 ] [ 86 ]
WDDM 3.2
La actualización de Windows 11 de 2024 (versión 24H2) incluye WDDM 3.2. [ 90 ]
Referencias
- ↑ "Guía de diseño del modelo de controlador de pantalla de Windows (WDDM)" . MSDN . Microsoft . Consultado el 19 de febrero de 2015 .
- 1 2 3 4 5 "Modelo de controlador de pantalla de Windows Vista" . MSDN . Microsoft . Julio de 2006. Archivado del original el 6 de mayo de 2010. Consultado el 9 de diciembre de 2013 .
- ↑ "XPDM vs. WDDM" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 16 de diciembre de 2013 .
- ↑ "Guía de diseño del modelo de controlador de pantalla de Windows 2000 (XDDM)" . Centro de desarrollo de Windows - Hardware . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "Hoja de ruta para el desarrollo de controladores para el modelo de controlador de pantalla de Windows 2000 (XDDM)" . Centro de desarrollo de Windows - Hardware . Microsoft . 16 de noviembre de 2013. Consultado el 16 de diciembre de 2013.
Los controladores XDDM y VGA no se compilarán en Windows 8 y versiones posteriores
. - ↑ "Informes de memoria gráfica a través de WDDM" . MSDN . Microsoft . 9 de enero de 2007. Consultado el 9 de diciembre de 2013 .
- ↑ Schechter, Greg (2 de abril de 2006). "El papel del modelo de controlador de pantalla de Windows en el DWM" . Blog de Greg Schechter . Microsoft . Archivado del original el 20 de abril de 2010. Recuperado el 9 de diciembre de 2013 .
- ↑ "Compartición de recursos entre procesos" . MSDN . Microsoft . 10 de diciembre de 2009. Consultado el 9 de diciembre de 2013 .
- ↑ "Detección y recuperación de tiempos de espera de GPU mediante WDDM" . Detección y recuperación de tiempos de espera: Microsoft. Archivado del original el 6 de septiembre de 2011. Consultado el 4 de septiembre de 2011 .
- 1 2 3 4 "Guía gráfica para Windows 7" . Microsoft. 12 de junio de 2009.
- ↑ Intel justifica la falta de controlador WDDM para GMA900: no hay "HW Scheduler" ni controlador , Beyond3D, 26 de octubre de 2006.
- 1 2 "Compatibilidad con múltiples monitores y Windows Vista" . Consultado el 20 de octubre de 2007 .
- ↑ Pournelle, Jerry (2004). "WinHEC: El futuro de Windows" . BYTE . UBM Technology Group . Archivado del original el 15 de octubre de 2024. Recuperado el 31 de diciembre de 2025. Otro
gran cambio: LDDM solo permitirá un controlador de pantalla a la vez. Aún se pueden tener varios adaptadores de pantalla, pero tendrán que compartir un único controlador, lo que significa que tendrán que ser del mismo fabricante. Parece una restricción razonable.
- ↑ Blythe, David. "Trabajando con la arquitectura gráfica de Windows 7" . WinHEC 2008. Microsoft . Archivado del original el 20 de octubre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ ¿Existen funciones del Panel de control que estaban disponibles en Windows XP y que ya no están disponibles en Windows Vista? [ enlace eliminado ]
- ↑ El modo de escritorio extendido o modo de pantalla dividida no está disponible en Catalyst Control Center en Windows Vista. Archivado el 17 de noviembre de 2009 en Wayback Machine .
- ↑ "Descripción de DualView en Windows XP (Revisión 1.5)" . Soporte . Microsoft . 15 de enero de 2006. Consultado el 9 de diciembre de 2013 .
- ↑ "Aceleración de hardware GDI" . MSDN . Microsoft . Consultado el 14 de junio de 2009 .
- ↑ "DXVA-HD DDI" . MSDN . Microsoft . Consultado el 13 de junio de 2009 .
- ↑ "Superposición DDI" . MSDN . Microsoft . Consultado el 13 de junio de 2009 .
- ↑ "Múltiples monitores y redes de presentación de vídeo" . MSDN . Microsoft . Consultado el 14 de julio de 2010 .
- ↑ Zheng, Long (29-10-2008). "Windows 7 DWM reduce el consumo de memoria en un 50%" . istartedsomething . Consultado el 13-06-2026 .
- ↑ Schechter, Greg (3 de mayo de 2006). "Redireccionando aplicaciones GDI, DirectX y WPF" . Blog de Greg Schechter . Microsoft . Archivado del original el 5 de marzo de 2010. Recuperado el 9 de diciembre de 2013 .
- ↑ Chitre, Ameet (25 de agosto de 2009). Sinofsky, Steven (ed.). "Engineering Windows 7 Graphics Performance" . Engineering Windows 7. Microsoft . Consultado el 9 de diciembre de 2013 .
- ↑ Mulcahy, Tom (11 de febrero de 2009). "Windows y memoria de vídeo" . Zemblanity . Microsoft . Consultado el 9 de diciembre de 2013 .
- ↑ Olsen, Thomas (29 de octubre de 2008). "Presentación de la API Direct2D de Microsoft" . Blog de Tom . Microsoft . Consultado el 9 de diciembre de 2013 .
- ↑ Mark Lawrence (25 de noviembre de 2009). "Internet Explorer anuncia el uso de DirectWrite y Direct2D (comentario de un funcionario de Microsoft)" . Archivado del original el 8 de abril de 2014.
- ↑ "Windows Developer Preview - Novedades para dispositivos de visualización" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- 1 2 "Mejoras en el modelo de controlador de pantalla de Windows en la versión preliminar para desarrolladores de Windows" . MSDN . Microsoft . 28 de septiembre de 2012. Consultado el 9 de diciembre de 2013 .
- ↑ "Mejoras de DXGI 1.2" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "DXGI_Graphics_Preemption_Granularity Enumeration" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "Enumeración DXGI_FORMAT" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "Controlador básico de pantalla de Microsoft - Controladores de Windows" . 27 de junio de 2024.
- ↑ EliotSeattle. "Mejoras en la reproducción de vídeo de Direct3D 11: controladores de Windows" . learn.microsoft.com . Consultado el 30 de mayo de 2026 .
- ↑ Al-Kady, Nabeel. "Logística y pruebas de controladores de pantalla" . WinHEC 2006. Microsoft . Consultado el 9 de diciembre de 2013 .
- ↑ Pronovost, Steve. "Windows Display Driver Model (WDDM) v2 And Beyond" . WinHEC 2006. Microsoft . Consultado el 9 de diciembre de 2013 .
- ↑ Dan Warne (1 de junio de 2006). "Se renovará el sistema gráfico de Windows" . Revista APC . Consultado el 20 de febrero de 2015 .
- ↑ "Novedades de los controladores de pantalla de Windows 8.1 Preview (WDDM 1.3)" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "Mejoras de DXGI 1.3" . MSDN . Microsoft . 16 de noviembre de 2013. Consultado el 9 de diciembre de 2013 .
- ↑ "Novedades de los controladores de pantalla de Windows 10 Insider Preview (WDDM 2.0)" . Microsoft . Consultado el 3 de junio de 2015 .
- ↑ McMullen, Max (2 de abril de 2014). Vista previa de la API Direct3D 12. MSDN . Consultado el 3 de junio de 2015 .
- ↑ Moreton, Henry (2014-03-20). "DirectX 12: Un gran avance para los videojuegos | Blog de NVIDIA" . Blogs.nvidia.com . Consultado el 26 de marzo de 2014 .
- ↑ "DirectX 12 - Blog para desarrolladores de DirectX - Página principal - Blogs de MSDN" . Blogs.msdn.com. 2014-03-20 . Consultado el 2014-03-26 .
- ↑ Smith, Ryan (6 de febrero de 2015). "Vista previa del rendimiento de DirectX 12: AMD, NVIDIA y Star Swarm" . AnandTech . Purch.
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - ↑ MSDN - Mejoras en DXGI 1.4
- ↑ tedhudek. "Novedades en el desarrollo de controladores" . docs.microsoft.com . Consultado el 8 de octubre de 2018 .
- ↑ lorihollasch. "Memoria virtual de GPU en WDDM 2.0 - Controladores de Windows" . learn.microsoft.com . Consultado el 15 de junio de 2025 .
- ↑ "HLSL Shader Model 6.0 - Aplicaciones Win32" . 25 de agosto de 2021.
- ↑ "Alto rango dinámico y amplia gama de colores (Windows)" . msdn.microsoft.com . Archivado del original el 13 de septiembre de 2016.
- ↑ "Pantallas con frecuencia de actualización variable - Aplicaciones Win32" . 6 de enero de 2021.
- ↑ "Channel9 se ha unido a Microsoft Learn" .
- ↑ "Novedades para el desarrollo de controladores para Windows 10, versión 1709 - Pantalla" . docs.microsoft.com . Consultado el 14 de abril de 2020 .
- ↑ "Shader Model 6.1" . github.com/microsoft/DirectXShaderCompiler . Consultado el 1 de diciembre de 2017 .
- ↑ "Novedades de Windows 10, versión 1803 - Pantalla" . docs.microsoft.com . Archivado del original el 20/07/2020 . Consultado el 28/04/2020 .
- ↑ "Shader Model 6.2" . github.com/microsoft/DirectXShaderCompiler . Consultado el 1 de diciembre de 2017 .
- ↑ "Características añadidas en versiones anteriores de WDDM 2.X - WDDM 2.5" . Microsoft Docs . Consultado el 28 de marzo de 2020 .
- ↑ "Controladores de Windows: Novedades de Windows 10, versión 1809 - Pantalla" . Microsoft Docs . Archivado del original el 20 de julio de 2020. Consultado el 28 de abril de 2020 .
- ↑ "Shader Model 6.3" . github.com/microsoft/DirectXShaderCompiler . Consultado el 11 de marzo de 2019 .
- ↑ "Primeros pasos con DirectML" . github.com/microsoft/DirectML . 26 de noviembre de 2021.
- ↑ "Características añadidas en versiones anteriores de WDDM 2.X - WDDM 2.6" . docs.microsoft.com . Consultado el 24 de marzo de 2020 .
- ↑ "Shader Model 6.4" . github.com/microsoft/DirectXShaderCompiler . Consultado el 11 de abril de 2019 .
- ↑ "Vista previa para desarrolladores de las nuevas características de DirectX 12" . devblogs.microsoft.com . 28 de octubre de 2019. Consultado el 28 de octubre de 2019 .
- ↑ "Novedades de los controladores de pantalla y gráficos de Windows 10" . docs.microsoft.com . Consultado el 12 de mayo de 2020 .
- ↑ "HLSL Shader Model 6.5" . microsoft.github.io . Consultado el 15 de octubre de 2019 .
- ↑ "Programación de GPU acelerada por hardware" . devblogs.microsoft.com . 30 de junio de 2020. Consultado el 30 de junio de 2020 .
- ↑ "Llegando a DirectX 12: Comentarios del Sampler: algunos datos útiles que antes estaban ocultos, ahora desbloqueados" . devblogs.microsoft.com . 4 de noviembre de 2019. Consultado el 4 de noviembre de 2019 .
- ↑ "DirectX-Specs - Sampler Feedback - Feature Support" . microsoft.github.io . Consultado el 4 de noviembre de 2019 .
- ↑ "DirectX Raytracing (DXR) Tier 1.1" . devblogs.microsoft.com . 6 de noviembre de 2019. Consultado el 6 de noviembre de 2019 .
- ↑ "Llegando a DirectX 12: Shaders de malla y Shaders de amplificación: Reinventando la canalización de geometría" . devblogs.microsoft.com . 8 de noviembre de 2019. Consultado el 8 de noviembre de 2019 .
- ↑ "Llegando a DirectX 12: Más control sobre la asignación de memoria" . devblogs.microsoft.com . 11 de noviembre de 2019. Consultado el 11 de noviembre de 2019 .
- ↑ "Llegando a DirectX 12: API de interoperabilidad de recursos D3D9On12 y D3D11On12" . devblogs.microsoft.com . 13 de noviembre de 2019. Consultado el 13 de noviembre de 2019 .
- ↑ "Compatibilidad con recursos protegidos de vídeo D3D12" . microsoft.github.io . Consultado el 29 de mayo de 2019 .
- ↑ "DirectX ❤ Linux" . devblogs.microsoft.com . 19 de mayo de 2020 . Consultado el 19 de mayo de 2020 .
- ↑ "Novedades en DirectX: Nivel de características 12_2" . 27 de agosto de 2020.
- ↑ "Anuncio del modelo de sombreado HLSL 6.6" . 20 de abril de 2021.
- ↑ "Cómo obtener Windows 11" . 4 de octubre de 2021.
- ↑ "Descargar Windows 11" . Microsoft .
- ↑ "Arquitectura gráfica de WSL" . xdc2020.x.org . Archivado del original el 8 de octubre de 2021. Consultado el 16 de septiembre de 2020 .
- ↑ "Novedades de los controladores de pantalla y gráficos de Windows 11 - Controladores de Windows" . 22 de agosto de 2024.
- ↑ "Frecuencia de actualización dinámica: obtenga lo mejor de ambos mundos" . 28 de junio de 2021.
- ↑ Carvalho, Ana Marta (12 de octubre de 2022). "Avances en la gestión del color en Windows" . Blog de desarrolladores de DirectX . Consultado el 2 de junio de 2026 .
- ↑ "Codificación de vídeo D3D12 - Controladores de Windows" . 5 de marzo de 2022.
- ↑ "Cola de volteo de hardware - Controladores de Windows" . 26 de junio de 2024.
- ↑ GrantMeStrength. "Canalización de calibración de color de pantalla de hardware de Windows - Aplicaciones Win32" . learn.microsoft.com . Consultado el 5 de julio de 2026 .
- ↑ "Disponible hoy: La actualización de Windows 11 de 2022" . 20 de septiembre de 2022.
- ↑ "Descargar Windows 11" . Microsoft .
- ↑ "HLSL Shader Model 6.7" .
- ↑ lorihollasch. "Reasignación de IOMMU DMA: controladores de Windows" . docs.microsoft.com . Consultado el 24 de julio de 2022 .
- ↑ "Compartir el almacenamiento de respaldo con KMD - Controladores de Windows" . 22 de agosto de 2024.
- ↑ "Novedades en el desarrollo de controladores para Windows 11, versión 24H2 - Controladores de Windows" . 18 de septiembre de 2024.
- ↑ "Especificaciones de DirectX" .
- ↑ "Gráficos de trabajo - Controladores de Windows" . 22 de mayo de 2024.
- Tecnología multimedia de Microsoft Windows
- Controladores de dispositivos
- Windows Vista