Known issues and limitations

There are a few known issues for AMD GPU profiling.

  • The environment variable HSA_ENABLE_INTERRUPT=0 is enabled by default when running HIP applications with Linaro MAP. This is to address an intermittent hang which has been observed. The environment variable FORGE_NO_HSA_INTERRUPT_ENABLE_0=1 restores the default behavior of HIP.

  • Line-level information and program counter (PC) sampling are not available for ROCm kernels.

  • GPU memory transfer analysis is not available for ROCm kernels.

  • OpenMP target offload regions are not detected as GPU Kernels when using the AMD roctracer interface (for ROCm < 6.2) in Linaro MAP.

  • The graphs are scaled on the assumption that there is a 1:1 relationship between processes and GPUs, each process having exclusive use of its own AMD card. The graphs may be of an unexpected height if some processes do not have a GPU, or if multiple processes share the use of a common GPU.

  • GPU profiling is not supported when statically linking the Linaro Forge sampler library.

  • Linaro MAP may not initialize if ROCm 6.1.x, where 0 <= x < 5, is detected in the environment. This issue is resolved by reverting to AMD’s roctracer interface in Linaro MAP by setting the environment variable FORGE_DISABLE_ROCM_V3_PROFILING=1.

  • Linaro MAP may not initialize if ROCm 6.1.5 is detected in the environment and there are other ROCm > 6.1 installations on the system. This issue is resolved by reverting to AMD’s roctracer interface in Linaro MAP by setting the environment variable FORGE_DISABLE_ROCM_V3_PROFILING=1.