I have 19 GB of memory available for running Matlab. However, Matlab is only using 1 GB of memory. This is adversely affecting my ability to run my code. How do I increase the amount of memory that Matlab is using?
This was answered here:
Matlab will use more memory if you need more memory. It's not capped at 1 GB. To test this, try:
>> memory >> a = rand(20000); >> memory
You'll notice that the memory usage by Matlab increases
Is there an error like "Out of Memory"? If yes, then it's indeed a memory issue that needs to be fixed by changing the way your code loads large data. If not, then it's not a memory issue but slow algorithm issue. These articles can help:
To help you determine the code bottleneck, use the profile: https://www.mathworks.com/help/matlab/ref/profile.html
Thank you for your response. I did not have an out-of-memory issue. Also, I tried to use as much good programming practice as I can.
When I used the code you suggested, I received an increase in memory. However, when I close Matlab, the increase disappears and it is necessary for me to re-run the code again. Is there a way to obtain a permanent increase in memory?
I meant an increase in the amount of memory available to Matlab. The memory >> rand >> memory series of commands, allows me to gain a temporary increase in the amount of memory that Matlab is using. However, I have to reset it every time I open Matlab for the first time.
Prior to using the memory >> rand >> memory series of commands, Matlab would only use 34 % of my available memory. When I opened other programs, then my memory usage increased. I am not sure what was capping the availability of memory. The series of memory commands allowed for the usage of up to 85 % of available memory by Matlab. However, as mentioned, I have to re-run the commands, every time I open Matlab.
The cap in the availability of memory was causing my program to run slowly. When the cap was released, I saw a 10 time improvement in performance.