How can I profile the memory usage in MATLAB when I use Linux and Mac OS?
50 views (last 30 days)
Show older comments
How can I profile the memory usage in MATLAB when I use Linux and Mac OS?
the memory function is only available to Windows, right?
0 Comments
Answers (2)
Zander Labuschagne
on 31 Oct 2019
Edited: Zander Labuschagne
on 31 Oct 2019
Hello,
I know it's a bit late, but I just used the following on Linux:
[tmp pid] = system('pgrep MATLAB');
[tmp mem_usage] = system(['cat /proc/' strtrim(pid) '/status | grep VmSize']);
fprintf("%i MB\n", round(str2num(strtrim(extractAfter(extractBefore(mem_usage, ' kB'), ':'))) / 1000));
The system command executes a shell command where I first get the process ID and used the ID to get the memory usage using cat to read the process status file, then I format it and output it in MB. You can probably retrieve the PID inside the same bash command then you call the system function only once.
3 Comments
Runcong Kuang
on 1 Sep 2022
Hi, is this code a bash command?
I create the .sh file with these lines of code and run it in the terminal while I am running matlab in the linux.
But this gives me the syntax error "near unexpected token '('
Runcong Kuang
on 1 Sep 2022
I make it into a .m file and run 'matlab -batch [thisfile] while I am running main matlab file.
I also try adding these lines in my main running matlab file.
Both of these methods only return " MB".
Carlos Rondon
on 22 Nov 2021
I'm using a MAC with Catalina OS. Normally I use this command:
profile -memory on
you can view the results after your code executes using
profview
0 Comments
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!