Add C++17 header-only wrapper for ITT API (#226) * add c++ wrapper * add support for wchar_t* * fix task/frame/region apis * add id support * add cmake build and tests * add readme and samples * add gh action * update README.md * cleanup * improve tests * rename test check define * added back copy and move assignment operators. * cleanup cmake * trigger ci * cleanup * minor fixes * apply CMakefile changes back * cleanup gh action * update main README * simplify gh action * ready to merge * add new docomuntation page * update documentation copyrigth year * add thread-local cache for string handle lookups * rename Domain class member * update the sample with more usage examples * fix windows build * add overlapped task api support * improve documentation * add itt id auto generation * add new overlapped_task() api in domain * add cache for overlapped task id storing * fix id generation logic, cover more overlapped scenarios
This repository contains the following profiling APIs:
The ITT/JIT APIs consist of two parts:
To build the library:
python buildall.py -husage: buildall.py [-h] [-d] [-c] [-v] [-pt] [-ft] [-cpp] [--force_bits] optional arguments: -h, --help show this help message and exit -d, --debug specify debug build configuration (release by default) -c, --clean delete any intermediate and output files -v, --verbose enable verbose output from build process -pt, --ptmark enable anomaly detection support -ft, --fortran enable fortran support -cpp, --cpp enable C++ wrapper support --force_bits specify bit version for the target --vs specify visual studio version (Windows only) --cmake_gen specify cmake build generator (Windows only)
Find complete documentation for ITT/JIT APIs on the ITT/JIT APIs Documentation Page
All code in the repo is dual licensed under GPLv2 and 3-Clause BSD licenses
Learn how to contribute using our contribution guide
To report bugs or request enhancements, please use the Issues page on GitHub
To report vulnerabilities, refer to our security policy