Profiling

IREE benchmarking gives us an accurate and reproducible view of program performance at specific levels of granularity. To analyze system behavior in more depth, there are various ways to profile IREE.

Tracy

Tracy is a profiler that's been used for a wide range of profiling tasks on IREE. Refer to profiling_with_tracy.md.

Vulkan GPU Profiling

Tracy offers great insights into CPU/GPU interactions and Vulkan API usage details. However, information at a finer granularity, especially inside a particular shader dispatch, is missing. To supplement general purpose tools like Tracy, vendor-specific tools can be used. Refer to profiling_vulkan_gpu.md.

CPU cache and other CPU event profiling

For some advanced CPU profiling needs such as querying CPU cache and other events, one may need to use some OS-specific profilers. See profiling_cpu_events.md.