diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9d977733e7..5e94730524 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -20,7 +20,7 @@ /projects/rocm-smi-lib/ @bill-shuzhou-liu @dmitrii-galantsev @charis-poag-amd @oliveiradan /projects/rocminfo/ @dayatsin-amd @shwetagkhatri /projects/rocprofiler/ @ammarwa @bgopesh -/projects/rocprofiler-compute/ @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd +/projects/rocprofiler-compute/ @ROCm/rocprof-compute-reviewer # Owners: @ROCm/rocprof-compute-owners, Reviewers: @ROCm/rocprof-compute-reviewer /projects/rocprofiler-register/ @ammarwa @bgopesh /projects/rocprofiler-sdk/ @jrmadsen @t-tye /projects/rocprofiler-systems/ @ROCm/rocprof-sys @jrmadsen @@ -99,10 +99,10 @@ /projects/rocprofiler/**/*.rst @ammarwa @bgopesh @ROCm/rocm-documentation /projects/rocprofiler/doc/ @ammarwa @bgopesh @ROCm/rocm-documentation -/projects/rocprofiler-compute/**/*.md @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd @ROCm/rocm-documentation -/projects/rocprofiler-compute/**/*.rst @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd @ROCm/rocm-documentation -/projects/rocprofiler-compute/**/.readthedocs.yaml @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd @ROCm/rocm-documentation -/projects/rocprofiler-compute/docs/ @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd @ROCm/rocm-documentation +/projects/rocprofiler-compute/**/*.md @ROCm/rocprof-compute-reviewer @ROCm/rocm-documentation @prbasyal-amd +/projects/rocprofiler-compute/**/*.rst @ROCm/rocprof-compute-reviewer @ROCm/rocm-documentation @prbasyal-amd +/projects/rocprofiler-compute/**/.readthedocs.yaml @ROCm/rocprof-compute-reviewer @ROCm/rocm-documentation @prbasyal-amd +/projects/rocprofiler-compute/docs/ @ROCm/rocprof-compute-reviewer @ROCm/rocm-documentation @prbasyal-amd /projects/rocprofiler-register/**/*.md @ammarwa @bgopesh @ROCm/rocm-documentation /projects/rocprofiler-register/**/*.rst @ammarwa @bgopesh @ROCm/rocm-documentation diff --git a/.github/workflows/rocprofiler-compute-docs.yml b/.github/workflows/rocprofiler-compute-docs.yml index 6880eb9031..c0f6be5770 100644 --- a/.github/workflows/rocprofiler-compute-docs.yml +++ b/.github/workflows/rocprofiler-compute-docs.yml @@ -2,6 +2,8 @@ name: rocprofiler-compute Documentation on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/docs/archive/docs-2.x/**' - 'projects/rocprofiler-compute/docs/archive/docs-1.x/**' diff --git a/.github/workflows/rocprofiler-compute-formatting.yml b/.github/workflows/rocprofiler-compute-formatting.yml index da9ebcc28a..9c986ee4a4 100644 --- a/.github/workflows/rocprofiler-compute-formatting.yml +++ b/.github/workflows/rocprofiler-compute-formatting.yml @@ -3,6 +3,8 @@ name: rocprofiler-compute Formatting on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/**' pull_request: diff --git a/.github/workflows/rocprofiler-compute-mi-rhel9.yml b/.github/workflows/rocprofiler-compute-mi-rhel9.yml deleted file mode 100644 index 910a2e098e..0000000000 --- a/.github/workflows/rocprofiler-compute-mi-rhel9.yml +++ /dev/null @@ -1,128 +0,0 @@ -name: rocprofiler-compute mi-rhel9 - -on: - push: - paths: - - 'projects/rocprofiler-compute/**' - - # Allows manual execution - workflow_dispatch: - -permissions: - contents: read - checks: write - pull-requests: write - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - profile: - strategy: - matrix: - version: [5.7.1, 6.0.2] - hardware: [mi100, mi200] - profiler: [default, rocprofv2] - exclude: - - profiler: rocprofv2 - hardware: mi100 - fail-fast: false - runs-on: [mi100, rhel9] - - env: - PYTHONPATH: /home1/ciuser/rocprofiler-compute_deps - CI_VISIBLE_DEVICES: 1 - name: ROCm v${{ matrix.version }} / ${{ matrix.hardware }} / ${{ matrix.profiler }} - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - sparse-checkout: projects/rocprofiler-compute - - name: Python Path - run: echo ${PYTHONPATH} - - name: Setup hardware-specific run details - working-directory: projects/rocprofiler-compute - run: | - if [ ${{ matrix.hardware }} == "mi100" ];then - echo "CI_QUEUE=ci" >> $GITHUB_ENV - echo "CI_ARCH=gfx908" >> $GITHUB_ENV - elif [ ${{ matrix.hardware }} == "mi200" ];then - echo "CI_QUEUE=mi2104x" >> $GITHUB_ENV - echo "CI_ARCH=gfx90a" >> $GITHUB_ENV - else - echo "Unsupported hardware" - exit 1 - fi - - name: Setup profiling mode - working-directory: projects/rocprofiler-compute - run: | - if [ ${{ matrix.profiler }} == "rocprofv2" ];then - echo "ROCPROF=rocprofv2" >> $GITHUB_ENV - fi - - name: Install Python collateral (build and test) - working-directory: projects/rocprofiler-compute - run: | - pip3 install -t ${PYTHONPATH} -r requirements.txt - pip3 install -t ${PYTHONPATH} -r requirements-test.txt - - name: Load ROCm ${{ matrix.version}} - working-directory: projects/rocprofiler-compute - run: | - module load cmake - module load rocm/${{ matrix.version }} - echo $PATH > $GITHUB_PATH - echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> "$GITHUB_ENV" - echo "ROCM_PATH=$ROCM_PATH" >> "$GITHUB_ENV" - - name: Check Environment - working-directory: projects/rocprofiler-compute - run: | - echo "PATH=$PATH" - echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" - echo "ROCM_PATH=$ROCM_PATH" - echo "CI_QUEUE=$CI_QUEUE" - echo "CI_ARCH=$CI_ARCH" - echo "CI_VISIBLE_DEVICES=$CI_VISIBLE_DEVICES" - echo "ROCPROF=$ROCPROF" - - name: Configure - working-directory: projects/rocprofiler-compute - run: | - mkdir build - cd build - ml cmake - cmake -DENABLE_TESTS=ON -DCMAKE_HIP_ARCHITECTURES=$CI_ARCH -DENABLE_COVERAGE=ON -DPYTEST_NUMPROCS=8 .. - - name: Build tests and Run [profile] mode - working-directory: projects/rocprofiler-compute - run: | - cd build - make - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:20:00 ctest -j 4 --resource-spec-file ../tests/4gpus.json --verbose -L profile - - name: Run [analyze workloads] mode - working-directory: projects/rocprofiler-compute - if: '!cancelled()' - run: | - cd build - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:10:00 ctest --verbose -R test_analyze_workloads - - name: Run [analyze commands] mode - working-directory: projects/rocprofiler-compute - if: '!cancelled()' - run: | - cd build - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:10:00 ctest --verbose -R test_analyze_commands - - name: Publish Test Results - uses: EnricoMi/publish-unit-test-result-action/linux@v2 - if: always() - with: - files: | - projects/rocprofiler-compute/tests/**/test_*.xml - - name: Summarize code coverage - if: always() - run: coverage report - - name: Upload code coverage - uses: zgosalvez/github-actions-report-lcov@v4 - if: always() - with: - coverage-files: projects/rocprofiler-compute/tests/coverage.info - minimum-coverage: 35 - artifact-name: code-coverage-report-rocm${{ matrix.version }}-${{ matrix.hardware }}-${{ matrix.profiler }} - github-token: ${{ secrets.GITHUB_TOKEN }} - update-comment: true \ No newline at end of file diff --git a/.github/workflows/rocprofiler-compute-packaging.yml b/.github/workflows/rocprofiler-compute-packaging.yml index 01f294983a..1a8d73ce49 100644 --- a/.github/workflows/rocprofiler-compute-packaging.yml +++ b/.github/workflows/rocprofiler-compute-packaging.yml @@ -2,6 +2,8 @@ name: rocprofiler-compute Packaging on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/**' tags: @@ -71,4 +73,4 @@ jobs: draft: False # toggle for debugging files: | projects/rocprofiler-computebuild/rocprofiler-compute-${{github.ref_name}}.tar.gz - name: ${{ env.RELEASE_NAME }} \ No newline at end of file + name: ${{ env.RELEASE_NAME }} diff --git a/.github/workflows/rocprofiler-compute-rhel-8.yml b/.github/workflows/rocprofiler-compute-rhel-8.yml index 562281a15c..9a0e5c276f 100644 --- a/.github/workflows/rocprofiler-compute-rhel-8.yml +++ b/.github/workflows/rocprofiler-compute-rhel-8.yml @@ -5,6 +5,8 @@ name: rocprofiler-compute RHEL 8/9 # Controls when the workflow will run on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/**' - '!projects/rocprofiler-compute/*.md' @@ -74,4 +76,4 @@ jobs: working-directory: projects/rocprofiler-compute run: | cd build - ctest --verbose -R test_analyze_workloads \ No newline at end of file + ctest --verbose -R test_analyze_workloads diff --git a/.github/workflows/rocprofiler-compute-tarball.yml b/.github/workflows/rocprofiler-compute-tarball.yml index ac8873f247..e7fa84090a 100644 --- a/.github/workflows/rocprofiler-compute-tarball.yml +++ b/.github/workflows/rocprofiler-compute-tarball.yml @@ -2,6 +2,8 @@ name: rocprofiler-compute tarball on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/**' pull_request: diff --git a/.github/workflows/rocprofiler-compute-ubuntu-jammy.yml b/.github/workflows/rocprofiler-compute-ubuntu-jammy.yml index 2d29831891..fd7e31da81 100644 --- a/.github/workflows/rocprofiler-compute-ubuntu-jammy.yml +++ b/.github/workflows/rocprofiler-compute-ubuntu-jammy.yml @@ -4,6 +4,8 @@ name: rocprofiler-compute Ubuntu 22.04 on: push: + branches: + - develop paths: - 'projects/rocprofiler-compute/**' - '!projects/rocprofiler-compute/*.md' diff --git a/projects/rocprofiler-compute/.github/CODEOWNERS b/projects/rocprofiler-compute/.github/CODEOWNERS deleted file mode 100644 index 71826a2dd6..0000000000 --- a/projects/rocprofiler-compute/.github/CODEOWNERS +++ /dev/null @@ -1,13 +0,0 @@ -* @coleramos425 @feizheng10 @vedithal-amd @xuchen-amd @cfallows-amd @ywang103-amd @jamessiddeley-amd - -# Documentation files -docs/ @ROCm/rocm-documentation @prbasyal-amd -*.md @ROCm/rocm-documentation @prbasyal-amd -*.rst @ROCm/rocm-documentation @prbasyal-amd -.readthedocs.yaml @ROCm/rocm-documentation @prbasyal-amd - -## Packaging -# cmake/ -# tests/ -# CMakeLists.txt -# utils/ diff --git a/projects/rocprofiler-compute/.github/dependabot.yml b/projects/rocprofiler-compute/.github/dependabot.yml deleted file mode 100644 index a169714fbe..0000000000 --- a/projects/rocprofiler-compute/.github/dependabot.yml +++ /dev/null @@ -1,21 +0,0 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates - -version: 2 -updates: - - package-ecosystem: "pip" # See documentation for possible values - directory: "/docs/sphinx" # Location of package manifests - open-pull-requests-limit: 10 - schedule: - interval: "daily" - target-branch: "develop" - labels: - - "documentation" - - "dependencies" - reviewers: - - "samjwu" - - "feizheng10" - - "coleramos425" - - "vedithal-amd" diff --git a/projects/rocprofiler-compute/.github/workflows/daily-staging-sync.yml b/projects/rocprofiler-compute/.github/workflows/daily-staging-sync.yml deleted file mode 100644 index 708428f32c..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/daily-staging-sync.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: Sync Staging with Develop -on: - workflow_dispatch: - schedule: - - cron: 0 0 * * * - -jobs: - promote-dev-to-stg: - if: github.repository == 'ROCm/rocprofiler-compute' - runs-on: ubuntu-latest - name: Promote Develop to Staging - steps: - - name: Generate a token - id: generate-token - uses: actions/create-github-app-token@v1 - with: - app-id: ${{ secrets.ROCPROFILER_COMPUTE_RUNNER_APP_APP_ID }} - private-key: ${{ secrets.ROCPROFILER_COMPUTE_RUNNER_APP_PRIVATE_KEY }} - - - name: Checkout - uses: actions/checkout@v4 - with: - ref: develop - fetch-depth: '0' - token: ${{ steps.generate-token.outputs.token }} - - - name: Merge - Fast Forward Only - run: | - git checkout amd-staging - git merge origin/develop --ff-only - git push origin HEAD diff --git a/projects/rocprofiler-compute/.github/workflows/docs.yml b/projects/rocprofiler-compute/.github/workflows/docs.yml deleted file mode 100644 index 11cfff5839..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/docs.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: Documentation - -on: - push: - branches: [ amd-mainline ] - paths: - - 'docs/archive/docs-2.x/**' - - 'docs/archive/docs-1.x/**' - - '.github/workflows/docs.yml' - - workflow_dispatch: - -permissions: - contents: read - pages: write - id-token: write - -concurrency: - group: "pages" - cancel-in-progress: true - -jobs: - # Build job - build: - runs-on: ubuntu-latest - container: - image: sphinxdoc/sphinx - - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Additional python packages - run: pip3 install -r docs/archive/requirements-doc.txt - - name: Setup Pages - uses: actions/configure-pages@v4 - - name: Build 1.x docs - run: | - cd docs/archive/docs-1.x - make html - - name: Build 2.x docs - run: | - cd docs/archive/docs-2.x - make html - - name: Relocate 1.x docs - run: | - mv docs/archive/docs-1.x/_build/html docs/archive/_build/html/1.x - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: ./docs/archive/_build/html - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/projects/rocprofiler-compute/.github/workflows/formatting.yml b/projects/rocprofiler-compute/.github/workflows/formatting.yml deleted file mode 100644 index e6853ad779..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/formatting.yml +++ /dev/null @@ -1,87 +0,0 @@ - -name: Formatting - -on: - push: - branches: [ amd-mainline, amd-staging, release/**, develop ] - pull_request: - branches: [ amd-mainline, amd-staging, release/**, develop ] - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - python: - runs-on: ubuntu-22.04 - - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Set up Python '3.x' - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - name: Install dependencies - run: | - python -m pip install --upgrade pip - python -m pip install ruff - if [ -f requirements.txt ]; then python -m pip install -r requirements.txt; fi - - name: Run Ruff Linter and Import Sorter - run: | - ruff check . --fix --exit-zero - - name: Run Ruff Formatter - run: | - ruff format . - - name: Check for formatting/linting changes - run: | - git config --global user.name 'github-actions' - git config --global user.email 'github-actions@github.com' - git add -A . - if ! git diff --cached --quiet; then - echo "::error::Files were modified by ruff. Please run 'ruff check . --fix && ruff format .' locally and commit the changes." - git diff --cached --patch # Show the diff in the logs - exit 1 - else - echo "Ruff found no issues or all issues were fixed and files are clean." - fi - - cmake: - runs-on: ubuntu-22.04 - - steps: - - uses: actions/checkout@v4 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y python3-pip - python3 -m pip install cmake-format - - name: cmake-format - run: | - set +e - cmake-format -i $(find . -type f | egrep 'CMakeLists.txt|\.cmake$') - if [ $(git diff | wc -l) -gt 0 ]; then - echo -e "\nError! CMake code not formatted. Run cmake-format...\n" - echo -e "\nFiles:\n" - git diff --name-only - echo -e "\nFull diff:\n" - git diff - exit 1 - fi - - python-bytecode: - runs-on: ubuntu-22.04 - - steps: - - uses: actions/checkout@v4 - - name: find-bytecode - run: | - set +e - FILES=$(find . -type f | egrep '__pycache__|\.pyc$') - if [ -n "${FILES}" ]; then - echo -e "\nError! Python bytecode included in commit\n" - echo -e "### FILES: ###" - echo -e "${FILES}" - echo -e "##############" - exit 1 - fi diff --git a/projects/rocprofiler-compute/.github/workflows/mi-rhel9.yml b/projects/rocprofiler-compute/.github/workflows/mi-rhel9.yml deleted file mode 100644 index 9dfb4efaff..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/mi-rhel9.yml +++ /dev/null @@ -1,116 +0,0 @@ -name: mi-rhel9 - -on: - push: - branches: [ amd-mainline, release/** ] - - # Allows manual execution - workflow_dispatch: - -permissions: - contents: read - checks: write - pull-requests: write - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - profile: - strategy: - matrix: - version: [5.7.1, 6.0.2] - hardware: [mi100, mi200] - profiler: [default, rocprofv2] - exclude: - - profiler: rocprofv2 - hardware: mi100 - fail-fast: false - runs-on: [mi100, rhel9] - - env: - PYTHONPATH: /home1/ciuser/rocprofiler-compute_deps - CI_VISIBLE_DEVICES: 1 - name: ROCm v${{ matrix.version }} / ${{ matrix.hardware }} / ${{ matrix.profiler }} - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Python Path - run: echo ${PYTHONPATH} - - name: Setup hardware-specific run details - run: | - if [ ${{ matrix.hardware }} == "mi100" ];then - echo "CI_QUEUE=ci" >> $GITHUB_ENV - echo "CI_ARCH=gfx908" >> $GITHUB_ENV - elif [ ${{ matrix.hardware }} == "mi200" ];then - echo "CI_QUEUE=mi2104x" >> $GITHUB_ENV - echo "CI_ARCH=gfx90a" >> $GITHUB_ENV - else - echo "Unsupported hardware" - exit 1 - fi - - name: Setup profiling mode - run: | - if [ ${{ matrix.profiler }} == "rocprofv2" ];then - echo "ROCPROF=rocprofv2" >> $GITHUB_ENV - fi - - name: Install Python collateral (build and test) - run: | - pip3 install -t ${PYTHONPATH} -r requirements.txt - pip3 install -t ${PYTHONPATH} -r requirements-test.txt - - name: Load ROCm ${{ matrix.version}} - run: | - module load cmake - module load rocm/${{ matrix.version }} - echo $PATH > $GITHUB_PATH - echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> "$GITHUB_ENV" - echo "ROCM_PATH=$ROCM_PATH" >> "$GITHUB_ENV" - - name: Check Environment - run: | - echo "PATH=$PATH" - echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" - echo "ROCM_PATH=$ROCM_PATH" - echo "CI_QUEUE=$CI_QUEUE" - echo "CI_ARCH=$CI_ARCH" - echo "CI_VISIBLE_DEVICES=$CI_VISIBLE_DEVICES" - echo "ROCPROF=$ROCPROF" - - name: Configure - run: | - mkdir build - cd build - ml cmake - cmake -DENABLE_TESTS=ON -DCMAKE_HIP_ARCHITECTURES=$CI_ARCH -DENABLE_COVERAGE=ON -DPYTEST_NUMPROCS=8 .. - - name: Build tests and Run [profile] mode - run: | - cd build - make - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:20:00 ctest -j 4 --resource-spec-file ../tests/4gpus.json --verbose -L profile - - name: Run [analyze workloads] mode - if: '!cancelled()' - run: | - cd build - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:10:00 ctest --verbose -R test_analyze_workloads - - name: Run [analyze commands] mode - if: '!cancelled()' - run: | - cd build - srun -N 1 -J rocprof-compute -p $CI_QUEUE -t 00:10:00 ctest --verbose -R test_analyze_commands - - name: Publish Test Results - uses: EnricoMi/publish-unit-test-result-action/linux@v2 - if: always() - with: - files: | - tests/**/test_*.xml - - name: Summarize code coverage - if: always() - run: coverage report - - name: Upload code coverage - uses: zgosalvez/github-actions-report-lcov@v4 - if: always() - with: - coverage-files: tests/coverage.info - minimum-coverage: 35 - artifact-name: code-coverage-report-rocm${{ matrix.version }}-${{ matrix.hardware }}-${{ matrix.profiler }} - github-token: ${{ secrets.GITHUB_TOKEN }} - update-comment: true diff --git a/projects/rocprofiler-compute/.github/workflows/packaging.yml b/projects/rocprofiler-compute/.github/workflows/packaging.yml deleted file mode 100644 index ba30d9af83..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/packaging.yml +++ /dev/null @@ -1,64 +0,0 @@ -name: packaging - -on: - push: - tags: - - "v[1-9].[0-9]+.[0-9]+*" - - "rocm-[0-9]+.[0-9]+.[0-9]+*" - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - distbuild: - runs-on: ubuntu-latest - name: Create release distribution - env: - INSTALL_DIR: /tmp - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: Verify VERSION file consistent with tag - run: utils/ver_check.py --tag ${{github.ref_name}} - - name: Install Python - uses: actions/setup-python@v5 - with: - python-version: '3.8' - - name: Python dependency installs - run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt - - name: Configure - run: | - mkdir build - cd build - cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. - - name: Release tarball - run: | - cd build - make package_source - - name: Rename tarball - run: mv build/rocprofiler-compute-*.tar.gz build/rocprofiler-compute-${{github.ref_name}}.tar.gz - - name: Archive tarball - uses: actions/upload-artifact@v4 - with: - name: rocprofiler-compute-${{github.ref_name}}.tar.gz - path: build/rocprofiler-compute-${{github.ref_name}}.tar.gz - - name: Set version - run: echo "VERSION=$(cat VERSION)" >> $GITHUB_ENV - - name: Determine release name - run: | - if [[ ${{github.ref_name}} == rocm-* ]]; then - echo "RELEASE_NAME=rocprofiler-compute ${{ env.VERSION }} for ${{github.ref_name}}" - else - echo "RELEASE_NAME=rocprofiler-compute ${{ env.VERSION }}" - fi >> $GITHUB_ENV - - name: Upload tarball Release Asset - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') && github.repository == 'ROCm/rocprofiler-compute' - with: - fail_on_unmatched: True - generate_release_notes: True - draft: False # toggle for debugging - files: | - build/rocprofiler-compute-${{github.ref_name}}.tar.gz - name: ${{ env.RELEASE_NAME }} diff --git a/projects/rocprofiler-compute/.github/workflows/rhel-8.yml b/projects/rocprofiler-compute/.github/workflows/rhel-8.yml deleted file mode 100644 index 0181d49216..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/rhel-8.yml +++ /dev/null @@ -1,71 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: RHEL 8/9 - -# Controls when the workflow will run -on: - push: - branches: [ amd-mainline, amd-staging, release/**, develop ] - paths-ignore: - - '*.md' - - '.github/**/*.md' - - 'docs/**' - - 'docker/**' - pull_request: - branches: [ amd-mainline, amd-staging, release/**, develop ] - paths-ignore: - - '*.md' - - '.github/**/*.md' - - 'docs/**' - - 'docker/**' - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - build: - # The type of runner that the job will run on - runs-on: ubuntu-latest - container: - image: dgaliffiamd/rocprofiler-systems:ci-base-rhel-${{ matrix.os-release }} - strategy: - fail-fast: false - matrix: - os-release: [ '8.10', '9.3'] - build-type: ['Release'] - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - - name: Install baseline OS dependencies - run: | - yum clean all - yum makecache - yum -y install git - yum -y install python39 - yum -y install cmake3 - yum -y install which - yum -y install glibc-langpack-en - - name: Checkout - uses: actions/checkout@v4 - - name: Install Python prereqs - run: | - python3.9 -m pip install -r requirements.txt - python3.9 -m pip install -r requirements-test.txt - - name: Configure and install - run: | - mkdir build - cd build - cmake -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-compute -DPYTEST_NUMPROCS=4 .. - make install - - name: CTest- Analyze Commands - run: | - cd build - ctest --verbose -R test_analyze_commands - - name: CTest- Analyze Workloads - run: | - cd build - ctest --verbose -R test_analyze_workloads diff --git a/projects/rocprofiler-compute/.github/workflows/tarball.yml b/projects/rocprofiler-compute/.github/workflows/tarball.yml deleted file mode 100644 index d7db8f5bbd..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/tarball.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: tarball - -on: - push: - branches: [ amd-mainline, release/** ] - pull_request: - paths-ignore: - - '*.md' - - '.github/**/*.md' - - 'docs/**' - - 'docker/**' - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - distbuild: - runs-on: ubuntu-latest - name: Create distribution tarball - env: - INSTALL_DIR: /tmp/foo1 - steps: - - name: Set git sha mode - id: sha-mode - run: | - if [ "$EVENT" == 'pull_request' ]; then - echo "sha=${{github.event.pull_request.head.sha}}" >> $GITHUB_OUTPUT - else - echo "sha=$GITHUB_SHA" >> $GITHUB_OUTPUT - fi - - name: Checkout code - uses: actions/checkout@v4 - with: - ref: ${{ steps.sha-mode.sha }} - - name: Install Python - uses: actions/setup-python@v5 - with: - python-version: '3.8' - - name: Python dependency installs - run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt - - name: Configure - run: | - mkdir build - cd build - cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. - - name: Release tarball - run: | - cd build - make package_source - - name: Archive tarball - uses: actions/upload-artifact@v4 - with: - name: tarball-testing - path: build/rocprofiler-compute-*.tar.gz - retention-days: 3 - disttest: - runs-on: ubuntu-latest - needs: [distbuild] - name: Tarball tests - env: - INSTALL_DIR: /tmp/foo2 - steps: - - name: Access tarball - uses: actions/download-artifact@v4 - with: - name: tarball-testing - - name: Expand - run: tar xfz rocprofiler-compute-*.tar.gz; rm rocprofiler-compute-*.tar.gz - - name: Python dependency installs - run: | - cd rocprofiler-compute-* - python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt - - name: Configure - run: | - cd rocprofiler-compute-* - mkdir build - cd build - cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}/rocprofiler-compute \ - -DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. - - name: Install - run: | - cd rocprofiler-compute-* - cd build - make install - - name: Verify expected paths - run: | - # find $INSTALL_DIR - test -d $INSTALL_DIR/rocprofiler-compute - test -x $INSTALL_DIR/rocprofiler-compute/bin/rocprof-compute - test -s $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/VERSION - test -s $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/VERSION.sha - test -d $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/rocprof_compute_analyze - test -d $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/rocprof_compute_profile - test -d $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/rocprof_compute_soc - test -d $INSTALL_DIR/rocprofiler-compute/libexec/rocprofiler-compute/utils - test -s $INSTALL_DIR/rocprofiler-compute/share/rocprofiler-compute/sample/vcopy.cpp - test -d $INSTALL_DIR/rocprofiler-compute/share/rocprofiler-compute/modulefiles - test -s $INSTALL_DIR/rocprofiler-compute/share/doc/rocprofiler-compute/LICENSE - - name: Query version (setting PYTHONPATH by hand) - run: | - export PYTHONPATH=${INSTALL_DIR}/python-libs:$PYTHONPATH - $INSTALL_DIR/rocprofiler-compute/bin/rocprof-compute --version - - name: Install Lmod - run: sudo apt-get install -y lmod - - name: Access rocprofiler-compute using modulefile - run: | - . /etc/profile.d/lmod.sh - module use $INSTALL_DIR/rocprofiler-compute/share/rocprofiler-compute/modulefiles - module load rocprofiler-compute - module list - rocprof-compute --version diff --git a/projects/rocprofiler-compute/.github/workflows/ubuntu-jammy.yml b/projects/rocprofiler-compute/.github/workflows/ubuntu-jammy.yml deleted file mode 100644 index 61e1a95fb1..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/ubuntu-jammy.yml +++ /dev/null @@ -1,61 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Ubuntu 22.04 - -on: - push: - branches: [ amd-mainline, amd-staging, release/**, develop ] - paths-ignore: - - '*.md' - - '.github/**/*.md' - - 'docs/**' - - 'docker/**' - pull_request: - branches: [ amd-mainline, amd-staging, release/**, develop ] - paths-ignore: - - '*.md' - - '.github/**/*.md' - - 'docs/**' - - 'docker/**' - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - build: - # The type of runner that the job will run on - runs-on: ubuntu-latest - container: - image: dgaliffiamd/rocprofiler-systems:ci-base-ubuntu-22.04 - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - - name: Install baseline OS dependencies - run: | - apt-get update - apt-get install -y git - apt-get install -y python3-pip - apt-get install -y cmake - - name: Checkout - uses: actions/checkout@v4 - - name: Install Python prereqs - run: | - python3 -m pip install -r requirements.txt - python3 -m pip install -r requirements-test.txt - - name: Configure and install - run: | - mkdir build - cd build - cmake -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-compute -DPYTEST_NUMPROCS=4 .. - make install - - name: CTest- Analyze Commands - run: | - cd build - ctest --verbose -R test_analyze_commands - - name: CTest- Analyze Workloads - run: | - cd build - ctest --verbose -R test_analyze_workloads diff --git a/projects/rocprofiler-compute/.github/workflows/weekly-liangdin-test-rebase.yml b/projects/rocprofiler-compute/.github/workflows/weekly-liangdin-test-rebase.yml deleted file mode 100644 index 86b9872b60..0000000000 --- a/projects/rocprofiler-compute/.github/workflows/weekly-liangdin-test-rebase.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: Rebase liangdin-test on top of amd-mainline -on: - workflow_dispatch: - schedule: - - cron: 0 0 * * 1 - -jobs: - promote-dev-to-stg: - if: github.repository == 'ROCm/rocprofiler-compute' - runs-on: ubuntu-latest - name: Rebase liagndin-test on top of amd-mainline - steps: - - name: Generate a token - id: generate-token - uses: actions/create-github-app-token@v1 - with: - app-id: ${{ secrets.ROCPROFILER_COMPUTE_RUNNER_APP_APP_ID }} - private-key: ${{ secrets.ROCPROFILER_COMPUTE_RUNNER_APP_PRIVATE_KEY }} - - - name: Checkout - uses: actions/checkout@v4 - with: - ref: develop - fetch-depth: '0' - token: ${{ steps.generate-token.outputs.token }} - - - name: Rebase - run: | - git checkout liangdin-test - git rebase origin/amd-mainline - git push origin HEAD