Reputation: 24895
What are the various mechanisms using which we can detect if a process execution is leading to memory fragmentation?
Are there any tools available for the same? Suggestion for tools which work with 'C' code and can run on Windows, Linux and VxWorks will be helpful.
Upvotes: 6
Views: 2159
Reputation: 24748
On linux you can see the output of:
cat /proc/buddyinfo
It tells how many pages of a given order are available. If there are very few higher order pages available and mostly lower order pages are available and it indicates your system memory is quite fragmented. Look for the "Normal" entry.
See proc.txt
Upvotes: 0
Reputation: 11
There is a maxfreeblocksize in vxworks, if it keeps gettin lower and lower its an indication its getting fragmented
Upvotes: 1
Reputation: 255
Just as a suggestion, you may want to try Valgrind. I'm not certain it's what you're looking for, but it may come in handy.
Upvotes: 2