En general, un conjunto de datos de 1 GB ocupará más de 1 GB de RAM. Lo más probable, 1.5-5GB de RAM, dependiendo de lo que esté haciendo con los datos. Aquí hay cosas que podrían contribuir a una mayor huella de memoria :
- Entorno de tiempo de ejecución . Por ejemplo, si está ejecutando Java, la JVM ocupará una cantidad de megabytes de memoria.
- Datos intermedios que no se han recogido basura . Quizás creó muchos datos intermedios mientras cargaba su conjunto de datos, pero no liberó la memoria utilizada por los datos intermedios.
- Representación de los datos . Una cadena de 10 caracteres debe ocupar 10 bytes, pero puede ser de 20 bytes debido a la compatibilidad con Unicode, o tal vez 30 bytes porque las instancias de la clase String tienen un poco de sobrecarga asociada con ellos, o 45 bytes porque la cadena está almacenada en una Lista, que tiene sus propios gastos generales, y así sucesivamente.
Algunas cosas que puede hacer para reducir los requisitos de memoria :
- Mida el uso de memoria antes y después de cargar el conjunto de datos para asegurarse de que el conjunto de datos es lo que está acaparando su RAM .
- Si está utilizando un idioma con recolección de basura, no olvide eliminar las referencias a todos los datos intermedios una vez que haya terminado con él ; Si está haciendo una gestión manual de la memoria, no olvide liberar la memoria utilizada por los datos intermedios.
- Considere estructuras de datos personalizadas para almacenar sus datos de manera más compacta . La advertencia aquí es que cuanto más elegantes sean sus estructuras de datos, más difícil será mantenerlas.
- Considere codificaciones o compresión para grandes bloques de datos . Si puede almacenar un blob de texto de 100k como un blob de texto comprimido de 10k, entonces el ahorro de memoria podría valer la sobrecarga de CPU adicional asociada con la compresión y descompresión.
- ¿Puede una falta de RAM ralentizar mi computadora?
- ¿Cuál es la mejor tableta con 3 GB de RAM y con la pantalla más grande?
- ¿Qué significa la frecuencia de RAM?
- ¿Qué debo hacer para reducir el uso de RAM en Windows 7?
- ¿Debo comprar una RAM DDR3 o DDR4 para mi PC de juegos?