コード内部でロードモジュール API を使用して、インテル® VTune™ プロファイラーが追跡できない場所にロードされたモジュールを解析できます。たとえば、これにより、通常はコードの可視性がない分離された環境で実行されるコードを解析できるようになります。この API を使用して、インテル® VTune™ プロファイラーによる解析のためアドレス空間内のモジュール位置を明示的に設定できます。
使用するプリミティブ |
これを行うには |
|---|---|
void __itt_module_loadW (void* start_addr,void* end_addr, const wchar_t* path) |
モジュールの再配置後にこの関数を呼び出します。モジュールの新しい開始アドレスと終了アドレス、およびローカルドライブ上のモジュールへの完全パスを指定します。 |
void __itt_module_loadA(void* start_addr, void* end_addr, const char* path) |
モジュールの再配置後にこの関数を呼び出します。モジュールの新しい開始アドレスと終了アドレス、およびローカルドライブ上のモジュールへの完全パスを指定します。 |
void __itt_module_load(void* start_addr, void* end_addr, const char* path) |
モジュールの再配置後にこの関数を呼び出します。モジュールの新しい開始アドレスと終了アドレス、およびローカルドライブ上のモジュールへの完全パスを指定します。 |
#include "ittnotify.h"
__itt_module_load(relocatedBaseModuleAddress, relocatedEndModuleAddress, '/some/path/to/dynamic/library.so');