Load Module API
Use the Load Module API in your code to analyze a module that was loaded in an alternate location, and cannot otherwise be tracked by Intel® VTune™ Profiler. For example, you could use the Load Module API to analyze code that is typically executed in an isolated environment that contains no visibility of the code. Use this API to explicitly set the module location in an address space for analysis by VTune Profiler.
Use This Primitive |
To Do This |
---|---|
void __itt_module_loadW(void* start_addr,
void* end_addr,
const wchar_t* path);
|
Call this function after the relocation of a module. Provide the new start and end addresses for the module and the full path to the module on the local drive. |
void __itt_module_loadA(void* start_addr,
void* end_addr,
const char* path);
|
Call this function after the relocation of a module. Provide the new start and end addresses for the module and the full path to the module on the local drive. |
void __itt_module_load(void* start_addr,
void* end_addr,
const char* path);
|
Call this function after the relocation of a module. Provide the new start and end addresses for the module and the full path to the module on the local drive. |
Usage Example
#include "ittnotify.h"
__itt_module_load(relocatedBaseModuleAddress, relocatedEndModuleAddress, "/path/to/dynamic/library.so");