[rocprofiler-system]: Enable UCX Communication API tracing (#2306)

## Motivation

Enable UCX communication tracing and communication metadata 

## Technical Details

Implement UCX API wrappers to trace transport-layer communication. This adds communication data tracking and exposes “UCX Comm Send/Recv” timelines, enabling detailed analysis of MPI, OpenSHMEM, and other UCX-based runtime communication patterns.

- Implements function interception for UCX functions across multiple categories using gotcha component.
- Extended comm_data component to track UCX send/recv operations - Added ucx_send and ucx_recv labels for Perfetto counter tracks. Integrated UCX data tracking with existing MPI/RCCL tracking infrastructure.
- Added ROCPROFSYS_USE_UCX configuration option (enabled by default).
- Created FindUCX.cmake module for UCX header detection. Falls back to internal UCX headers if system headers not found.
- Updated all Dockerfiles  to include UCX dependencies.
Esse commit está contido em:
Sajina PK
2026-01-20 13:16:43 -05:00
commit de GitHub
commit 15c82d6da8
25 arquivos alterados com 10613 adições e 9 exclusões
@@ -26,7 +26,7 @@ RUN zypper --non-interactive update -y && \
zypper --non-interactive install -y chrpath cmake curl dpkg-devel \
gcc-c++ gcc-fortran git gmock gtest iproute2 libdrm-devel libnuma-devel \
ninja nlohmann_json-devel openmpi3-devel python3-pip rpm-build \
sqlite3-devel wget && \
sqlite3-devel wget libucp-devel libuct-devel && \
python3 -m pip install 'cmake==3.21'
ARG ROCM_VERSION=0.0