Matlab is holding on to a lot of memory. Is this expected?
155 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
Chunru
2022-7-25
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 个)
David Garrison
2022-7-27
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Whos 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!