¿Puede la nueva memoria 3D Xpoint reemplazar la RAM que usamos hoy?

Tal como están las cosas en este momento … muy poco probable. El problema no es tanto si la tecnología es 1000 veces más rápida que las tecnologías SSD actuales, sino más bien si se puede usar a esas velocidades.

El primer obstáculo para saltar sería cómo se maneja IO. Tal como están las cosas, se maneja por interrupción. Lo que significa que la CPU se interrumpe porque hay algo que la unidad quiere enviar. Esto a su vez significa que se guarda el estado actual de la CPU, luego se cargan las instrucciones y los datos de E / S, y se procesan y finalmente se envían a su destino. Solo en esa etapa puede la CPU continuar con lo que estaba haciendo antes, volviendo a cargar su estado anterior y continuando con el proceso.

A las velocidades actuales de SSD, todo este intercambio de estado no es muy notable. Incluso para los microsegundos necesarios, la cantidad de tiempo que la CPU pasa en esto es relativamente baja. Pero disminuir el tiempo entre cada interrupción y ese estado se convierte en una parte mucho más grande del todo. De hecho, puede ver que esto ya se está convirtiendo en un problema con las unidades SSD de gama alta, donde el rendimiento comienza a depender de la CPU. Y eso es solo un aumento de 2x a 10x con respecto a los SSD comerciales. Por lo tanto, las posibilidades de obtener un rendimiento incluso 1000 veces más rápido son realmente nulas.

Si los controladores y sistemas IO se rediseñan para usar un sistema basado en encuestas (es decir, exactamente como se hacen los chips RAM ahora), las cosas pueden ser muy diferentes. Desafortunadamente, nada de eso aún tiene que darse a conocer en ningún medio. Hasta que esto suceda, la tecnología 3D Xpoint es una respuesta en busca de una pregunta.

Una posibilidad muy pequeña puede ser usar esto en lugar de los chips DRam en la memoria de la computadora directamente. Mucho menos necesitaría ser rediseñado para tal. Teóricamente podría significar solo algunos cambios de ROM en el proceso de arranque (es decir, en lugar de volver a cargar todo en la RAM, suponga que ya está allí). En este caso, la pregunta es: ¿Es más rápido y / o más barato hacerlo de esta manera en lugar de usar RAM volátil? No se sabe realmente, no se ha probado nada, y también puede tener cuellos de botella imprevistos. Y eso supone que la RAM no se está mejorando activamente al superar los límites de DRam o incluso al inventar nuevas ideas.

Aunque Intel y Micron no llaman a 3D-Xpoint como memoria persistente (supongo que querían dar un nombre elegante para publicidad), supondré que las características de rendimiento de 3D-Xpoint serán similares o cercanas a las especificaciones de memoria persistente (PCM); El costo de lectura es menor que el costo de escritura.

En este caso, habría 3 alternativas de cómo se puede utilizar 3D-Xpoint (PCM en la Figura 2) en la jerarquía de la memoria (la Figura 2 se tomó prestada de Repensar los algoritmos de la base de datos para la memoria de cambio de fase):


a) Sin DRAM, las optimizaciones inteligentes pueden reducir el tiempo de ejecución y acercarlo a la DRAM; Con las especificaciones de memoria persistente se demostró que el tiempo de ejecución se puede reducir a 1.2 de DRAM.
b) yc) pequeña cantidad de DRAM más PCM al mismo nivel. En este caso, los datos de acceso frecuente se almacenarían en DRAM y reducirían el uso de PCM. La diferencia entre byc es que en el primer caso el software controla explícitamente el búfer DRAM y en el segundo búfer DRAM se gestiona como otro nivel de caché de hardware transparente.

Además, se ha demostrado que la diferencia de rendimiento entre la memoria DRAM y la memoria persistente puede reducirse significativamente si el tamaño de la memoria DRAM es de alrededor del 3% del tamaño de la memoria persistente.

Difícil, si no imposible.

Según la afirmación de Intel y Micron, 3D Xpoint es 1000 veces más rápido que NAND y 10 veces más densidad que la memoria convencional (suponga DRAM aquí). La latencia de lectura de PCIe NAND es de aproximadamente 100us, y 1000x más rápido da 100ns, que es mucho más lento que la velocidad de DRAM de 50ns. Aquí, asumimos que se puede alcanzar el 1000x reclamado, pero no conocemos los detalles de comparación y es muy probable que Intel haya dado un valor bastante optimista, que no se puede alcanzar, al menos en el futuro cercano. Creo que la velocidad 200-300ns es más práctica. Claro, en términos de potencia y energía, 3D Xpoint es el ganador. Pero, en general, no creo que DRAM sea reemplazado.

Además, la densidad 10 veces mayor puede no ser tan atractiva como el apilamiento DRAM se ha disparado. Y, teniendo en cuenta que NAND puede tener más de 100 veces más capacidad que DRAM, la densidad 10x de 3D Xpoint aún se queda atrás de NAND. Entonces, difícil de reemplazar NAND, tampoco.