Well, since the DLL is not really part of the Java heap, I think the most accurate reading would be to write a small profiling program (either a small Java / JNI program, or C ++ / C #, etc.) to import and use a DLL like your application and NOTHING ELSE - just use a DLL like you do - the resulting memory profile of this profiling application should be a good approximation to the memory profile of a DLL.
You should also check if there is a static or dynamic form of memory in the DLL - take memory measurements immediately before and after loading the DLL to see if there is a single click of ~ 130 MB, or if the memory grows slowly over time.
On Solaris / Linux, I heard that the Sun Studio Collector / Analyzer is a good tool for this, but you are stuck in a DLL-land (or some kind of DLL-hell, sort of)
source share