Matlab is holding on to a lot of memory. Is this expected?

152 visualizzazioni (ultimi 30 giorni)
When I first start matlab2022a, here's my RAM
Matlab is using 4.5G. A lot, but not insane now-a-days.
Here's what happens when I run it for a while -- about 8 hours straight.
Notice that even after the "clear all", matlab is still using >20G.
I think this is having a deliterious effect on the performance of the editor, but I have no proof what-so-ever.
I don't think that clear classes makes a difference. fwiw, I'm not using any. This is purely a number-crunching program: read a file, do complicated stuff, write another file. Nothing fancy.
I am not using HUGE arrays -- about 8G total. Not 20G for sure.
There are no figures displayed. There is no UI. I did run the appdesigner, but closed it hours ago.
I am not using parfors or anything from the parallel computing toolbox (not yet).
Does anyone else see this and perhance found a reason?
I do not believe this happens with 2021a (the only version I have running in addition to 2022a), and I admit that I have never checked this before.

Risposta accettata

Chunru
Chunru il 25 Lug 2022
Yes. It seems that your memory usage is "typical" (similar to mine).
MATLAB itself takes up memory, in addtion to variables. For example, the functions and classes it called recently may be stored in the memory. Even after clear all, class definitins used recently may be still in memory.
In addition, it may also depends on how much physical memory you have. If you have large physical memory (it looks so for your system), the OS is perhaps more willing to allocate more memory for MATLAB, especially when other processes have smaller demands.
  1 Commento
Dmitry Kaplan
Dmitry Kaplan il 25 Lug 2022
I will certainly accept the answer. But 2021a doesn't do this :-) weird. I'll keep watching it.

Accedi per commentare.

Più risposte (1)

David Garrison
David Garrison il 27 Lug 2022
There are a couple of things you might try. The inmem function will tell you what functions, MEX files, and classes are currently loaded. That might give you some insight into what MATLAB is using memory for. The toolboxes shown above as well as App Designer all load classes into memory. If inmem shows a lot of things loaded in memory, clear all will not remove them. You have to use clear classes to get rid of them.
Regarding the performance of the Editor, I'm not sure what is happening there. It could be that tab completion is using the in-memory list of functions and classes to search for the right completion so that might could cause a slow down in the Editor.
  1 Commento
Dmitry Kaplan
Dmitry Kaplan il 27 Lug 2022
Clear classes definitely helps. I will update when I gather more info. Like I said, this could very well be the expected behavior.

Accedi per commentare.

Prodotti


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by