Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the Best Way to Measure Memory Use from a Program?

I've been trying to optimize the Windows program I am developing, trying to find the best data structures that will minimize memory use. It loads large blocks of data, so with huge files, it can use a large amount of RAM.

For memory measurement, I have been using GlobalMemoryStatusEx. See: http://msdn.microsoft.com/en-us/library/aa366589(VS.85).aspx

I believe this works for most flavors of Windows, from Windows 2000 right up to and including Windows Vista.

Is this the preferred way to measure memory use from within a program, or is there another, better way?


Addenum: Found the Stackoverflow question: How to get memory usage under Windows in C++ which references GetProcessMemoryInfo

I'll try that one out.

like image 569
lkessler Avatar asked Nov 18 '25 21:11

lkessler


2 Answers

If you are trying to optimize your own program memory-wise, I suggest you use a memory profiler tool for that. There are many out there...some are free, some are not..you will surely find the one you need. Those tools are written specifically for what you need (and also for memory leaks search) so...it will be hard to compare with them and do something like that on your own from your own program :)

like image 103
Paul Kapustin Avatar answered Nov 20 '25 18:11

Paul Kapustin


See the addenum in my question.

like image 43
lkessler Avatar answered Nov 20 '25 18:11

lkessler



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!