User Guide

Intel® VTune™ Profiler User Guide

ID 766319
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Load Module API

You can use the Load Module API in your code to analyze a module that was loaded in an alternate location that cannot otherwise be tracked by Intel VTune Profiler. For example, this would allow you to analyze code that is typically executed in an isolated environment to which there is no visibility of the code. This API allows you 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, '/some/path/to/dynamic/library.so');