Una pregunta que suele surgir a la hora de trabajar con vectores o matrices es cuál es el número máximo de elementos que puedo guardar. Un valor que depende de la memoria libre. No la memoria total del sistema. En Matlab existe la función memory() con la que es posible obtener la memoria libre, aunque solo en Windows. Función que se puede emplear para calcular cuál es el número máximo de elementos en Matlab que se pueden guardar en memoria.
memory() de MatlabAl escribir la función memory en una sesión de Matlab obtendremos una respuesta como la siguiente:
>> memory() Maximum possible array: 12815 MB (1.344e+10 bytes) * Memory available for all arrays: 12815 MB (1.344e+10 bytes) * Memory used by MATLAB: 1156 MB (1.212e+09 bytes) Physical Memory (RAM): 8192 MB (8.589e+09 bytes) * Limited by System Memory (physical + swap file) available.
En la que se puede ver la memoria máxima que hay disponible para un array, la memoria disponible para todos los arrays, la memoria usada actualmente por el Matlab y la memoria física total disponible. Si queremos saber cuál es el número máximo de elementos que podemos guardar en un vector nos debemos fijar en el primer número y dividirlo por el tamaño de un elemento. En el caso de número reales el tamaño es 8.
Los valores que se han obtenido por pantalla se pueden cargar en una variable. Variable que contendrá una estructura cuya propiedad MaxPossibleArrayBytes es la que nos interesa. Así, se puede usar el siguiente código para ver el número máximo de elementos.
bytes = memory(); max_num = floor(bytes.MaxPossibleArrayBytes/8);
En el ejemplo de arriba el número máximo de elementos que se pueden cargar en un único vector son aproximadamente 1.700 millones. Este valor es una cota superior, por lo que es recomendable no intentar llegar a ese límite.
Si queremos saber cuánta memoria nos queda en nuestra sesión de Matlab este truco nos puede ayudar. Además de indicarnos el tamaño aproximado de las matrices que podemos cargar.
Imagen de Theodor Moise en Pixabay
Cuando un analista de riesgo presenta un nuevo scorecard ante el comité de dirección, la…
Si revisáis código o documentación de otros programadores, tarde o temprano os toparéis con dos…
Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a…
Hay un momento muy concreto en la vida de casi todo análisis: el código que…
Has construido un nuevo modelo de credit scoring. Las métricas de validación son mejores que…
Comparar dos hipotecas parece sencillo: la que tenga el TIN más bajo es la mejor…
This website uses cookies.