Solved

Using dumpbin output to profile symbol size?

Posted on 2003-10-24
3
921 Views
Last Modified: 2013-12-03
Through looking at dumpbin results from the object files and the mapfile for an executable, I'm hoping to map out the memory usage in a project where our exe size has balooned.

I've got a perl script that grabs the info out of dumpbin focusing on the "size of raw data" figure, but it looks like I might be missing a lot of data.  There are lots of symbols that have "number of relocations" greater than zero along with a "file pointer to raw data" and "file pointer to relocation".  Should I be digging more into any of these values or elsewhere in the dumpbin output to get a complete accounting to the size of symbols linked into my exe?   Thanks

matt
0
Comment
Question by:wormzer
3 Comments
 
LVL 86

Accepted Solution

by:
jkr earned 500 total points
ID: 9616847
Check out http://www.microsoft.com/msj/archive/s572.aspx ("Remove Fatty Deposits from Your Applications Using Our 32-Bit Liposuction Tools") - they have proven to be pretty effective in spotting superfluous apce, especially adressing relocations also and might tell a little more than 'dumpbin' and mapfiles.
0
 
LVL 1

Author Comment

by:wormzer
ID: 9616987
That showed me very little in my case unfortunately.  Great article.... Funny how they mention how people are throwing around terms like "200 Mhz" more and more these days (1996 :)

I did discover one thing with incremental linking that I didn't know about which may help some.  I really want to analize individual template instantiations and see where bloat may be occuring (that would be a tool that would give me enough info to say there are 30 different instantiations of Array< > template with a total code size of X bytes.  I was able to get better information out of VC6 for some reason through map/dumpbin and it's just not coming out as well for .NET.

Any other suggestions? And thanks for that.

matt
0

Featured Post

Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article describes a technique for converting RTF (Rich Text Format) data to HTML and provides C++ source that does it all in just a few lines of code. Although RTF is coming to be considered a "legacy" format, it is still in common use... po…
A theme is a collection of property settings that allow you to define the look of pages and controls, and then apply the look consistently across pages in an application. Themes can be made up of a set of elements: skins, style sheets, images, and o…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
In a recent question (https://www.experts-exchange.com/questions/28997919/Pagination-in-Adobe-Acrobat.html) here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…

778 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question