¿Cómo sería diferente la programación con 400 GB de RAM?

Como muchos ya han dicho, en general las computadoras no son muchas, con la excepción de las bases de datos relacionales. Siempre pueden usar más memoria para contener más índices y hacer que la búsqueda de datos sea más rápida. ¿Imagina usar un hash de cuco en una base de datos de registros 1G? Eso es algo que no es posible sin mucha RAM.

Pero en informática especializada, como la bioinformática, nunca hay suficiente RAM. Al hacer simulaciones moleculares, el tamaño de la RAM impone directamente el tamaño de la simulación. Dado que es computacionalmente intensivo por naturaleza, cuanta más RAM tenga, más afinadas serán las estructuras de datos y los algoritmos que puede elegir para hacer esos cálculos lo más rápido posible. Si pudiera mantener todas las propiedades atómicas, espaciales, relacionales y de fuerza de 1,000,000,000,000,000 de átomos en una matriz de matrices, podría simular un paramecio completo usando indexación directa, la forma computacionalmente más rápida posible.

¿No sería grandioso?

No hará una diferencia en la informática de propósito general. Sin embargo, para fines especializados, realmente será útil. Una vez intenté invertir una matriz completa de dobles de 75000 por 75000, que en sí misma requiere más de 30 gb de ram para el almacenamiento. Agregue a eso las variables temporales requeridas para los cálculos intermedios. Y esto fue para un caso muy simple, un RAM más alto nos permitirá manejar matrices más grandes.

Para la mayoría de las aplicaciones, no es muy diferente. Ya hay mucho más RAM allí que la mayoría de las aplicaciones pueden usar.

No será muy diferente.


Lógicamente, cada programador tiene casi más memoria disponible de la que usaría o necesitaría. Tenemos memoria virtual: en lugar de cargar todo el proceso a la vez, el sistema operativo carga parte por parte del disco duro.

Y tenemos una buena organización de caché, con una buena proporción de aciertos. Combine todo eso, y habría poca o ninguna diferencia para escribir y ejecutar programas basados ​​en datos en una memoria RAM de 8-16 GB y 400 GB.

Si lee los documentos y artículos al respecto (como este SanDisk ULLtraDIMM DDR3 400GB SSD Enterprise Review), verá que no son 400GB de ‘RAM’. Es una SSD de 400 GB a la que se accede a través de una ranura DIMM. La arquitectura de acceso paralelo del sistema de memoria le permite un acceso más rápido que a través de un dispositivo SATA normal, por lo que es significativamente más rápido que un SSD actual, pero no tan rápido como la RAM. A partir de una lectura rápida, parece que las operaciones de escritura son aproximadamente 1000 veces más rápidas que las SSD y las lecturas son aproximadamente 10 veces más rápidas. Por contrato, los accesos normales a DDR son aproximadamente 10k veces más rápidos que este nuevo dispositivo.

Dicho esto, esto parece una mejora bastante incremental dirigida a los mercados de gama alta. Sin embargo, en mi humilde opinión, parece un camino hacia nuevas tecnologías de bus que permiten un acceso más rápido para mantenerse al día con dispositivos de almacenamiento más rápidos.

Entonces … básicamente no hay diferencia.
otra pregunta relacionada que podría ayudarlo a ver por qué es “¿cómo sería diferente la programación con 16G de caché de nivel 2?”
básicamente las velocidades para recuperar datos de la RAM son LENTAS. muy lento. super duper lento. pero hay muchos trucos que hacemos para que parezca rápido. los cachés son la forma principal en que hacemos esto, ya que los cachés son relativamente rápidos.
Pero todavía son lentos. ¿Sabes lo que es realmente rápido? Registros.
La razón por la que los registros son rápidos no tiene nada que ver con la tecnología, sino que abordarlos es más rápido. así que incluso si tuviéramos un almacenamiento persistente imaginario infinitamente rápido infinitamente barato, aún usaríamos esta jerarquía de almacenamiento en caché y aún sería más rápido acceder a registros que caché, y caché que ram, y ram que páginas.
sí, sería mejor tener sus páginas en un medio más rápido como ssd, sin embargo, creo que si reemplazara su 16G de ram por 400 i thik, encontraría una disminución notable en el rendimiento en comparación con tener ese 16 gig de ram y luego tener un intercambio en ese pci montado ssd.

Cualquier cosa a la que se pueda acceder desde el disco se puede acceder desde la RAM mucho más rápido. Con tanta memoria, muchas compañías podrían copiar toda su base de datos en una unidad RAM y eliminar los cuellos de botella de E / S. Esencialmente, la aplicación de la base de datos funcionaría muchas veces más rápido que si estuviera accediendo a los datos desde el disco siempre que no llegue a un cuello de botella en la CPU. Las bases de datos populares como SQLite le permiten crear una base de datos en memoria, pero hoy en día se limita al tamaño máximo de RAM admitido por su placa base, generalmente de 16 GB a 32 GB. Con el límite de 400 GB, las aplicaciones que utilizan esta técnica podrían escalar mucho más.

No entiendo cómo 400 conciertos serían mejores que 8/16 conciertos ya que la memoria es apenas un cuello de botella hoy en día al menos en las PC.

Pero si está hablando de dispositivos móviles, las aplicaciones podrían tener un poco de jugo extra disponible.