¿Merece la pena actualizar mi portátil de 12 GB de RAM a 16 GB de RAM para aumentar la velocidad de mi ordenador o debo comprar un nuevo ordenador (para el trabajo de programación)?

La respuesta depende principalmente de cuál es su conjunto típico de trabajo (número de páginas requeridas por los programas que se ejecutan en su sistema veces el tamaño de la página), suponiendo que usted quiere el mejor bang para el dólar. Si puede permitírselo y trabaja mucho en un portátil antiguo, considere la posibilidad de actualizarlo.

La forma más sencilla de comprobarlo es verificar la velocidad a la que las páginas entran y salen del espacio de intercambio y cuánto espacio se utiliza aparte del búfer. en los sistemas Linux utilice los comandos free (compruebe el espacio de intercambio utilizado) y vmstat (compruebe los números si (intercambio de entrada) y so (intercambio de salida), así como bi, bo (bloques de entrada y salida)).

main-qimg-7eeb5621fd6943c370b17e0bc6cd3f45

[Imagen del Sistema Operativo | Técnicas para manejar el Thrashing - GeeksforGeeks]

Si su conjunto de trabajo es:

  1. menos de, digamos, 8 GB, entonces no notará una diferencia significativa - no se moleste en actualizar;
  2. menos de memoria menos uso de espacio operativo (digamos 11 GB) empezará a notar la diferencia principalmente porque tendrá espacio extra para el búfer del disco - actualice si es barato hacerlo;
  3. entre 12 y 16Gb de conjunto de trabajo usted notará una diferencia, porque su sistema será "thrashing" - habrá claras pausas cuando los programas no responden incluso a simples clics del ratón - actualice su memoria.
  4. Si su conjunto de trabajo es de más de 15 GB, probablemente no notará una gran diferencia si actualiza a 16 GB, ya que su sistema seguirá fallando - actualice a un sistema con 32 o más GB (dependiendo de su conjunto de trabajo).

Nota, todo esto supone que necesita ejecutar todo a la vez. Si puedes reducir tu conjunto de trabajo, entonces puede que no necesites aumentar tu memoria.

Ejecuté un programa simple para utilizar un conjunto de trabajo designado de GB de memoria, ejecutando en diferentes tamaños de lote (cada lote ejecutado en un proceso separado). En mi sistema i7 (4 núcleos x 2 hilos por núcleo), mi rendimiento máximo estaba en o poco más de un proceso por núcleo. Cuando el conjunto total de trabajo alcanzó el tamaño de la memoria principal, el sistema comenzó a intercambiar dramáticamente - reduciendo el uso de la cpu de un pico de 97,5% hasta el 2,6% mientras el sistema esperaba que los bloques fueran intercambiados dentro y fuera del disco SSD.

main-qimg-8320f4cb78b6bc184fd35288c5c26735

Puedes ver cómo sigue subiendo hasta un pico a medida que se usan más y más núcleos, baja un poco cuando la sobrecarga del cambio de contexto entra en juego (especialmente notable en las instancias con sólo 1GB de conjuntos de trabajo donde el intercambio de 12 procesos a través de 8 hilos de la cpu probablemente resultó en la invalidación de la caché de la cpu extra), entonces una vez que llegamos a 32 GB en el rendimiento total cayendo "por el precipicio".

Sistema actual: Ubuntu 16.04.6 LTS Linux, 32 GB de memoria, i7-3630QM CPU, Samsung SSD 840 PRO (2013). Para comparar mi sistema anterior era un Intel Core2 Q6600, 8GB de memoria de escritorio (2007).

Notas laterales:

  1. Si actualizas tu portátil completo, entonces que esté equipado con suficiente memoria para tus necesidades actuales, con suficientes ranuras libres para duplicar la memoria más adelante. De lo contrario, simplemente compre el doble de la memoria que necesita actualmente, ya que le cuesta un poco vender su memoria antigua para obtener una de doble capacidad más adelante.
  • Los cpus de gama alta no han aumentado drásticamente su rendimiento por núcleo en los últimos 5 a 8 años, sólo han aumentado el número de núcleos, por lo que depende de su carga de trabajo si los núcleos adicionales merecen el coste de la actualización.

.