Fixing ROCProfiler Register CI & ROCProfiler-SDK Docs CI (#1570)

---------

Co-authored-by: bgopesh <gopesh.bhardwaj@amd.com>
このコミットが含まれているのは:
Ammar ELWazir
2025-11-03 09:24:32 -06:00
committed by GitHub
コミット fee5bd9a4e
4個のファイルの変更71行の追加17行の削除
+40 -7
ファイルの表示
@@ -7,10 +7,12 @@ on:
paths:
- 'projects/rocprofiler-register/**'
- '!projects/rocprofiler-register/*.md'
- '.github/workflows/rocprofiler-register-continuous-integration.yml'
pull_request:
paths:
- 'projects/rocprofiler-register/**'
- '!projects/rocprofiler-register/*.md'
- '.github/workflows/rocprofiler-register-continuous-integration.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -47,15 +49,39 @@ jobs:
# ci-args: '--memcheck UndefinedBehaviorSanitizer'
# ci-tag: '-undefined-behavior-sanitizer'
runs-on: rocprofiler-mi3xx
runs-on: linux-mi325-1gpu-ossci-rocm
container:
image: docker.io/rocm/rocprofiler-private:ubuntu-22.04-gfx94X-latest
credentials:
username: ${{ secrets.ROCPROFILER_AZURE_CI_USER }}
password: ${{ secrets.ROCPROFILER_AZURE_CI_PASS }}
options: --privileged --cap-add=SYS_PTRACE --security-opt seccomp=unconfined
env:
BUILD_TYPE: RelWithDebInfo
INSTALL_PREFIX: /opt/rocprofiler-register
PACKAGING_INSTALL_PREFIX: /opt/rocm
BUILD_TYPE: RelWithDebInfo
INSTALL_PREFIX: /opt/rocprofiler-register
PACKAGING_INSTALL_PREFIX: /opt/rocm
GIT_DISCOVERY_ACROSS_FILESYSTEM: 1
PATH: /usr/bin:$PATH
steps:
- uses: actions/checkout@v4
- name: Install Latest Nightly ROCm
shell: bash
working-directory: /tmp
run: |
tar -xf ${{ env.PACKAGING_INSTALL_PREFIX }}-gfx94X.tar.gz -C ${{ env.PACKAGING_INSTALL_PREFIX }}
echo "ROCm installed to: ${{ env.PACKAGING_INSTALL_PREFIX }}"
- name: Setup Git
shell: bash
run: |
apt-get update
apt-get install -y software-properties-common
add-apt-repository ppa:git-core/ppa
apt update
apt install -y git
- uses: actions/checkout@v5
with:
sparse-checkout: projects/rocprofiler-register
submodules: true
@@ -95,7 +121,6 @@ jobs:
shell: bash
working-directory: projects/rocprofiler-register
run:
cmake --version &&
python3 ./scripts/run-ci.py -B build
--name ${{ github.repository_owner }}-${{ github.ref_name }}-azure-mi300x-${{ matrix.compiler }}${{ matrix.ci-tag }}
--build-jobs 2
@@ -123,8 +148,14 @@ jobs:
run: |
cd build
cpack -G STGZ
rm -rf ${{ env.PACKAGING_INSTALL_PREFIX }}/lib/*rocprofiler-register* \
${{ env.PACKAGING_INSTALL_PREFIX }}/lib/cmake/*rocprofiler-register* \
${{ env.PACKAGING_INSTALL_PREFIX }}/share/*rocprofiler-register* \
${{ env.PACKAGING_INSTALL_PREFIX }}/libexec/*rocprofiler-register* \
${{ env.PACKAGING_INSTALL_PREFIX }}/include/rocprofiler-register
mkdir -p ${{ env.PACKAGING_INSTALL_PREFIX }}
./rocprofiler-register-*-Linux.sh --prefix=${{ env.PACKAGING_INSTALL_PREFIX }} --exclude-subdir --skip-license
ls -lah ${{ env.PACKAGING_INSTALL_PREFIX }}/lib
- name: Test Installed Packages
if: ${{ contains(matrix.compiler, 'clang-15') }}
@@ -132,8 +163,10 @@ jobs:
shell: bash
run: |
cd projects/rocprofiler-register
CMAKE_PREFIX_PATH=/opt/rocm cmake -B build-tests-deb /opt/rocm/share/rocprofiler-register/tests
CMAKE_PREFIX_PATH=/opt/rocm cmake -B build-tests-deb
cmake --build build-tests-deb --target all --parallel 16
export PATH=${{ env.PACKAGING_INSTALL_PREFIX }}/bin:$PATH
export LD_LIBRARY_PATH=${{ env.PACKAGING_INSTALL_PREFIX }}/lib:$LD_LIBRARY_PATH
ctest --test-dir build-tests-deb --output-on-failure
- name: Test Install Modulefile
+1 -1
ファイルの表示
@@ -3,7 +3,7 @@ name: rocprofiler-sdk Build CI Docker Images
on:
workflow_dispatch:
schedule:
- cron: '0 6 * * *'
- cron: '0 7 * * *'
push:
branches: [ develop ]
paths:
+8
ファイルの表示
@@ -94,6 +94,7 @@ jobs:
tar -xf ${{ env.ROCM_PATH }}-gfx94X.tar.gz -C ${{ env.ROCM_PATH }}-${{ env.ROCM_VERSION }}
ln -s ${{ env.ROCM_PATH }}-${{ env.ROCM_VERSION }} ${{ env.ROCM_PATH }}
echo "ROCm installed to: ${{ env.ROCM_PATH }}"
- name: Install os essentials
timeout-minutes: 10
shell: bash
@@ -104,12 +105,18 @@ jobs:
apt-get update
apt-get install -y git
echo "PATH=/usr/bin:$PATH" >> "$GITHUB_ENV"
- name: Checkout
uses: actions/checkout@v4
with:
sparse-checkout: projects/rocprofiler-sdk
submodules: true
set-safe-directory: true
- name: Setup
shell: bash
run: git config --global --add safe.directory '*'
- name: Create Docs Directory
shell: bash
working-directory: projects/rocprofiler-sdk/
@@ -118,6 +125,7 @@ jobs:
git config --global --add safe.directory ${GITHUB_WORKSPACE}
mkdir -p source/docs/_doxygen/rocprofiler-sdk
mkdir -p source/docs/_doxygen/roctx
- name: Install requirements
timeout-minutes: 10
shell: bash
+22 -9
ファイルの表示
@@ -164,38 +164,51 @@ function(rocp_register_test_executable _NAME)
${ARGN})
endfunction()
# Build LD_PRELOAD for base test
set(_BASE_PRELOAD "LD_PRELOAD=librocprofiler-register.so")
if(ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV)
set(_BASE_PRELOAD "${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}")
endif()
rocp_register_add_test(
${_NAME} ${_NAME} "${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
${_NAME} ${_NAME} "${_BASE_PRELOAD}"
"${RRTE_CORE_PASS_REGEX}" "${RRTE_CORE_FAIL_REGEX}")
# Build LD_PRELOAD list for -preload tests
set(_PRELOAD_LIBS "librocprofiler-register.so" "libgeneric-tool.so")
if(ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_LIBRARY)
list(PREPEND _PRELOAD_LIBS "${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_LIBRARY}")
endif()
list(JOIN _PRELOAD_LIBS ":" _PRELOAD_STRING)
rocp_register_add_test(
${_NAME}-preload ${_NAME}
"LD_PRELOAD=${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_LIBRARY}:libgeneric-tool.so"
"LD_PRELOAD=${_PRELOAD_STRING}"
"${RRTE_PRELOAD_PASS_REGEX}" "${RRTE_PRELOAD_FAIL_REGEX}")
rocp_register_add_test(
${_NAME}-env
${_NAME}
"ROCP_TOOL_LIBRARIES=libgeneric-tool.so;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_PRELOAD=librocprofiler-register.so;ROCP_TOOL_LIBRARIES=libgeneric-tool.so;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"${RRTE_PRELOAD_PASS_REGEX}"
"${RRTE_PRELOAD_FAIL_REGEX}")
rocp_register_add_test(
${_NAME}-wrap ${_NAME}
"ROCP_REG_TEST_WRAP=1;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_PRELOAD=librocprofiler-register.so;ROCP_REG_TEST_WRAP=1;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"${RRTE_WRAP_PASS_REGEX}" "${RRTE_WRAP_FAIL_REGEX}")
rocp_register_add_test(
${_NAME}-preload-wrap
${_NAME}
"LD_PRELOAD=${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_LIBRARY}:libgeneric-tool.so;ROCP_REG_TEST_WRAP=1"
"LD_PRELOAD=${_PRELOAD_STRING};ROCP_REG_TEST_WRAP=1"
"${RRTE_PRELOAD_WRAP_PASS_REGEX}"
"${RRTE_PRELOAD_WRAP_FAIL_REGEX}")
rocp_register_add_test(
${_NAME}-env-wrap
${_NAME}
"ROCP_TOOL_LIBRARIES=libgeneric-tool.so;ROCP_REG_TEST_WRAP=1;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_PRELOAD=librocprofiler-register.so;ROCP_TOOL_LIBRARIES=libgeneric-tool.so;ROCP_REG_TEST_WRAP=1;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"${RRTE_PRELOAD_WRAP_PASS_REGEX}"
"${RRTE_PRELOAD_WRAP_FAIL_REGEX}")
@@ -514,7 +527,7 @@ set_tests_properties(
test-force-rocprofiler-dlopen
PROPERTIES
ENVIRONMENT
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};ROCPROFILER_REGISTER_FORCE_LOAD=1;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};LD_PRELOAD=librocprofiler-register.so;ROCPROFILER_REGISTER_FORCE_LOAD=1;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
LABELS
"dlopen;secure")
@@ -527,7 +540,7 @@ set_tests_properties(
test-rocprofiler-register-library-base-path
PROPERTIES
ENVIRONMENT
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};ROCPROFILER_REGISTER_LIBRARY=librocprofiler-sdk.so.0;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;ROCPROFILER_REGISTER_MONOCHROME=true;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};LD_PRELOAD=librocprofiler-register.so;ROCPROFILER_REGISTER_LIBRARY=librocprofiler-sdk.so.0;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;ROCPROFILER_REGISTER_MONOCHROME=true;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
LABELS
"dlopen;secure")
@@ -540,6 +553,6 @@ set_tests_properties(
test-rocprofiler-register-library-absolute-path
PROPERTIES
ENVIRONMENT
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};ROCPROFILER_REGISTER_LIBRARY=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/librocprofiler-sdk.so.0;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;ROCPROFILER_REGISTER_MONOCHROME=true;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
"LD_LIBRARY_PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY};LD_PRELOAD=librocprofiler-register.so;ROCPROFILER_REGISTER_LIBRARY=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/librocprofiler-sdk.so.0;ROCPROFILER_REGISTER_SECURE=yes;ROCPROFILER_REGISTER_VERBOSE=3;ROCPROFILER_REGISTER_MONOCHROME=true;${ROCPROFILER_REGISTER_MEMCHECK_PRELOAD_ENV}"
LABELS
"dlopen;secure")