DirectStorage
| DirectStorage | ||
|---|---|---|
| Información general | ||
| Tipo de programa | API de entrada/salida (I/O) | |
| Desarrollador | Microsoft | |
| Lanzamiento inicial | 2022 | |
| Licencia | Propietaria | |
| Información técnica | ||
| Plataformas admitidas | Windows 10, Windows 11, Xbox Series X/S | |
| Enlaces | ||

DirectStorage [1][2][3][4][5]es una interfaz de programación de aplicaciones (API) desarrollada por Microsoft como parte del ecosistema de DirectX, diseñada para optimizar la transferencia de datos desde dispositivos de almacenamiento de alta velocidad hacia la memoria de la GPU. Su objetivo es reducir la latencia, minimizar la sobrecarga de CPU y mejorar el rendimiento en aplicaciones con alto volumen de datos, como videojuegos modernos.
Arquitectura
DirectStorage introduce un modelo de entrada/salida basado en colas de alta profundidad y ejecución asíncrona, alineado con las capacidades de los dispositivos NVMe y APIs modernas como Direct3D 12.
Modelo tradicional
En sistemas convencionales, el flujo de datos implica múltiples capas:
SSD → pila de almacenamiento de Windows → CPU → memoria del sistema → GPU
Este enfoque introduce:
- Interrupciones frecuentes
- Cambios de contexto en el kernel
- Serialización de operaciones
- Sobrecarga en CPU
Modelo DirectStorage
DirectStorage reorganiza el flujo de datos:
SSD (NVMe) → cola DirectStorage → memoria GPU
Elementos clave:
- Reducción de llamadas al sistema mediante agrupación de solicitudes
- Ejecución asíncrona masiva
- Eliminación de intermediarios innecesarios
- Uso eficiente del paralelismo del dispositivo NVMe
Sistema de colas y paralelismo
DirectStorage explota las capacidades de los SSD NVMe, que soportan miles de colas y operaciones concurrentes:
- Uso de colas de alta profundidad (queue depth)
- Envío masivo de solicitudes (batched submission)
- Procesamiento fuera de orden (out-of-order execution)
- Minimización de sincronización CPU-GPU
Esto permite maximizar el throughput del almacenamiento y reducir la latencia efectiva.
Integración con GPU
La API permite transferencias más directas hacia la memoria de la GPU:
- Acceso optimizado a memoria de vídeo (VRAM)
- Reducción de copias intermedias en RAM
- Integración con Direct3D 12 para gestión de recursos
- Uso de colas de cómputo para operaciones auxiliares
En algunos casos, la GPU participa en la descompresión de datos mediante shaders de cómputo.
Compresión de datos
DirectStorage soporta flujos de datos comprimidos:
- Descompresión acelerada por GPU
- Reducción del ancho de banda requerido desde almacenamiento
- Menor uso de CPU en comparación con descompresión tradicional
Se emplean algoritmos modernos como:
- GDeflate (optimizado para GPU)
- Zstandard (equilibrio entre ratio y velocidad)
Gestión de memoria
La API optimiza la gestión de recursos:
- Streaming continuo de texturas y geometría
- Carga bajo demanda (on-demand streaming)
- Mejora en la coherencia de caché
- Reducción de fragmentación en memoria
También permite una planificación más eficiente de recursos gráficos en motores de juego.
Interacción con el sistema operativo
DirectStorage reduce la intervención de la pila de almacenamiento de Windows:
- Menor número de interrupciones por operación
- Reducción de transiciones modo usuario/kernel
- Acceso más directo al hardware NVMe
- Optimización del scheduler de I/O
Esto disminuye la carga de CPU y mejora la eficiencia global del sistema.
Requisitos de hardware
Para un funcionamiento óptimo se requiere:
- SSD NVMe con soporte de alta concurrencia
- GPU compatible con DirectX 12 Ultimate
- Controladores gráficos actualizados
- Windows 10 (1909+) o Windows 11
El rendimiento depende de:
- Ancho de banda del SSD
- Latencia del dispositivo
- Capacidad de la GPU para descompresión
- Cantidad de VRAM disponible
Rendimiento
DirectStorage mejora principalmente:
- Throughput de lectura
- Latencia de acceso a datos
- Utilización de CPU
Impacto típico:
- Reducción significativa de tiempos de carga
- Disminución de stutter en streaming de recursos
- Mayor estabilidad en escenas complejas
El aumento de FPS es indirecto y depende de la carga del sistema.
Casos de uso
- Juegos de mundo abierto con streaming continuo
- Motores gráficos de nueva generación
- Carga dinámica de activos sin pantallas de carga
- Aplicaciones con grandes volúmenes de datos en tiempo real
Limitaciones
- Dependencia de hardware moderno
- Beneficio reducido en sistemas con GPU limitada o poca VRAM
- Requiere implementación específica en motores de juego
- Posible aumento de carga en GPU debido a descompresión
Comparativa
| Parámetro | Sin DirectStorage (pipeline clásico) | Con DirectStorage (pipeline moderno) |
|---|---|---|
| Ruta de datos | SSD → CPU → RAM → GPU | SSD → GPU (I/O directo optimizado) |
| Latencia I/O (NVMe) | ~100–300 µs + overhead CPU | ~20–80 µs (mejor aprovechamiento NVMe) |
| Latencia total carga | ms altos (CPU + copias) | ms bajos (pipeline directo) |
| Ancho de banda (PCIe Gen3) | ~2–3 GB/s efectivos | ~3–3.5 GB/s (casi límite bus) |
| Ancho de banda (PCIe Gen4) | ~2–4 GB/s | ~5–7 GB/s |
| Ancho de banda (PCIe Gen5) | ~3–5 GB/s | ~10–14+ GB/s |
| IOPS (QD bajo) | Limitado por CPU | Cercano al máximo del SSD |
| IOPS (QD alto, 32–64+) | Poco aprovechado | Alto paralelismo (miles de requests) |
| Queue Depth (QD) | Bajo (poco paralelismo real) | Alto (uso intensivo de colas NVMe) |
| Overhead CPU | Alto (I/O + descompresión) | Muy bajo (solo coordinación) |
| Descompresión | CPU (zlib, LZ4) | GPU (compute shaders, GDeflate) |
| Throughput con compresión | Limitado | Mayor (datos comprimidos + GPU) |
| Streaming de assets | Por bloques | Continuo (streaming granular) |
| Micro-stuttering | Frecuente | Reducido |
| Escalabilidad futura | Limitada por CPU | Escala con GPU + NVMe |
Véase también
- Direct3D 12
- NVMe
- GPU computing
- Renderizado en tiempo real
Referencias
- ↑ «Microsoft DirectStorage Explained: How It Improves Gaming». HYTE (en inglés estadounidense). Consultado el 28 de abril de 2026.
- ↑ Microsoft, ed. (2025). «DirectStorage Overview».
- ↑ Microsoft (ed.). «DirectStorage».
- ↑ Microsoft (ed.). «DirectStorage for Windows».
- ↑ Microsoft DirectX Blog (ed.). «DirectStorage 1.1 and GPU Decompression».
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.