# Profiling

IREE [benchmarking](./benchmarking.md) 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](https://en.wikipedia.org/wiki/Profiling_(computer_programming)) 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](./profiling_with_tracy.md).

## Vulkan GPU Profiling

[Tracy](./profiling_with_tracy.md) 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](./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](./profiling_cpu_events.md).