Es posible que al comprar un portátil hayamos visto que lleva almacenamiento NVMe (o bien NVM Express), o al ampliar el almacenamiento de un ordenador. Vamos a conocer qué es NVMe y sus ventajas, cómo funciona y cómo está relacionado con los estándares M.2 y PCIe.
En esencia, con NVMe hablamos de un estándar que acelera los discos duros SSD, es decir, aquellos basados en chips de memoria sólida. No tiene sentido en los discos duros mecánicos HDD (con un disco real girando en su interior), porque no son lo suficientemente rápidos.
De hecho, las siglas NVM hacen referencia a "non volatile memory", es decir, "memoria no volátil", aquella en la que se almacenan los archivos del usuario, las aplicaciones y el propio sistema operativo de los ordenadores.
NVMe es la norma por el que los SSD interactúan con el sistema operativo y el resto del hardware, pero no lleva asociado un puerto concreto. Lo habitual es encontrarlo en ranuras M.2 o ranuras PCIe estándar (de x4 hasta 16 x), pero no son las únicas posibilidades.
De hecho, NVMe es el heredero directo de AHCI (interfaz de controlador host avanzada), el protocolo que se empleaba con los discos duros mecánicos HDD, y que también era independiente al conector SATA que se utilizaba a manera mayoritaria.
NVMe fue estrenado en 2013, como un estándar de la industria tecnológica impulsado por Intel. Los discos SSD más rápidos ya estaban optando por conectarse mediante ranuras PCIe, pues los puertos SATA no permitían desplegar toda su velocidad.
El problema es que la transferencia seguía dirigida por AHCI, que estaba diseñada para discos mecánicos HDD, y limitaba los SSD. Por lo tanto, se hacía necesario NVMe, una tecnología que actualmente deberíamos exigir en cualquier almacenamiento SSD.
Ventajas de NVMe frente a AHCI
Muchas veces se plantean las ventajas de los SSD frente a los discos tradicionales HDD por sus diferencias físicas. Sin dudas es el factor clave, pero la evolución de NVMe desde AHCI también ha supuesto un impulso importante para lograr las velocidades actuales.
Estas son las ventajas de NVMe:
- Adaptado para las bajas latencias de las memorias flash de los SSD.
- Aprovecha el alto paralelismo (varias colas de datos) de los SSD.
- Evita sobrecargar el procesador con la lectura y escritura del disco.
- Contacta directamente con el procesador (en vez de un controlador SATA).
- Permite interrupciones múltiples de los comandos enviados al disco.
- Más eficiente ante archivos pequeños.
Por ejemplo, usando AHCI la latencia (tiempo de respuesta) de un comando es de unos 6 microsegundos, frente a menos de 3 microsegundos con NVMe, algo clave cuando hablamos de millones de operaciones.
Además, en AHCI hay un límite de 100.000 IOPS (lecturas y escrituras por segundo), que no es suficiente para las SSD de más alto nivel, frente a 1 millón de IOPS admitidas con NVMe.
Cualquier sistema operativo actual (incluyendo Windows 11, macOS y Linux) soporta NVMe, y si compramos un disco SSD, o un portátil que lo integre, deberíamos esperar que lo traigan.
NVMe es un estándar sobre M.2 y PCIe
La norma NVMe no obliga a utilizar una conexión fásica concreta, pero actualmente lo habitual es M.2, que se basa en PCI Express 3.0 o 4.0. NVMe fue diseñado para aprovechar las velocidades de los SSD a través de la rápida interfaz PCIe (la misma que emplean las tarjetas gráficas), pero actualmente ya no es tan común que empleen ranuras PCIe.
Algunos SSD de gama muy alta pueden llegar a las ranuras PCIe x16 (16 carriles), las de mayor velocidad y tamaño físico, pero normalmente son de x8 o x4 (8 o 4 carriles). En velocidad, una ranura M.2 equivale a una PCIe x4 (pero no encajan entre sí), que es una capacidad de transferencia de 7,8 GB/s bajo PCI Express 4.0.
Si nos vamos a PCI Express 3.0, los cuatro carriles de M.2 se quedan en 3,9 GB/s, y en el actual PCI Express 5.0 se dispara a 15,8 GB/s. La sexta versión de este estándar también está en camino, así que no falta capacidad para transferir los datos si las necesitamos.
Los conectores físicos empleados normalmente con NVMe son:
- Ranuras M.2.
- Ranuras PCIe estándar desde x1 hasta x16 ("add in card" o AIC).
- Ranuras U.2 y U.3 (en desuso).
- Conectores SATAe (en desuso, y apenas utilizados).
Las ranuras M.2 son solo un tipo de conector físico, que no necesariamente ha de estar gobernado por NVMe. Admite también AHCI, así que puede transferir los datos como un SATA 3.0 o un USB 3.0, aunque no sea frecuente.
En base a NVMe tenemos derivados interesantes, como versiones que trabajan bajo fibra óptica, que en vez de conectar el disco interno del ordenador, conectan discos externos al equipo desde distancias variables.
Basados en el estándar, pero un paso más allá, hay diseños propios, siendo quizá los más conocidos los SSD de PlayStation 5 y Xbox Series X/S. Al tratarse de plataformas cerradas, los fabricantes adaptaron algunos aspectos para obtener el máximo rendimiento de cara a su objetivo, que son los videojuegos.
De hecho, en Xbox Series X/S se ha originado la tecnología DirectStorage que ahora se está implementando en los ordenadores. Se encarga de conectar directamente el almacenamiento con la tarjeta gráfica, evitando que el procesador intervenga en el envío de los pesados elementos gráficos que emplean los juegos.
Ventajas de los SSD NVMe vs SSD SATA y discos HDD
Respecto a las diferencias entre los discos duros HDD y los SSD, hablamos de tecnologías que no tienen nada que ver. HDD son las siglas de Hard Disk Drive (unidad de disco duro) y contienen unos discos metálicos que son leídos por unos cabezales mientras giran a gran velocidad.
Los discos duros han evolucionado en capacidad y velocidad desde su creación a mediados de los años 50, pero con la llegada de los años 2000 fueron quedándose atrás. La velocidad de giro del disco y del cabezal de lectura no podía seguir aumentado, pues se generaban un calor y un rozamiento imposibles de controlar.
Los SSD tienen en su interior unos chips con la denominada memoria flash de diferentes tipos (SLC, MLC, TLC y QLC, según cómo se organicen los chips a nivel interno). En todos los casos, son más rápidos que los discos HDD, y es posible aumentar la velocidad al añadir más chips.
En un disco duro habrá un cabezal por cada disco en su interior (o plato) pero más allá de eso, los datos se leen de manera secuencial. Es decir, cuando se necesita un dato, el brazo debe desplazarse y esperar a que el disco llegue a la zona donde están los datos que necesita.
Aunque los discos giran hasta a 10.000 revoluciones por minuto, al final esto es mucho más lento que un SSD, donde se puede acceder a los datos de miles de chips (o celdas) al instante, y sin apenas latencia (tiempo de espera).
Este paralelismo fue el que llevó a cambiar al uso de NVMe sobre PCIe. El estándar PCIe se diseñó precisamente para enviar muchos datos en paralelo al procesador, así que es perfecto para los SSD.
En la práctica, hablamos de que los HDD se han quedado en 100-200 MB/s frente a más de 2.000 MB/s que superan los SSD (y siguen aumentando). Además, un SSD es muy eficiente leyendo y escribiendo archivos pequeños, algo que determina en buena medida la fluidez de las apps o el tiempo de encendido del sistema operativo.
Los SSD tienen ya precios asequibles, siguen mejorando en prestaciones y van camino de desplazar por completo a los HDD tradicionales, así que son el futuro en los ordenadores de todo tipo.
En conclusión, NVMe es un protocolo clave para sacar partido a los rapidísimos SSD actuales, y un elemento clave de las tecnologías de almacenamiento actuales que a veces no es demasiado conocido, pero sí muy importante.
- Ver Comentarios