Hello, I've been using the JIT API on Windows and the result files generated (as stored on disk under the VTune project's directory) are about 300mb in size. However, after data collection, analyzing these result files causes VTune to use in excess of 12gb of memory. Eventually have to kill VTune because paging makes the machine unusable. For the sake of experimentation, once I let the machine go ahead and thrash the paging file. VTune wasn't done analyzing the results even with 30gb of memory usage.
This issue does not happen with every data collection run. In practice, what seems to work is to limit collection so the application only runs for a limited time. But even this approach is not guaranteed to produce results that can be opened with a reasonable amount of memory. The behavior is somewhat unpredictable. Sometimes runs on the order of 5 minutes can be examined ok, while some other times runs of about 30 seconds cannot be analyzed. On one occasion, VTune also complained the system was out of virtual memory --- but the task manager showed that was not even closely the case.
Googling for answers to this issue is difficult because VTune is used to measure application memory usage, so search keywords clash badly. I did not find interesting hits when searching this forum for topics related to the JIT API. I also scanned recent forum topics and sticky announcements. I'd like to believe this behavior is somehow connected to the JIT API only (i.e., this is a problem specific to something I am doing specifically).
I also examined the result files, and saw they are not compressed. Why would VTune need memory allocation roughly two orders of magnitude larger than the uncompressed result files it's trying to load (~300mb => 30gb+)? Does this sound like a known issue? Am I just using the JIT API wrong? At one point I suspected this could be related to not invalidating JITted code, however VTune's documentation says method invalidation happens automatically when notyfing VTune of a new method that overlaps a previously JITted method. What else could I do to diagnose the problem?
Andres.