Support for Analyzers (Intel VTune™ Profiler, Intel Advisor, Intel Inspector)
4699 Discussions

.ini file and modules loaded with dlopen

I'm evaluating VTune for a project where third party executable loads my code (.so) with dlopen at runtime. I am using the callgraph collector at this time. The problem is the tremendous amount of mostly-uninteresting data generated over the entire executable including other .so's loaded by the executable and .so's that my code is dependent on, but for which I'm not really intersted in their internals. For some runs, it works, though it is difficult to wade through all the data. For other runs, I have
1) quota problems do to the volume of data.
2) I may get a message to the effect that critical-path view will not be available.
3) There may also be problems with vtl view -gui (seems to freeze)

I found the configuration file for the activity with vtl query, and from there I located the .ini file. I found [Module] entries only for the executable itself and (I think) the C runtime modules. I did not find my .so, its dependencies, or any of the others that VTune mentions when it runs.
Is there a way to specify functions to profile, and, in general, module parameters for those not generated in the .ini file?
0 Kudos
2 Replies
Check out the 'global-options' where you can set the defaults for system and user libraries. This would allow you to set the default instrumentation level to minimal for all libraries.
Thanks for the suggestion, though I found your solution too broad, as I needed one of the .so files to be fully instrumented.
Idid find, however, that after running once, all the .so 's, including those loaded with dlopen midway through the run, were in the .ini file. I was then able to specify the requested instrumentation level. (I guess this makes sense, since static analysis would only be able to detect those libararies specified at link time, but this should be documented.....)
BUT - it didn't work until I manually erased the instrumentation cache - otherwise, I would get a message saying that instrumentation for that file was skipped, and the results reflected the old instrumentation level. It would be much better if VTune would check therequested instrumentationof the .ini file versus that in the cache before "skipping" it.