1. El Ciclo de Vida de las Interrupciones: ISR vs DPC
Cuando un periférico físico (controlador de red o adaptador gráfico) requiere atención del microprocesador, dispara una interrupción de hardware que escala al nivel IRQL DIRQL (Device Interrupt Request Level).
Para no bloquear el procesamiento del procesador en niveles IRQL elevados, la ISR realiza únicamente el acuse de recibo y encola un objeto DPC en la cola del procesador para su posterior ejecución a IRQL DISPATCH_LEVEL (2).
2. Transición de Línea Basada en Pines a MSI-X
Las interrupciones heredadas por líneas físicas compartidas sufren de colisiones e introducción de micro-latencias. La especificación MSI-X permite al periférico escribir directamente un vector de 32 bits en la memoria del controlador de interrupciones local (APIC).
Al activar MSI con prioridad alta en el subsistema de red y GPU, se reduce el tiempo de resolución de interrupciones en hasta un 70%.
# Comprobación de periféricos compatibles con MSI
Get-PnpDevice | Where-Object { $_.Present -and $_.Status -eq 'OK' }3. Afinidad de Hilos y Aislamiento de Núcleos
Asignar las interrupciones del adaptador de red troncal a núcleos físicos dedicados (aislando el Core 0 reservado para el subsistema de temporización del kernel) previene context switches innecesarios.
Herramientas de telemetría como LatencyMon permiten aislar controladores problemáticos como ndis.sys o nvlddmkm.sys.
Conclusión & Criterio de Ingeniería
La optimización de latencia DPC no consiste en scripts mágicos, sino en respetar la arquitectura de niveles IRQL del kernel NT y alinear periféricos al estándar MSI-X.
