mirror of
https://github.com/ROCm/ROCm.git
synced 2026-02-12 07:25:22 -05:00
Compare commits
6 Commits
amd/hsivas
...
generatede
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4d308d981 | ||
|
|
96211cdce8 | ||
|
|
11d65cde71 | ||
|
|
7cd3868ec1 | ||
|
|
f83a474813 | ||
|
|
b352e231cc |
30
.azuredevops/README.md
Normal file
30
.azuredevops/README.md
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
# ROCm-CI Azure DevOps Pipelines
|
||||||
|
|
||||||
|
ROCm-CI Azure DevOps Pipelines contains markup language files that orchestrate build and test pipelines for ROCm components using [Azure DevOps](https://dev.azure.com/ROCm-CI/ROCm-CI/_build).
|
||||||
|
|
||||||
|
## Project Organization
|
||||||
|
|
||||||
|
- `/.azuredevops/variables-global.yml` - set of global variables accessible across any and all pipelines
|
||||||
|
- protected keywords such as tokens and passwords are kept as secrets within the Azure DevOps project
|
||||||
|
- `/.azuredevops/components` - the sequence of templated steps for the job that checks out source, builds, packages, and runs tests for a ROCm repo
|
||||||
|
- `/.azuredevops/scheduled` - the sequence of templated steps for jobs that are schedule-based and not tied to a specific ROCm repo
|
||||||
|
- `/.azuredevops/tag-builds` - yml files to orchestrate manual builds based on specific tags (e.g., releases) without needing the corresponding yaml file in the component's repo
|
||||||
|
- `/.azuredevops/templates` - reusable yml files representing the templated steps that form the sequences in the above directories
|
||||||
|
|
||||||
|
### Per ROCm Repo
|
||||||
|
|
||||||
|
- `/.azuredevops/rocm-ci.yml` - contains the CI and PR trigger definitions associated with that repo, pointing to the corresponding yml file in the components folder in this central repository
|
||||||
|
|
||||||
|
## Key Azure Reference Links
|
||||||
|
|
||||||
|
- [Pipeline Basics](https://learn.microsoft.com/en-us/azure/devops/pipelines/get-started/key-pipelines-concepts?view=azure-devops)
|
||||||
|
- [Templates](https://learn.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops&pivots=templates-includes)
|
||||||
|
- [Use Predefined Variables](https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml)
|
||||||
|
- [YAML schema](https://learn.microsoft.com/en-us/azure/devops/pipelines/yaml-schema/?view=azure-pipelines&viewFallbackFrom=azure-devops)
|
||||||
|
- [Azure Pipelines Task Index](https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/?view=azure-pipelines)
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
The information presented in this document is for informational purposes only and may contain technical inaccuracies, omissions, and typographical errors. The information contained herein is subject to change and may be rendered inaccurate for many reasons, including but not limited to product and roadmap changes, component and motherboard versionchanges, new model and/or product releases, product differences between differing manufacturers, software changes, BIOS flashes, firmware upgrades, or the like. Any computer system has risks of security vulnerabilities that cannot be completely prevented or mitigated.AMD assumes no obligation to update or otherwise correct or revise this information. However, AMD reserves the right to revise this information and to make changes from time to time to the content hereof without obligation of AMD to notify any person of such revisions or changes.THIS INFORMATION IS PROVIDED ‘AS IS.” AMD MAKES NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE CONTENTS HEREOF AND ASSUMES NO RESPONSIBILITY FOR ANY INACCURACIES, ERRORS, OR OMISSIONS THAT MAY APPEAR IN THIS INFORMATION. AMD SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. IN NO EVENT WILL AMD BE LIABLE TO ANY PERSON FOR ANY RELIANCE, DIRECT, INDIRECT, SPECIAL, OR OTHER CONSEQUENTIAL DAMAGES ARISING FROM THE USE OF ANY INFORMATION CONTAINED HEREIN, EVEN IF AMD IS EXPRESSLY ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. AMD, the AMD Arrow logo, and combinations thereof are trademarks of Advanced Micro Devices, Inc. Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
|
||||||
|
|
||||||
|
© 2024 Advanced Micro Devices, Inc. All Rights Reserved.
|
||||||
39
.azuredevops/ci-builds/aomp.yml
Normal file
39
.azuredevops/ci-builds/aomp.yml
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: aomp_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/aomp
|
||||||
|
ref: amd-staging
|
||||||
|
- repository: aomp-extras_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/aomp-extras
|
||||||
|
ref: amd-staging
|
||||||
|
- repository: flang_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/flang
|
||||||
|
ref: amd-staging
|
||||||
|
- repository: llvm-project_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/llvm-project
|
||||||
|
ref: amd-staging
|
||||||
|
pipelines:
|
||||||
|
- pipeline: rocr-runtime_pipeline
|
||||||
|
source: \ROCR-Runtime
|
||||||
|
trigger: true
|
||||||
|
# this job will only be triggered after successful build sequence of llvm-project and ROCR-Runtime
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/aomp.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: aomp_repo
|
||||||
196
.azuredevops/components/AMDMIGraphX.yml
Normal file
196
.azuredevops/components/AMDMIGraphX.yml
Normal file
@@ -0,0 +1,196 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- git
|
||||||
|
- libdnnl-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- libmsgpack-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- libprotobuf-dev
|
||||||
|
- libsqlite3-dev
|
||||||
|
- libtbb-dev
|
||||||
|
- ninja-build
|
||||||
|
- nlohmann-json3-dev
|
||||||
|
- protobuf-compiler
|
||||||
|
- python3-pip
|
||||||
|
- python3-pybind11
|
||||||
|
- python3-venv
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- https://github.com/RadeonOpenCompute/rbuild/archive/master.tar.gz
|
||||||
|
- onnx==1.14.1
|
||||||
|
- numpy==1.21.6
|
||||||
|
- typing==3.7.4
|
||||||
|
- pytest==6.0.1
|
||||||
|
- packaging==23.0
|
||||||
|
- protobuf==3.20.2
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- aomp-extras
|
||||||
|
- clr
|
||||||
|
- composable_kernel
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- MIOpen
|
||||||
|
- rocm-cmake
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocMLIR
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- aomp-extras
|
||||||
|
- clr
|
||||||
|
- composable_kernel
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- MIOpen
|
||||||
|
- rocm-cmake
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocMLIR
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: AMDMIGraphX
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
# half version should be fixed to 5.6.0
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencySource: fixed
|
||||||
|
fixedComponentName: half
|
||||||
|
fixedPipelineIdentifier: ${{ variables.HALF560_PIPELINE_ID }}
|
||||||
|
skipLibraryLinking: true
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
|
||||||
|
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
|
||||||
|
-DBUILD_TESTING=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: AMDMIGraphX_testing
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: MIGRAPHX_TRACE_BENCHMARKING
|
||||||
|
value: 1
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# half version should be fixed to 5.6.0
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencySource: fixed
|
||||||
|
fixedComponentName: half
|
||||||
|
fixedPipelineIdentifier: ${{ variables.HALF560_PIPELINE_ID }}
|
||||||
|
skipLibraryLinking: true
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: CMake@1
|
||||||
|
displayName: MIGraphXTest CMake Flags
|
||||||
|
inputs:
|
||||||
|
cmakeArgs: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
|
||||||
|
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
|
||||||
|
-DBUILD_TESTING=ON
|
||||||
|
-DMIGRAPHX_ENABLE_C_API_TEST=ON
|
||||||
|
..
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build and run MIGraphX tests
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
workingDirectory: build
|
||||||
|
script: make -j$(nproc) check
|
||||||
141
.azuredevops/components/HIP.yml
Normal file
141
.azuredevops/components/HIP.yml
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- libnuma-dev
|
||||||
|
- mesa-common-dev
|
||||||
|
- ocl-icd-libopencl1
|
||||||
|
- ocl-icd-opencl-dev
|
||||||
|
- opencl-headers
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- CppHeaderParser
|
||||||
|
- name: rocmDependenciesAMD
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmDependenciesNvidia
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
|
||||||
|
# hip and clr are tightly-coupled
|
||||||
|
# run this same template for both repos
|
||||||
|
# any changes for clr should just trigger HIP pipeline
|
||||||
|
# similarly for hipother repo, for Nvidia backend
|
||||||
|
|
||||||
|
# HIP with AMD backend
|
||||||
|
jobs:
|
||||||
|
- job: hip_clr_combined_amd
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
# checkout triggering repo (either HIP or clr)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
# if this is triggered by HIP repo, matching repo is clr
|
||||||
|
# if this is triggered by clr repo, matching repo is HIP
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: matching_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: hipother_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependenciesAMD }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# compile clr
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: clr
|
||||||
|
cmakeBuildDir: 'clr/build'
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DHIP_COMMON_DIR=$(Build.SourcesDirectory)/HIP
|
||||||
|
-DHIP_PLATFORM=amd
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DHIPCC_BIN_DIR=$(Agent.BuildDirectory)/rocm/bin
|
||||||
|
-DCLR_BUILD_HIP=ON
|
||||||
|
-DCLR_BUILD_OCL=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: amd
|
||||||
|
|
||||||
|
# HIP with Nvidia backend
|
||||||
|
- job: hip_clr_combined_nvidia
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
# checkout triggering repo (either HIP or clr)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
# if this is triggered by HIP repo, matching repo is clr
|
||||||
|
# if this is triggered by clr repo, matching repo is HIP
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: matching_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: hipother_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependenciesNvidia }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- script: 'ls -1R $(Agent.BuildDirectory)/rocm'
|
||||||
|
displayName: 'Artifact listing'
|
||||||
|
# compile clr
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: clr
|
||||||
|
cmakeBuildDir: 'clr/build'
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DHIP_COMMON_DIR=$(Build.SourcesDirectory)/HIP
|
||||||
|
-DHIP_PLATFORM=nvidia
|
||||||
|
-DHIPCC_BIN_DIR=$(Agent.BuildDirectory)/rocm/bin
|
||||||
|
-DCLR_BUILD_HIP=ON
|
||||||
|
-DCLR_BUILD_OCL=OFF
|
||||||
|
-DHIPNV_DIR=$(Build.SourcesDirectory)/hipother/hipnv
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: nvidia
|
||||||
107
.azuredevops/components/HIPIFY.yml
Normal file
107
.azuredevops/components/HIPIFY.yml
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libnuma-dev
|
||||||
|
- python3-dev
|
||||||
|
- python3-pip
|
||||||
|
- python-is-python3
|
||||||
|
- mesa-common-dev
|
||||||
|
- ccache
|
||||||
|
- cuda-toolkit
|
||||||
|
- cudnn
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: HIPIFY
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: UPSTREAM_LLVM_GIT_URL
|
||||||
|
value: https://github.com/llvm/llvm-project.git
|
||||||
|
- name: UPSTREAM_LLVM_TAG
|
||||||
|
value: llvmorg-18.1.2
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register CUDA packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget -q -O- https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-archive-keyring.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/cuda-archive-keyring.gpg > /dev/null
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/cuda-archive-keyring.gpg] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /" | sudo tee /etc/apt/sources.list.d/cuda-ubuntu2204-x86_64.list
|
||||||
|
sudo apt update
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone upstream llvm-project
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone $(UPSTREAM_LLVM_GIT_URL) --depth=1 --branch $(UPSTREAM_LLVM_TAG) --recurse-submodules
|
||||||
|
workingDirectory: $(Pipeline.Workspace)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- script: |
|
||||||
|
mkdir -p $(CCACHE_DIR)
|
||||||
|
echo "##vso[task.prependpath]/usr/lib/ccache:/usr/local/cuda/bin"
|
||||||
|
displayName: Update path for cuda and ccache
|
||||||
|
- task: Cache@2
|
||||||
|
displayName: Ccache caching
|
||||||
|
inputs:
|
||||||
|
key: HIPIFY | $(Agent.OS) | "$(UPSTREAM_LLVM_TAG)"
|
||||||
|
path: $(CCACHE_DIR)
|
||||||
|
restoreKeys: HIPIFY | $(Agent.OS)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: upstream-llvm
|
||||||
|
cmakeBuildDir: $(Pipeline.Workspace)/llvm-project/llvm/build
|
||||||
|
installDir: $(Pipeline.Workspace)/llvm
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DLLVM_ENABLE_PROJECTS=clang
|
||||||
|
-DLLVM_INCLUDE_TESTS=OFF
|
||||||
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
||||||
|
-DCMAKE_C_COMPILER_LAUNCHER=ccache
|
||||||
|
-GNinja
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: python install lit
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo python3 $(Pipeline.Workspace)/llvm-project/llvm/utils/lit/setup.py install
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: install FileCheck
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: cp $(Pipeline.Workspace)/llvm-project/llvm/build/bin/FileCheck $(Pipeline.Workspace)/llvm/bin
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: HIPIFY
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DHIPIFY_CLANG_TESTS=ON
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda/targets/x86_64-linux
|
||||||
|
-DCUDA_DNN_ROOT_DIR=/usr/local/cuda/targets/x86_64-linux
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Pipeline.Workspace)/llvm;/usr/local/cuda/targets/x86_64-linux/lib
|
||||||
|
-DLLVM_EXTERNAL_LIT=$(Pipeline.Workspace)/llvm-project/llvm/build/bin/llvm-lit
|
||||||
|
multithreadFlag: -- -j32
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: HIPIFY
|
||||||
|
testDir: $(Build.SourcesDirectory)/build
|
||||||
|
testExecutable: make
|
||||||
|
testParameters: test-hipify
|
||||||
|
testPublishResults: false
|
||||||
227
.azuredevops/components/MIOpen.yml
Normal file
227
.azuredevops/components/MIOpen.yml
Normal file
@@ -0,0 +1,227 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- libbz2-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- libeigen3-dev
|
||||||
|
- libgmock-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- libsqlite3-dev
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- ninja-build
|
||||||
|
- nlohmann-json3-dev
|
||||||
|
- python3-pip
|
||||||
|
- software-properties-common
|
||||||
|
- zstd
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cget
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocMLIR
|
||||||
|
- rocRAND
|
||||||
|
- rocBLAS
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLASLt
|
||||||
|
- hipBLAS-common
|
||||||
|
- half
|
||||||
|
- composable_kernel
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- roctracer
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- composable_kernel
|
||||||
|
- half
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocMLIR
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocRAND
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: MIOpen
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
# The default boost library from apt is 1.74, which does not satisfy MIOpen's build requirement (1.79+)
|
||||||
|
# Upgrade boost from apt by following https://launchpad.net/~mhier/+archive/ubuntu/libboost-latest
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Install Boost 1.83'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo add-apt-repository ppa:mhier/libboost-latest -y
|
||||||
|
sudo apt-get --yes install libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DMIOPEN_BACKEND=HIP
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DMIOPEN_ENABLE_AI_KERNEL_TUNING=OFF
|
||||||
|
-DMIOPEN_ENABLE_AI_IMMED_MODE_FALLBACK=OFF
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DBUILD_TESTING=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: MIOpen_testing
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Install Boost 1.83'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo add-apt-repository ppa:mhier/libboost-latest -y
|
||||||
|
sudo apt-get --yes install libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# MIOpen depends on a specific version of frugally-deep which is forked here: https://github.com/ROCm/frugally-deep
|
||||||
|
# https://github.com/ROCm/frugally-deep/blob/master/INSTALL.md
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add Python site-packages binaries to path
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
USER_BASE=$(python3 -m site --user-base)
|
||||||
|
echo "##vso[task.prependpath]$USER_BASE/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install FunctionalPlus
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: cget install Dobiasd/FunctionalPlus
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove Python site-packages binaries from path
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
USER_BASE=$(python3 -m site --user-base)
|
||||||
|
echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$USER_BASE/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone frugally-deep
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/ROCm/frugally-deep --depth=1 --shallow-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: frugally-deep
|
||||||
|
cmakeBuildDir: $(Build.SourcesDirectory)/frugally-deep/build
|
||||||
|
installDir: $(Build.SourcesDirectory)/bin
|
||||||
|
extraBuildFlags: -DCMAKE_PREFIX_PATH=$(Build.SourcesDirectory)/cget/cget/pkg/Dobiasd__FunctionalPlus/install
|
||||||
|
- task: CMake@1
|
||||||
|
displayName: 'MIOpen Test CMake Flags'
|
||||||
|
inputs:
|
||||||
|
cmakeArgs: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Build.SourcesDirectory)/bin;$(Build.SourcesDirectory)/cget/cget/pkg/Dobiasd__FunctionalPlus/install
|
||||||
|
-DCMAKE_INSTALL_PREFIX=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DMIOPEN_BACKEND=HIP
|
||||||
|
-DMIOPEN_TEST_FLAGS=" --disable-verification-cache"
|
||||||
|
-DCMAKE_BUILD_TYPE=release
|
||||||
|
-DBUILD_DEV=OFF
|
||||||
|
-DMIOPEN_USE_MLIR=ON
|
||||||
|
-DMIOPEN_GPU_SYNC=OFF
|
||||||
|
..
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: MIOpen
|
||||||
|
testExecutable: 'CTEST_PARALLEL_LEVEL=4 make -j$(nproc) check'
|
||||||
|
testParameters: ''
|
||||||
|
reloadAMDGPU: true
|
||||||
|
testPublishResults: false
|
||||||
|
- task: Bash@3
|
||||||
|
condition: always()
|
||||||
|
displayName: Clean up Boost 1.83
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo apt -y autoremove libboost1.83-dev libboost-system1.83-dev libboost-filesystem1.83-dev
|
||||||
|
sudo add-apt-repository --remove ppa:mhier/libboost-latest -y
|
||||||
|
sudo apt update
|
||||||
168
.azuredevops/components/MIVisionX.yml
Normal file
168
.azuredevops/components/MIVisionX.yml
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- wget
|
||||||
|
- unzip
|
||||||
|
- pkg-config
|
||||||
|
- protobuf-compiler
|
||||||
|
- libprotoc-dev
|
||||||
|
- ffmpeg
|
||||||
|
- libavcodec-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- libavutil-dev
|
||||||
|
- libswscale-dev
|
||||||
|
- build-essential
|
||||||
|
- libgtk2.0-dev
|
||||||
|
- libavcodec-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- libswscale-dev
|
||||||
|
- libtbb2
|
||||||
|
- libtbb-dev
|
||||||
|
- libjpeg-dev
|
||||||
|
- libpng-dev
|
||||||
|
- libtiff-dev
|
||||||
|
- libdc1394-dev
|
||||||
|
- libgmp-dev
|
||||||
|
- libopencv-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- future==0.18.2
|
||||||
|
- pytz==2022.1
|
||||||
|
- numpy==1.21
|
||||||
|
- google==3.0.0
|
||||||
|
- protobuf==3.12.4
|
||||||
|
- onnx==1.12.0
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- half
|
||||||
|
- rocBLAS
|
||||||
|
- MIOpen
|
||||||
|
- AMDMIGraphX
|
||||||
|
- rpp
|
||||||
|
- rocDecode
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- half
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- MIOpen
|
||||||
|
- rocBLAS
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
- rpp
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: MIVisionX
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_DEP_ROCMCORE=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: MIVisionX_testing
|
||||||
|
dependsOn: MIVisionX
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# anything in /opt may be persistent across runs
|
||||||
|
# so we need to remove the symlink if it already exists
|
||||||
|
- script: |
|
||||||
|
sudo rm -f /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
mkdir mivisionx-tests
|
||||||
|
cd mivisionx-tests
|
||||||
|
cmake /opt/rocm/share/mivisionx/test
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: MIVisionX
|
||||||
|
testDir: 'mivisionx-tests'
|
||||||
175
.azuredevops/components/ROCR-Runtime.yml
Normal file
175
.azuredevops/components/ROCR-Runtime.yml
Normal file
@@ -0,0 +1,175 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- g++
|
||||||
|
- libdrm-dev
|
||||||
|
- libelf-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: ROCR_Runtime
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_SHARED_LIBS=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: ROCR_Runtime_testing
|
||||||
|
dependsOn: ROCR_Runtime
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install libhwloc5
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
script: |
|
||||||
|
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc5_1.11.12-3_amd64.deb
|
||||||
|
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc-dev_1.11.12-3_amd64.deb
|
||||||
|
sudo apt install -y --allow-downgrades ./libhwloc5_1.11.12-3_amd64.deb ./libhwloc-dev_1.11.12-3_amd64.deb
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build kfdtest
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest
|
||||||
|
script: |
|
||||||
|
mkdir build && cd build
|
||||||
|
cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm ..
|
||||||
|
make
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: kfdtest
|
||||||
|
testExecutable: BIN_DIR=$(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/build ./run_kfdtest.sh
|
||||||
|
testParameters: '-p core --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
|
testDir: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/scripts
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build rdmatest app
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/app
|
||||||
|
script: |
|
||||||
|
cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DLIBHSAKMT_PATH=$(Agent.BuildDirectory)/rocm -DDRM_AMDGPU_INCLUDE_DIRS=$(Agent.BuildDirectory)/rocm/include .
|
||||||
|
cmake --build .
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build rdmatest driver
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/drv
|
||||||
|
script: |
|
||||||
|
sed -i 's/HSAKMT_PAGE_SHIFT/PAGE_SHIFT/g' amdp2ptest.c
|
||||||
|
sed -i 's/"MIT"/"GPL"/' amdp2ptest.c
|
||||||
|
RDMA_HEADER_DIR=/usr/src/amdgpu-*/include make all
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install rdmatest driver
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/drv
|
||||||
|
script: |
|
||||||
|
sudo rmmod amdp2ptest.ko
|
||||||
|
sudo insmod amdp2ptest.ko
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rdmatest
|
||||||
|
testExecutable: yes | ./rdma_test
|
||||||
|
testParameters: ''
|
||||||
|
testDir: $(Build.SourcesDirectory)/libhsakmt/tests/rdma/simple/app
|
||||||
|
testPublishResults: false
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build rocrtst
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/rocrtst/suites/test_common
|
||||||
|
script: |
|
||||||
|
sudo rm -rf $(Agent.BuildDirectory)/external/llvm-project
|
||||||
|
mkdir -p $(Agent.BuildDirectory)/external/llvm-project/clang/lib
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm/llvm/lib/clang/20/include $(Agent.BuildDirectory)/external/llvm-project/clang/lib/Headers
|
||||||
|
mkdir build && cd build
|
||||||
|
cmake .. \
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm \
|
||||||
|
-DTARGET_DEVICES=$(JOB_GPU_TARGET) \
|
||||||
|
-DROCM_DIR=$(Agent.BuildDirectory)/rocm \
|
||||||
|
-DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin \
|
||||||
|
-DOPENCL_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin
|
||||||
|
make
|
||||||
|
make rocrtst_kernels
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocrtst
|
||||||
|
testExecutable: ./rocrtst64
|
||||||
|
testParameters: '--gtest_filter="-rocrtstNeg.Memory_Negative_Tests" --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
|
testDir: $(Build.SourcesDirectory)/rocrtst/suites/test_common/build/$(JOB_GPU_TARGET)
|
||||||
32
.azuredevops/components/ROCT-Thunk-Interface.yml
Normal file
32
.azuredevops/components/ROCT-Thunk-Interface.yml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- libnuma-dev
|
||||||
|
- libdrm-dev
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: ROCT_Thunk_Interface
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
53
.azuredevops/components/ROCdbgapi.yml
Normal file
53
.azuredevops/components/ROCdbgapi.yml
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: ROCdbgapi
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
115
.azuredevops/components/ROCgdb.yml
Normal file
115
.azuredevops/components/ROCgdb.yml
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
# reference: https://github.com/ROCm/ROCgdb/blob/amd-staging/README-ROCM.md
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- bison
|
||||||
|
- dejagnu
|
||||||
|
- flex
|
||||||
|
- libbabeltrace-dev
|
||||||
|
- libexpat-dev
|
||||||
|
- libgmp-dev
|
||||||
|
- liblzma-dev
|
||||||
|
- libmpfr-dev
|
||||||
|
- ncurses-dev
|
||||||
|
- texinfo
|
||||||
|
- zlib1g-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- ROCdbgapi
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: ROCgdb
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: PKG_CONFIG_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/share/pkgconfig
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml
|
||||||
|
parameters:
|
||||||
|
configureFlags: >-
|
||||||
|
--program-prefix=roc
|
||||||
|
--enable-64-bit-bfd
|
||||||
|
--enable-targets="x86_64-linux-gnu,amdgcn-amd-amdhsa"
|
||||||
|
--disable-ld
|
||||||
|
--disable-gas
|
||||||
|
--disable-gdbserver
|
||||||
|
--disable-sim
|
||||||
|
--enable-tui
|
||||||
|
--disable-gdbtk
|
||||||
|
--disable-shared
|
||||||
|
--disable-gprofng
|
||||||
|
--with-expat
|
||||||
|
--with-system-zlib
|
||||||
|
--without-guile
|
||||||
|
--with-babeltrace
|
||||||
|
--with-lzma
|
||||||
|
--with-python=python3
|
||||||
|
--with-rocm-dbgapi=$(Agent.BuildDirectory)/rocm
|
||||||
|
LDFLAGS="-Wl,--enable-new-dtags,-rpath=$(Agent.BuildDirectory)/rocm/lib"
|
||||||
|
makeCallPrefix: LD_RUN_PATH='${ORIGIN}/../lib'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Setup test environment
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
echo "##vso[task.prependpath]/opt/rocm/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: check-gdb
|
||||||
|
continueOnError: true
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: make check-gdb TESTS=gdb.rocm/simple.exp
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: print gdb log
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: find -name gdb.log -exec cat {} \;
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
141
.azuredevops/components/ROCmValidationSuite.yml
Normal file
141
.azuredevops/components/ROCmValidationSuite.yml
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libyaml-cpp-dev
|
||||||
|
- libpci-dev
|
||||||
|
- libpci3
|
||||||
|
- libgtest-dev
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: ROCmValidationSuite
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
- name: ROCM_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
- name: HIP_INC_DIR
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCPACK_PACKAGING_INSTALL_PREFIX=$(Build.BinariesDirectory)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: ROCmValidationSuite_testing
|
||||||
|
dependsOn: ROCmValidationSuite
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: ROCmValidationSuite
|
||||||
|
testExecutable: $(Agent.BuildDirectory)/rocm/bin/rvs -c $(Agent.BuildDirectory)/rocm/share/rocm-validation-suite/conf/MI300X/gst_single.conf
|
||||||
|
testParameters: ''
|
||||||
|
testDir: $(Agent.BuildDirectory)
|
||||||
|
testPublishResults: false
|
||||||
61
.azuredevops/components/amdsmi.yml
Normal file
61
.azuredevops/components/amdsmi.yml
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- libdrm-dev
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: amdsmi
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DBUILD_TESTS=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: amdsmi_testing
|
||||||
|
dependsOn: amdsmi
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: amdsmi
|
||||||
|
testDir: '$(Agent.BuildDirectory)'
|
||||||
|
testExecutable: './rocm/share/amd_smi/tests/amdsmitst'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
57
.azuredevops/components/aomp-extras.yml
Normal file
57
.azuredevops/components/aomp-extras.yml
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- ninja-build
|
||||||
|
- pkg-config
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: aomp_extras
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: aomp-extras
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAOMP_STANDALONE_BUILD=0
|
||||||
|
-DAOMP_VERSION_STRING=$(LATEST_RELEASE_TAG)
|
||||||
|
-GNinja
|
||||||
|
installDir: $(Build.BinariesDirectory)/llvm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
488
.azuredevops/components/aomp.yml
Normal file
488
.azuredevops/components/aomp.yml
Normal file
@@ -0,0 +1,488 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
# reference:
|
||||||
|
# https://github.com/ROCm/aomp/blob/aomp-dev/docs/SOURCEINSTALL_PREREQUISITE.md
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- ninja-build
|
||||||
|
- pkg-config
|
||||||
|
- libpci-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- libffi-dev
|
||||||
|
- git
|
||||||
|
- libopenmpi-dev
|
||||||
|
- gawk
|
||||||
|
- mesa-common-dev
|
||||||
|
- libtool
|
||||||
|
- libdrm-amdgpu1
|
||||||
|
- libdrm-dev
|
||||||
|
- libdw-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- libsystemd-dev
|
||||||
|
- libssl-dev
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- ccache
|
||||||
|
- libgmp-dev
|
||||||
|
- libmpfr-dev
|
||||||
|
- texinfo
|
||||||
|
- libbison-dev
|
||||||
|
- bison
|
||||||
|
- flex
|
||||||
|
- libbabeltrace-dev
|
||||||
|
- libncurses5-dev
|
||||||
|
- liblzma-dev
|
||||||
|
- python3-setuptools
|
||||||
|
- python3-dev
|
||||||
|
- libudev-dev
|
||||||
|
- parallel
|
||||||
|
# Referencing comment snippet below but excluding rocprofiler and roctracer.
|
||||||
|
# This is to remove need for separate build per gpu target.
|
||||||
|
# With our selected build flags, compilation and installation work fine without these two.
|
||||||
|
#
|
||||||
|
# snippet from https://github.com/ROCm/aomp/blob/aomp-dev/bin/build_aomp.sh#L131-L134
|
||||||
|
#
|
||||||
|
# For ROCM build (AOMP_STANDALONE_BUILD=0) the components roct, rocr,
|
||||||
|
# libdevice, project, comgr, rocminfo, hipamd, rocdbgapi, rocgdb,
|
||||||
|
# roctracer, rocprofiler, rocm_smi_lib, and amdsmi should be found
|
||||||
|
# in ROCM in /opt/rocm. The ROCM build only needs these components:
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- amdsmi
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- ROCdbgapi
|
||||||
|
- ROCgdb
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: aomp
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
# checkout the repos tied to openmp-extras, plus llvm-project
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: aomp-extras_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: flang_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: llvm-project_repo
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# Because clang is not being rebuilt and to separate downloaded ROCm
|
||||||
|
# dependencies from the new artifacts, we use temporary symbolic links
|
||||||
|
# for the compilation and installation to go through.
|
||||||
|
- script: |
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
mkdir -p $(Build.BinariesDirectory)/bin
|
||||||
|
ln -s $(Agent.BuildDirectory)/rocm/llvm/bin/clang $(Build.BinariesDirectory)/bin/clang
|
||||||
|
ln -s $(Agent.BuildDirectory)/rocm/llvm/bin/clang++ $(Build.BinariesDirectory)/bin/clang++
|
||||||
|
ln -s $(Agent.BuildDirectory)/rocm/llvm/bin/llvm-config $(Build.BinariesDirectory)/bin/llvm-config
|
||||||
|
ln -s $(Agent.BuildDirectory)/rocm/llvm $(Build.BinariesDirectory)/llvm
|
||||||
|
displayName: Extra build environment setup
|
||||||
|
# We follow the sequence described in the aomp repo instructions
|
||||||
|
# https://github.com/ROCm/aomp/blob/aomp-dev/docs/SOURCEINSTALL.md
|
||||||
|
# But instead of calling build_aomp.sh directly, we have to split up the calls to build each component
|
||||||
|
# in order for the omp.h header file to be both be published as an artifact,
|
||||||
|
# and be found when building subsequent components.
|
||||||
|
# Environment variables specified per bash script were determined from looking through the
|
||||||
|
# individual scripts and iteratively testing compilation.
|
||||||
|
# Splitting up the build_aomp.sh call is also easier for debugging within Azure, as the former
|
||||||
|
# method leads to a giant build log compared to separate logs per script call.
|
||||||
|
#
|
||||||
|
# Components compiled and the order for non-standalone build found at
|
||||||
|
# https://github.com/ROCm/aomp/blob/aomp-dev/bin/build_aomp.sh#L135-L143
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build Prereq
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_prereq.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build extras
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_extras.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_EXTRAS: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install extras
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_extras.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_EXTRAS: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build openmp
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_openmp.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_LEGACY_OPENMP: 1
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
ALTAOMP: $(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_OPENMP: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install openmp
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_openmp.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_LEGACY_OPENMP: 1
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
ALTAOMP: $(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_OPENMP: $(Build.BinariesDirectory)
|
||||||
|
- script: ln -s $(Build.BinariesDirectory)/include/omp.h $(Build.SourcesDirectory)/llvm-project/llvm/include/omp.h
|
||||||
|
displayName: Link omp header
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build offload
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_offload.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_LEGACY_OPENMP: 1
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
ALTAOMP: $(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_OPENMP: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install offload
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_offload.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_LEGACY_OPENMP: 1
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
ALTAOMP: $(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_OPENMP: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build flang-legacy
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang-legacy.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install flang-legacy
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang-legacy.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build pgmath
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_pgmath.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install pgmath
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_pgmath.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build flang
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install flang
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build flang_runtime
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang_runtime.sh
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install flang_runtime
|
||||||
|
inputs:
|
||||||
|
filePath: $(Build.SourcesDirectory)/aomp/bin/build_flang_runtime.sh
|
||||||
|
arguments: install
|
||||||
|
env:
|
||||||
|
AOMP_REPOS: $(Build.SourcesDirectory)
|
||||||
|
AOMP_PROJECT_REPO_NAME: llvm-project
|
||||||
|
AOMP_STANDALONE_BUILD: 0
|
||||||
|
AOMP_BUILD_SANITIZER: 0
|
||||||
|
AOMP_BUILD_DEBUG: 0
|
||||||
|
AOMP_USE_NINJA: 1
|
||||||
|
INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
CMAKE_INSTALL_PREFIX: $(Build.BinariesDirectory)
|
||||||
|
LLVM_PROJECT_ROOT: $(Build.SourcesDirectory)/llvm-project
|
||||||
|
AOMP: $(Build.BinariesDirectory)
|
||||||
|
AOMP_INSTALL_DIR: $(Build.BinariesDirectory)
|
||||||
|
INSTALL_FLANG: $(Build.BinariesDirectory)
|
||||||
|
# Clean up build environment before publish artifact
|
||||||
|
- script: |
|
||||||
|
rm $(Build.BinariesDirectory)/bin/clang
|
||||||
|
rm $(Build.BinariesDirectory)/bin/clang++
|
||||||
|
rm $(Build.BinariesDirectory)/bin/llvm-config
|
||||||
|
rm $(Build.BinariesDirectory)/llvm
|
||||||
|
displayName: Remove temporary symbolic links
|
||||||
|
# Copy the files to artifact staging temporarily to clean up binaries directory
|
||||||
|
# and then copy files back to llvm subdirectory in the cleaned up binaries directory
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.BinariesDirectory)
|
||||||
|
targetDir: $(Build.ArtifactStagingDirectory)
|
||||||
|
- task: DeleteFiles@1
|
||||||
|
displayName: 'Cleanup Binaries Directory'
|
||||||
|
inputs:
|
||||||
|
SourceFolder: '$(Build.BinariesDirectory)'
|
||||||
|
Contents: '/**/*'
|
||||||
|
RemoveDotFiles: true
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.ArtifactStagingDirectory)
|
||||||
|
targetDir: $(Build.BinariesDirectory)/llvm
|
||||||
|
- task: DeleteFiles@1
|
||||||
|
displayName: 'Cleanup Staging Directory'
|
||||||
|
inputs:
|
||||||
|
SourceFolder: $(Build.ArtifactStagingDirectory)
|
||||||
|
Contents: '/**/*'
|
||||||
|
RemoveDotFiles: true
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: aomp_testing
|
||||||
|
dependsOn: aomp
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: ROCm symbolic link
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: aomp-extras_repo
|
||||||
|
# these copy steps are from the aomp prototype script for test prep
|
||||||
|
- task: CopyFiles@2
|
||||||
|
displayName: 'Copy AOMP contents'
|
||||||
|
inputs:
|
||||||
|
CleanTargetFolder: false
|
||||||
|
SourceFolder: $(Build.SourcesDirectory)/aomp
|
||||||
|
Contents: |
|
||||||
|
**
|
||||||
|
!**/.git/**
|
||||||
|
!**/.github/**
|
||||||
|
!**/.gitignore
|
||||||
|
TargetFolder: $(Agent.BuildDirectory)/rocm/share/openmp-extras/tests
|
||||||
|
retryCount: 3
|
||||||
|
- task: CopyFiles@2
|
||||||
|
displayName: 'Copy FileCheck'
|
||||||
|
inputs:
|
||||||
|
CleanTargetFolder: false
|
||||||
|
SourceFolder: $(Agent.BuildDirectory)/rocm/llvm/bin
|
||||||
|
Contents: FileCheck
|
||||||
|
TargetFolder: $(Agent.BuildDirectory)/rocm/share/openmp-extras/tests/bin
|
||||||
|
retryCount: 3
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Test AOMP
|
||||||
|
continueOnError: true
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: ./run_rocm_test.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/aomp/bin
|
||||||
|
env:
|
||||||
|
AOMP: $(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
AOMP_REPOS_TEST: $(Build.SourcesDirectory)/aomp-test
|
||||||
|
AOMP_TEST_DIR: $(Build.SourcesDirectory)/aomp-test
|
||||||
|
SKIP_TEST_PACKAGE: 1
|
||||||
|
MAINLINE_BUILD: 1
|
||||||
|
SUITE_LIST: smoke
|
||||||
148
.azuredevops/components/composable_kernel.yml
Normal file
148
.azuredevops/components/composable_kernel.yml
Normal file
@@ -0,0 +1,148 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- libdrm-dev
|
||||||
|
- ccache
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- composable_kernel
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: composable_kernel
|
||||||
|
timeoutInMinutes: 240
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: DAY_STRING
|
||||||
|
value: $[format('{0:ddMMyyyy}', pipeline.startTime)]
|
||||||
|
pool: ${{ variables.ULTRA_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- script: |
|
||||||
|
mkdir -p $(CCACHE_DIR)
|
||||||
|
echo "##vso[task.prependpath]/usr/lib/ccache"
|
||||||
|
displayName: Update path for ccache
|
||||||
|
- task: Cache@2
|
||||||
|
displayName: Ccache caching
|
||||||
|
inputs:
|
||||||
|
key: composable_kernel | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
path: $(CCACHE_DIR)
|
||||||
|
restoreKeys: |
|
||||||
|
composable_kernel | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING)
|
||||||
|
composable_kernel | $(Agent.OS) | $(JOB_GPU_TARGET)
|
||||||
|
composable_kernel | $(Agent.OS)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
||||||
|
-DCMAKE_C_COMPILER_LAUNCHER=ccache
|
||||||
|
-DCMAKE_HIP_FLAGS="-Wno-missing-include-dirs"
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCK_BUILD_JIT_LIB=ON
|
||||||
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: composable_kernel_testing
|
||||||
|
dependsOn: composable_kernel
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: TEST_LOG_FILE
|
||||||
|
value: $(Pipeline.Workspace)/ckTestLog.log
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Iterate through test scripts
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
for file in ./test_*; do
|
||||||
|
./$file | tee -a $(TEST_LOG_FILE)
|
||||||
|
done
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)/rocm/bin
|
||||||
32
.azuredevops/components/copyHIP.yml
Normal file
32
.azuredevops/components/copyHIP.yml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
|
||||||
|
# hip and clr are tightly-coupled
|
||||||
|
# run this same template for both repos
|
||||||
|
# any changes for clr should just trigger HIP pipeline
|
||||||
|
jobs:
|
||||||
|
- job: hip_clr_combined
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
# checkout nothing, just copy artifacts from triggering HIP job
|
||||||
|
# and then publish for this clr job or for this hipother job to maintain latest
|
||||||
|
- checkout: none
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
componentName: HIP
|
||||||
|
pipelineId: $(hip-pipeline-id)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Agent.BuildDirectory)/rocm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
65
.azuredevops/components/half.yml
Normal file
65
.azuredevops/components/half.yml
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: half
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
# only run test03 because test11 has too many test cases, taking way too long
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: test03
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
make clean
|
||||||
|
make test03
|
||||||
|
./bin/test
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/test
|
||||||
145
.azuredevops/components/hip-tests.yml
Normal file
145
.azuredevops/components/hip-tests.yml
Normal file
@@ -0,0 +1,145 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- libnuma-dev
|
||||||
|
- mesa-common-dev
|
||||||
|
- ocl-icd-libopencl1
|
||||||
|
- ocl-icd-opencl-dev
|
||||||
|
- opencl-headers
|
||||||
|
- libglu1-mesa-dev
|
||||||
|
- freeglut3-dev
|
||||||
|
- libboost-all-dev
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
# HIP with AMD backend
|
||||||
|
jobs:
|
||||||
|
- job: hip_tests
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# compile hip-tests
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hip-tests
|
||||||
|
cmakeSourceDir: '../catch'
|
||||||
|
customBuildTarget: build_tests
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DHIP_PLATFORM=amd
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DHIP_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DOFFLOAD_ARCH_STR="--offload-arch=$(JOB_GPU_TARGET)"
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hip_tests_testing
|
||||||
|
timeoutInMinutes: 240
|
||||||
|
dependsOn: hip_tests
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Symlink rocm_agent_enumerator
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo mkdir -p /opt/rocm/bin
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rocm_agent_enumerator /opt/rocm/bin/rocm_agent_enumerator
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hip_tests
|
||||||
|
testDir: $(Agent.BuildDirectory)/rocm/share/hip
|
||||||
|
reloadAMDGPU: true
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Clean up symlink
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo rm -rf /opt/rocm
|
||||||
62
.azuredevops/components/hipBLAS-common.yml
Normal file
62
.azuredevops/components/hipBLAS-common.yml
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- wget
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipBLAS_common
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- name: ROCM_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
- ${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
- ${{ if ne(parameters.checkoutRef, '') }}:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
140
.azuredevops/components/hipBLAS.yml
Normal file
140
.azuredevops/components/hipBLAS.yml
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- gfortran
|
||||||
|
- googletest
|
||||||
|
- git
|
||||||
|
- libgtest-dev
|
||||||
|
- wget
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocBLAS
|
||||||
|
- rocSPARSE
|
||||||
|
- rocSOLVER
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocBLAS
|
||||||
|
- rocSPARSE
|
||||||
|
- rocSOLVER
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipBLAS
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DHIP_PLATFORM=amd
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-DCPACK_SET_DESTDIR=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipBLAS_testing
|
||||||
|
dependsOn: hipBLAS
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipBLAS
|
||||||
|
testExecutable: $(Agent.BuildDirectory)/rocm/bin/hipblas-test
|
||||||
|
testParameters: '--yaml hipblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
192
.azuredevops/components/hipBLASLt.yml
Normal file
192
.azuredevops/components/hipBLASLt.yml
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- git
|
||||||
|
- libdrm-dev
|
||||||
|
- libmsgpack-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- ninja-build
|
||||||
|
- python3-pip
|
||||||
|
- python3-venv
|
||||||
|
- gfortran
|
||||||
|
- libblas-dev
|
||||||
|
- ccache
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- joblib
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipBLASLt
|
||||||
|
timeoutInMinutes: 300
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
- name: TENSILE_ROCM_ASSEMBLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
- name: CMAKE_CXX_COMPILER
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
- name: TENSILE_ROCM_OFFLOAD_BUNDLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/clang-offload-bundler
|
||||||
|
- name: TENSILE_ROCM_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
- name: PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin:$(Agent.BuildDirectory)/rocm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
|
||||||
|
- name: DAY_STRING
|
||||||
|
value: $[format('{0:ddMMyyyy}', pipeline.startTime)]
|
||||||
|
pool: ${{ variables.ULTRA_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- script: sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
displayName: ROCm symbolic link
|
||||||
|
# Build and install gtest, lapack, hipBLAS-common
|
||||||
|
# $(Pipeline.Workspace)/deps is a temporary folder for the build process
|
||||||
|
# $(Pipeline.Workspace)/s/deps is part of the hipBLASLt repo
|
||||||
|
- script: mkdir $(Pipeline.Workspace)/deps
|
||||||
|
displayName: Create temp folder for external dependencies
|
||||||
|
# hipBLASLt already has a CMake script for external deps, so we can just run that
|
||||||
|
# https://github.com/ROCm/hipBLASLt/blob/develop/deps/CMakeLists.txt
|
||||||
|
- script: cmake $(Pipeline.Workspace)/s/deps
|
||||||
|
displayName: Configure hipBLASLt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- script: make
|
||||||
|
displayName: Build hipBLASLt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- script: sudo make install
|
||||||
|
displayName: Install hipBLASLt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- script: |
|
||||||
|
mkdir -p $(CCACHE_DIR)
|
||||||
|
echo "##vso[task.prependpath]/usr/lib/ccache"
|
||||||
|
displayName: Update path for ccache
|
||||||
|
- task: Cache@2
|
||||||
|
displayName: Ccache caching
|
||||||
|
inputs:
|
||||||
|
key: hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
path: $(CCACHE_DIR)
|
||||||
|
restoreKeys: |
|
||||||
|
hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET) | $(DAY_STRING)
|
||||||
|
hipBLASLt | $(Agent.OS) | $(JOB_GPU_TARGET)
|
||||||
|
hipBLASLt | $(Agent.OS)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
||||||
|
-DCMAKE_C_COMPILER_LAUNCHER=ccache
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DTensile_LOGIC=
|
||||||
|
-DTensile_CPU_THREADS=
|
||||||
|
-DTensile_CODE_OBJECT_VERSION=default
|
||||||
|
-DTensile_LIBRARY_FORMAT=msgpack
|
||||||
|
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
|
||||||
|
- job: hipBLASLt_testing
|
||||||
|
dependsOn: hipBLASLt
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipBLASLt
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './hipblaslt-test'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*'
|
||||||
118
.azuredevops/components/hipCUB.yml
Normal file
118
.azuredevops/components/hipCUB.yml
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libgtest-dev
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipCUB
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_TEST=ON
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipCUB_testing
|
||||||
|
dependsOn: hipCUB
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipCUB
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/hipcub'
|
||||||
138
.azuredevops/components/hipFFT.yml
Normal file
138
.azuredevops/components/hipFFT.yml
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- libfftw3-dev
|
||||||
|
- python3-pip
|
||||||
|
# rocm dependencies should match dependencies-rocm.yml
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- rocRAND
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocFFT
|
||||||
|
- aomp
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocFFT
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipFFT
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DUSE_HIP_CLANG=ON
|
||||||
|
-DHIP_COMPILER=clang
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipFFT_testing
|
||||||
|
dependsOn: hipFFT
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipFFT
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './hipfft-test'
|
||||||
|
testParameters: '--test_prob 0.002 --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
122
.azuredevops/components/hipRAND.yml
Normal file
122
.azuredevops/components/hipRAND.yml
Normal file
@@ -0,0 +1,122 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- googletest
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocRAND
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipRAND
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DBUILD_TEST=ON
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipRAND_testing
|
||||||
|
dependsOn: hipRAND
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipRAND
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/hipRAND'
|
||||||
145
.azuredevops/components/hipSOLVER.yml
Normal file
145
.azuredevops/components/hipSOLVER.yml
Normal file
@@ -0,0 +1,145 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libsuitesparse-dev
|
||||||
|
- gfortran
|
||||||
|
- git
|
||||||
|
- googletest
|
||||||
|
- libgtest-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSPARSE
|
||||||
|
- rocSOLVER
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipSPARSE
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipSOLVER
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# build external gtest and lapack
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: external
|
||||||
|
cmakeBuildDir: 'deps/build'
|
||||||
|
installDir: '$(Pipeline.Workspace)/deps-install'
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DBUILD_BOOST=OFF
|
||||||
|
-DBUILD_GTEST=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Pipeline.Workspace)/deps-install
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DUSE_CUDA=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipSOLVER_testing
|
||||||
|
dependsOn: hipSOLVER
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipSOLVER
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './hipsolver-test'
|
||||||
|
testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
139
.azuredevops/components/hipSPARSE.yml
Normal file
139
.azuredevops/components/hipSPARSE.yml
Normal file
@@ -0,0 +1,139 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- googletest
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- gfortran
|
||||||
|
- libgtest-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSPARSE
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipSPARSE
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake/
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: hipSPARSE
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
publish: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.SourcesDirectory)/build/clients
|
||||||
|
contentsString: matrices/**
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: testMatrices
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipSPARSE_testing
|
||||||
|
dependsOn: hipSPARSE
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipSPARSE
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './hipsparse-test'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
159
.azuredevops/components/hipSPARSELt.yml
Normal file
159
.azuredevops/components/hipSPARSELt.yml
Normal file
@@ -0,0 +1,159 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- ninja-build
|
||||||
|
- python3-venv
|
||||||
|
- libmsgpack-dev
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- gfortran
|
||||||
|
- libgfortran5
|
||||||
|
- libopenblas-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- joblib
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipSPARSELt
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
- name: TENSILE_ROCM_ASSEMBLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/clang
|
||||||
|
- name: CMAKE_CXX_COMPILER
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/hipcc
|
||||||
|
- name: TENSILE_ROCM_OFFLOAD_BUNDLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/clang-offload-bundler
|
||||||
|
- name: PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin:$(Agent.BuildDirectory)/rocm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# Build and install gtest and lapack
|
||||||
|
# $(Pipeline.Workspace)/deps is a temporary folder for the build process
|
||||||
|
# $(Pipeline.Workspace)/s/deps is part of the hipSPARSELt repo
|
||||||
|
- script: mkdir $(Pipeline.Workspace)/deps
|
||||||
|
displayName: Create temp folder for external dependencies
|
||||||
|
# hipSPARSELt already has a CMake script for external deps, so we can just run that
|
||||||
|
# https://github.com/ROCm/hipSPARSELt/blob/develop/deps/CMakeLists.txt
|
||||||
|
- script: cmake $(Pipeline.Workspace)/s/deps
|
||||||
|
displayName: Configure hipSPARSELt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- script: make
|
||||||
|
displayName: Build hipSPARSELt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- script: sudo make install
|
||||||
|
displayName: Install hipSPARSELt external dependencies
|
||||||
|
workingDirectory: $(Pipeline.Workspace)/deps
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DTensile_LOGIC=
|
||||||
|
-DTensile_CPU_THREADS=
|
||||||
|
-DTensile_CODE_OBJECT_VERSION=default
|
||||||
|
-DTensile_LIBRARY_FORMAT=msgpack
|
||||||
|
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipSPARSELt_testing
|
||||||
|
dependsOn: hipSPARSELt
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipSPARSELt
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './hipsparselt-test'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*'
|
||||||
120
.azuredevops/components/hipTensor.yml
Normal file
120
.azuredevops/components/hipTensor.yml
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- python3-pip
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- composable_kernel
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipTensor
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DHIPTENSOR_BUILD_TESTS=ON
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
multithreadFlag: -- -j32
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipTensor_testing
|
||||||
|
timeoutInMinutes: 90
|
||||||
|
dependsOn: hipTensor
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipTensor
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/hiptensor'
|
||||||
|
testParameters: '-E ".*-extended" -VV --output-on-failure --force-new-ctest-process --output-junit test_output.xml'
|
||||||
147
.azuredevops/components/hipfort.yml
Normal file
147
.azuredevops/components/hipfort.yml
Normal file
@@ -0,0 +1,147 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- gfortran
|
||||||
|
- git
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- python3-dev
|
||||||
|
- ninja-build
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- llvm-project
|
||||||
|
- clr
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipFFT
|
||||||
|
- hipRAND
|
||||||
|
- hipSOLVER
|
||||||
|
- hipSPARSE
|
||||||
|
- rocBLAS
|
||||||
|
- rocFFT
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocRAND
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: hipfort
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/llvm
|
||||||
|
-DHIPFORT_INSTALL_DIR=$(Build.BinariesDirectory)
|
||||||
|
-DHIPFORT_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/flang
|
||||||
|
-DCMAKE_Fortran_FLAGS="-Mfree -fPIC"
|
||||||
|
-DCMAKE_Fortran_FLAGS_DEBUG=""
|
||||||
|
-DHIPFORT_COMPILER_FLAGS="-cpp"
|
||||||
|
-DHIPFORT_AR=$(Agent.BuildDirectory)/rocm/llvm/bin/llvm-ar
|
||||||
|
-DHIPFORT_RANLIB=$(Agent.BuildDirectory)/rocm/llvm/bin/llvm-ranlib
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_TESTING=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: hipfort_testing
|
||||||
|
dependsOn: hipfort
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'ROCm symbolic link'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Test hipfort'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: PATH=$(Agent.BuildDirectory)/rocm/bin:$PATH make run_all
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/test
|
||||||
142
.azuredevops/components/llvm-project.yml
Normal file
142
.azuredevops/components/llvm-project.yml
Normal file
@@ -0,0 +1,142 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- libnuma-dev
|
||||||
|
- ninja-build
|
||||||
|
- python-is-python3
|
||||||
|
- zlib1g-dev
|
||||||
|
- pkg-config
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: llvm_project
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_DEVICE_LIB_PATH
|
||||||
|
value: '$(Build.BinariesDirectory)/amdgcn/bitcode'
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocm-llvm
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH="$(Build.BinariesDirectory)/llvm;$(Build.BinariesDirectory)"
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DLLVM_ENABLE_PROJECTS=clang;lld;clang-tools-extra;mlir
|
||||||
|
-DLLVM_ENABLE_RUNTIMES=compiler-rt;libunwind;libcxx;libcxxabi
|
||||||
|
-DCLANG_ENABLE_AMDCLANG=ON
|
||||||
|
-DLLVM_TARGETS_TO_BUILD=AMDGPU;X86
|
||||||
|
-DLIBCXX_ENABLE_SHARED=OFF
|
||||||
|
-DLIBCXX_ENABLE_STATIC=ON
|
||||||
|
-DLIBCXX_INSTALL_LIBRARY=OFF
|
||||||
|
-DLIBCXX_INSTALL_HEADERS=OFF
|
||||||
|
-DLIBCXXABI_ENABLE_SHARED=OFF
|
||||||
|
-DLIBCXXABI_ENABLE_STATIC=ON
|
||||||
|
-DLIBCXXABI_INSTALL_STATIC_LIBRARY=OFF
|
||||||
|
-DLLVM_BUILD_DOCS=OFF
|
||||||
|
-DLLVM_ENABLE_SPHINX=OFF
|
||||||
|
-DLLVM_ENABLE_ASSERTIONS=OFF
|
||||||
|
-DLLVM_ENABLE_Z3_SOLVER=OFF
|
||||||
|
-DLLVM_ENABLE_ZLIB=ON
|
||||||
|
-DCLANG_DEFAULT_LINKER=lld
|
||||||
|
-DCLANG_DEFAULT_RTLIB=compiler-rt
|
||||||
|
-DCLANG_DEFAULT_UNWINDLIB=libgcc
|
||||||
|
-DSANITIZER_AMDGPU=OFF
|
||||||
|
-DPACKAGE_VENDOR=AMD
|
||||||
|
-DCLANG_LINK_FLANG_LEGACY=ON
|
||||||
|
-DCMAKE_CXX_STANDARD=17
|
||||||
|
-DROCM_LLVM_BACKWARD_COMPAT_LINK=$(Build.BinariesDirectory)/llvm
|
||||||
|
-DROCM_LLVM_BACKWARD_COMPAT_LINK_TARGET=./lib/llvm
|
||||||
|
-GNinja
|
||||||
|
cmakeBuildDir: 'llvm/build'
|
||||||
|
installDir: '$(Build.BinariesDirectory)/llvm'
|
||||||
|
# use llvm-lit to run unit tests for llvm, clang, and lld
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: check-llvm
|
||||||
|
testDir: 'llvm/build'
|
||||||
|
testExecutable: './bin/llvm-lit'
|
||||||
|
testParameters: '-q --xunit-xml-output=llvm_test_output.xml ./test'
|
||||||
|
testOutputFile: llvm_test_output.xml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: check-clang
|
||||||
|
testDir: 'llvm/build'
|
||||||
|
testExecutable: './bin/llvm-lit'
|
||||||
|
testParameters: '-q --xunit-xml-output=clang_test_output.xml ./tools/clang/test'
|
||||||
|
testOutputFile: clang_test_output.xml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: check-lld
|
||||||
|
testDir: 'llvm/build'
|
||||||
|
testExecutable: './bin/llvm-lit'
|
||||||
|
testParameters: '-q --xunit-xml-output=lld_test_output.xml ./tools/lld/test'
|
||||||
|
testOutputFile: lld_test_output.xml
|
||||||
|
- task: CopyFiles@2
|
||||||
|
displayName: Copy FileCheck for Publishing
|
||||||
|
inputs:
|
||||||
|
CleanTargetFolder: false
|
||||||
|
SourceFolder: llvm/build/bin
|
||||||
|
Contents: FileCheck
|
||||||
|
TargetFolder: $(Build.BinariesDirectory)/llvm/bin
|
||||||
|
retryCount: 3
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: device-libs
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH="$(Build.SourcesDirectory)/llvm/build"
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
cmakeBuildDir: 'amd/device-libs/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: comgr
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH="$(Build.SourcesDirectory)/llvm/build;$(Build.SourcesDirectory)/amd/device-libs/build"
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
cmakeBuildDir: 'amd/comgr/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: comgr
|
||||||
|
testParameters: '--output-on-failure --force-new-ctest-process --output-junit comgr_test_output.xml'
|
||||||
|
testDir: 'amd/comgr/build'
|
||||||
|
testOutputFile: comgr_test_output.xml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: hipcc
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DHIPCC_BACKWARD_COMPATIBILITY=OFF
|
||||||
|
cmakeBuildDir: 'amd/hipcc/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
167
.azuredevops/components/omniperf.yml
Normal file
167
.azuredevops/components/omniperf.yml
Normal file
@@ -0,0 +1,167 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- astunparse==1.6.2
|
||||||
|
- colorlover
|
||||||
|
- dash>=1.12.0
|
||||||
|
- matplotlib
|
||||||
|
- numpy>=1.17.5
|
||||||
|
- pandas>=1.4.3
|
||||||
|
- pymongo
|
||||||
|
- pyyaml
|
||||||
|
- tabulate
|
||||||
|
- tqdm
|
||||||
|
- dash-svg
|
||||||
|
- dash-bootstrap-components
|
||||||
|
- kaleido
|
||||||
|
- setuptools
|
||||||
|
- plotille
|
||||||
|
- mock
|
||||||
|
- pytest
|
||||||
|
- pytest-cov
|
||||||
|
- pytest-xdist
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: omniperf
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: omniperf_testing
|
||||||
|
dependsOn: omniperf
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: PYTHON_VERSION
|
||||||
|
value: 3.10
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add ROCm binaries to PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add ROCm compilers to PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_HIP_ARCHITECTURES=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DENABLE_TESTS=ON
|
||||||
|
-DINSTALL_TESTS=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: omniperf
|
||||||
|
testDir: $(Build.BinariesDirectory)/libexec/omniperf
|
||||||
|
testExecutable: export OMNIPERF_ARCH_OVERRIDE="MI300X"; ctest
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove ROCm binaries from PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove ROCm compilers from PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/llvm/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
141
.azuredevops/components/omnitrace.yml
Normal file
141
.azuredevops/components/omnitrace.yml
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
# largely referenced from: https://github.com/ROCm/omnitrace/blob/main/.github/workflows/ubuntu-jammy.yml
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- autoconf
|
||||||
|
- autotools-dev
|
||||||
|
- bison
|
||||||
|
- build-essential
|
||||||
|
- bzip2
|
||||||
|
- clang
|
||||||
|
- cmake
|
||||||
|
- environment-modules
|
||||||
|
- g++-12
|
||||||
|
- libdrm-dev
|
||||||
|
- libfabric-dev
|
||||||
|
- libiberty-dev
|
||||||
|
- libpapi-dev
|
||||||
|
- libpfm4-dev
|
||||||
|
- libtool
|
||||||
|
- libopenmpi-dev
|
||||||
|
- m4
|
||||||
|
- openmpi-bin
|
||||||
|
- software-properties-common
|
||||||
|
- python3-pip
|
||||||
|
- texinfo
|
||||||
|
- zlib1g-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- numpy
|
||||||
|
- perfetto
|
||||||
|
- dataclasses
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rccl
|
||||||
|
- rocm-core
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: omnitrace
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: ROCm symbolic link
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add ROCm binaries to PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add ROCm compilers to PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
# build flags reference: https://rocm.docs.amd.com/projects/omnitrace/en/latest/install/install.html
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DOMNITRACE_BUILD_TESTING=ON
|
||||||
|
-DOMNITRACE_BUILD_DYNINST=ON
|
||||||
|
-DOMNITRACE_BUILD_LIBUNWIND=ON
|
||||||
|
-DDYNINST_BUILD_TBB=ON
|
||||||
|
-DDYNINST_BUILD_ELFUTILS=ON
|
||||||
|
-DDYNINST_BUILD_LIBIBERTY=ON
|
||||||
|
-DDYNINST_BUILD_BOOST=ON
|
||||||
|
-DOMNITRACE_USE_PAPI=ON
|
||||||
|
-DOMNITRACE_USE_MPI=ON
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
multithreadFlag: -- -j32
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Set up omnitrace env
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: source share/omnitrace/setup-env.sh
|
||||||
|
workingDirectory: build
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: omnitrace
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove ROCm binaries from PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove ROCm compilers from PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/llvm/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
144
.azuredevops/components/rccl.yml
Normal file
144
.azuredevops/components/rccl.yml
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- googletest
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- ninja-build
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocm-core
|
||||||
|
- HIPIFY
|
||||||
|
- aomp
|
||||||
|
- aomp-extras
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- aomp-extras
|
||||||
|
- clr
|
||||||
|
- HIPIFY
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rccl
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
submoduleBehaviour: recursive
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- script: chmod +x $(Agent.BuildDirectory)/rocm/bin/hipify-perl
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_TESTS=ON
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake/
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rccl_testing
|
||||||
|
timeoutInMinutes: 120
|
||||||
|
dependsOn: rccl
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rccl
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rccl-UnitTests'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
167
.azuredevops/components/rdc.yml
Normal file
167
.azuredevops/components/rdc.yml
Normal file
@@ -0,0 +1,167 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- libcap-dev
|
||||||
|
- protobuf-compiler
|
||||||
|
- build-essential
|
||||||
|
- autoconf
|
||||||
|
- libtool
|
||||||
|
- pkg-config
|
||||||
|
- libdrm-dev
|
||||||
|
- libyaml-cpp-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- amdsmi
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- ROCmValidationSuite
|
||||||
|
- rocprofiler
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- amdsmi
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocm_smi_lib
|
||||||
|
- ROCmValidationSuite
|
||||||
|
- rocprofiler
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rdc
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# Build grpc
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'git clone grpc'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone -b v1.61.0 https://github.com/grpc/grpc --depth=1 --shallow-submodules --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
cmakeBuildDir: $(Build.SourcesDirectory)/grpc/build
|
||||||
|
installDir: $(Build.SourcesDirectory)/bin
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DgRPC_INSTALL=ON
|
||||||
|
-DgRPC_BUILD_TESTS=OFF
|
||||||
|
-DBUILD_SHARED_LIBS=ON
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DGRPC_ROOT="$(Build.SourcesDirectory)/bin"
|
||||||
|
-DBUILD_RVS=ON
|
||||||
|
-DBUILD_PROFILER=ON
|
||||||
|
-DBUILD_TESTS=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rdc_testing
|
||||||
|
dependsOn: rdc
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Setup test environment
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo rm -rf /usr/sbin/rdcd
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rdcd /usr/sbin/rdcd
|
||||||
|
echo $(Agent.BuildDirectory)/rocm/lib/rdc/grpc/lib | sudo tee /etc/ld.so.conf.d/grpc.conf
|
||||||
|
sudo ldconfig -v
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Test rdc
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: >-
|
||||||
|
$(Agent.BuildDirectory)/rocm/share/rdc/rdctst_tests/rdctst
|
||||||
|
--batch_mode
|
||||||
|
--start_rdcd
|
||||||
|
--unauth_comm
|
||||||
234
.azuredevops/components/rocAL.yml
Normal file
234
.azuredevops/components/rocAL.yml
Normal file
@@ -0,0 +1,234 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- python3-protobuf
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libprotobuf-dev
|
||||||
|
- libprotoc-dev
|
||||||
|
- protobuf-compiler
|
||||||
|
- liblmdb-dev
|
||||||
|
- pkg-config
|
||||||
|
- ffmpeg
|
||||||
|
- libavcodec-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- libavutil-dev
|
||||||
|
- libswscale-dev
|
||||||
|
- libturbojpeg-dev
|
||||||
|
- libjpeg-turbo-official=3.0.2-20240124
|
||||||
|
- libopencv-dev
|
||||||
|
- --allow-downgrades # for libjpeg-turbo
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- numpy
|
||||||
|
- opencv-python
|
||||||
|
- torch
|
||||||
|
- pillow
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocDecode
|
||||||
|
- half
|
||||||
|
- rpp
|
||||||
|
- MIVisionX
|
||||||
|
- aomp
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- half
|
||||||
|
- llvm-project
|
||||||
|
- MIVisionX
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rpp
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocAL
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register libjpeg-turbo packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget -q -O- https://packagecloud.io/dcommander/libjpeg-turbo/gpgkey | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/libjpeg-turbo.gpg > /dev/null
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/libjpeg-turbo.gpg] https://packagecloud.io/dcommander/libjpeg-turbo/any/ any main" | sudo tee /etc/apt/sources.list.d/libjpeg-turbo.list
|
||||||
|
sudo apt update
|
||||||
|
apt-cache show libjpeg-turbo-official | grep Version
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Clone PyBind11'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone --depth 1 -b v2.11.1 https://github.com/pybind/pybind11
|
||||||
|
workingDirectory: '$(Build.SourcesDirectory)'
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Clone RapidJSON'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone --depth 1 https://github.com/Tencent/rapidjson.git
|
||||||
|
workingDirectory: '$(Build.SourcesDirectory)'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: PyBind11
|
||||||
|
cmakeBuildDir: '$(Build.SourcesDirectory)/pybind11/build'
|
||||||
|
customInstallPath: false
|
||||||
|
installEnabled: false
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DDOWNLOAD_CATCH=ON
|
||||||
|
-DDOWNLOAD_EIGEN=ON
|
||||||
|
-GNinja
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Install PyBind11'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo cmake --build . --target install
|
||||||
|
workingDirectory: '$(Build.SourcesDirectory)/pybind11/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: RapidJSON
|
||||||
|
cmakeBuildDir: '$(Build.SourcesDirectory)/rapidjson/build'
|
||||||
|
customInstallPath: false
|
||||||
|
installEnabled: false
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-GNinja
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Install RapidJSON'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo cmake --build . --target install
|
||||||
|
workingDirectory: '$(Build.SourcesDirectory)/rapidjson/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;/opt/libjpeg-turbo
|
||||||
|
-DCMAKE_INSTALL_PREFIX_PYTHON=$Python3_STDARCH
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocAL_testing
|
||||||
|
dependsOn: rocAL
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: ROCM_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
- name: CMAKE_INCLUDE_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/include/rocal
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register libjpeg-turbo packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget -q -O- https://packagecloud.io/dcommander/libjpeg-turbo/gpgkey | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/libjpeg-turbo.gpg > /dev/null
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/libjpeg-turbo.gpg] https://packagecloud.io/dcommander/libjpeg-turbo/any/ any main" | sudo tee /etc/apt/sources.list.d/libjpeg-turbo.list
|
||||||
|
sudo apt update
|
||||||
|
apt-cache show libjpeg-turbo-official | grep Version
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Link libjpeg-turbo
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
echo /opt/libjpeg-turbo/lib64 | sudo tee /etc/ld.so.conf.d/libjpeg-turbo.conf
|
||||||
|
sudo ldconfig -v
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build rocAL tests
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
mkdir rocAL-tests
|
||||||
|
cd rocAL-tests
|
||||||
|
cmake $(Agent.BuildDirectory)/rocm/share/rocal/test
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocAL
|
||||||
|
testDir: rocAL-tests
|
||||||
|
reloadAMDGPU: true
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Clean up libjpeg-turbo
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm /etc/ld.so.conf.d/libjpeg-turbo.conf
|
||||||
|
sudo ldconfig -v
|
||||||
140
.azuredevops/components/rocALUTION.yml
Normal file
140
.azuredevops/components/rocALUTION.yml
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- mpich
|
||||||
|
- ninja-build
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- rocSPARSE
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocALUTION
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake/
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocALUTION_testing
|
||||||
|
dependsOn: rocALUTION
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocALUTION
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rocalution-test'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
164
.azuredevops/components/rocBLAS.yml
Normal file
164
.azuredevops/components/rocBLAS.yml
Normal file
@@ -0,0 +1,164 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- python3-venv
|
||||||
|
- git
|
||||||
|
- libmsgpack-dev
|
||||||
|
- gfortran
|
||||||
|
- libopenblas-dev
|
||||||
|
- googletest
|
||||||
|
- libgtest-dev
|
||||||
|
- wget
|
||||||
|
- python3-pip
|
||||||
|
- libdrm-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- joblib
|
||||||
|
- pyyaml
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocm-core
|
||||||
|
- aomp
|
||||||
|
- aomp-extras
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocm_smi_lib
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocBLAS
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
- name: TENSILE_ROCM_ASSEMBLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/clang
|
||||||
|
- name: CMAKE_CXX_COMPILER
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
- name: TENSILE_ROCM_OFFLOAD_BUNDLER_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/llvm/bin/clang-offload-bundler
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=toolchain-linux.cmake
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm;$(Pipeline.Workspace)/deps-install
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DTensile_CODE_OBJECT_VERSION=default
|
||||||
|
-DTensile_LOGIC=asm_full
|
||||||
|
-DTensile_SEPARATE_ARCHITECTURES=ON
|
||||||
|
-DTensile_LAZY_LIBRARY_LOADING=ON
|
||||||
|
-DTensile_LIBRARY_FORMAT=msgpack
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocBLAS_testing
|
||||||
|
dependsOn: rocBLAS
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocBLAS
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rocblas-test'
|
||||||
|
testParameters: '--yaml rocblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
135
.azuredevops/components/rocDecode.yml
Normal file
135
.azuredevops/components/rocDecode.yml
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- pkg-config
|
||||||
|
- ffmpeg
|
||||||
|
- libavcodec-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- libavutil-dev
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- libva-dev
|
||||||
|
- mesa-amdgpu-va-drivers
|
||||||
|
- libdrm-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocm-core
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocDecode
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
# Since mesa-amdgpu-multimedia-devel is not directly available from apt, register it
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register ROCm packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget https://repo.radeon.com/rocm/rocm.gpg.key -O - | gpg --dearmor | sudo tee /etc/apt/keyrings/rocm.gpg > /dev/null
|
||||||
|
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/amdgpu/${{ variables.KEYRING_VERSION }}/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/amdgpu.list
|
||||||
|
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/${{ variables.KEYRING_VERSION }} jammy main" | sudo tee --append /etc/apt/sources.list.d/rocm.list
|
||||||
|
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
|
||||||
|
sudo apt update
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: rocDecode_testing
|
||||||
|
dependsOn: rocDecode
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# anything in /opt may be persistent across runs
|
||||||
|
# so we need to remove the symlink if it already exists
|
||||||
|
- script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
mkdir rocDecode-tests
|
||||||
|
cd rocDecode-tests
|
||||||
|
cmake /opt/rocm/share/rocdecode/test
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocDecode
|
||||||
|
testDir: 'rocDecode-tests'
|
||||||
|
- script: sudo rm /opt/rocm
|
||||||
137
.azuredevops/components/rocFFT.yml
Normal file
137
.azuredevops/components/rocFFT.yml
Normal file
@@ -0,0 +1,137 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- libfftw3-dev
|
||||||
|
- python3-pip
|
||||||
|
# rocm dependencies should match dependencies-rocm.yml
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocFFT
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DUSE_HIP_CLANG=ON
|
||||||
|
-DHIP_COMPILER=clang
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocFFT_testing
|
||||||
|
dependsOn: rocFFT
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocFFT
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rocfft-test'
|
||||||
|
testParameters: '--test_prob 0.004 --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
127
.azuredevops/components/rocMLIR.yml
Normal file
127
.azuredevops/components/rocMLIR.yml
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- libdrm-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- tomli
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocMLIR_library
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_FAT_LIBROCKCOMPILER=1
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
# compiling and running test on the test system together
|
||||||
|
- job: rocMLIR_testing
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: ROCm symbolic link
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
installEnabled: false
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DROCM_TEST_CHIPSET=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocMLIR
|
||||||
|
testDir: $(Build.SourcesDirectory)/build
|
||||||
|
testExecutable: ninja
|
||||||
|
testParameters: check-rocmlir
|
||||||
117
.azuredevops/components/rocPRIM.yml
Normal file
117
.azuredevops/components/rocPRIM.yml
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libgtest-dev
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocPRIM
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_BENCHMARK=ON
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_TEST=ON
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocPRIM_testing
|
||||||
|
dependsOn: rocPRIM
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocPRIM
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocprim'
|
||||||
174
.azuredevops/components/rocPyDecode.yml
Normal file
174
.azuredevops/components/rocPyDecode.yml
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- pkg-config
|
||||||
|
- ffmpeg
|
||||||
|
- libavcodec-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- libavutil-dev
|
||||||
|
- libva-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- pybind11-dev
|
||||||
|
- python3-pybind11
|
||||||
|
- libdlpack-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- -i
|
||||||
|
- https://test.pypi.org/simple
|
||||||
|
- hip-python
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocm-core
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocDecode
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocPyDecode
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'ROCm symbolic link'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_INSTALL_PREFIX_PYTHON=$(Build.BinariesDirectory)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
publish: false
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Create wheel file
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
export ROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
export HIP_INCLUDE_DIRS=$(Agent.BuildDirectory)/rocm/include/hip
|
||||||
|
python3 setup.py bdist_wheel
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.SourcesDirectory)/dist
|
||||||
|
contentsString: '*.whl'
|
||||||
|
targetDir: $(Build.ArtifactStagingDirectory)
|
||||||
|
clean: false
|
||||||
|
- task: PublishPipelineArtifact@1
|
||||||
|
displayName: 'wheel file Publish'
|
||||||
|
retryCountOnTaskFailure: 3
|
||||||
|
inputs:
|
||||||
|
targetPath: $(Build.ArtifactStagingDirectory)
|
||||||
|
|
||||||
|
- job: rocPyDecode_testing
|
||||||
|
dependsOn: rocPyDecode
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Setup test environment
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
cd $(Build.SourcesDirectory)
|
||||||
|
sudo pip install .
|
||||||
|
cmake -DAMDGPU_TARGETS=$(JOB_GPU_TARGET) .
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocPyDecode
|
||||||
|
testDir: $(Build.SourcesDirectory)
|
||||||
|
# sudo required for pip install but screws up permissions for next pipeline run
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Clean up test environment
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf $(Build.SourcesDirectory)/*
|
||||||
119
.azuredevops/components/rocRAND.yml
Normal file
119
.azuredevops/components/rocRAND.yml
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- googletest
|
||||||
|
- libgtest-dev
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocRAND
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DBUILD_TEST=ON
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocRAND_testing
|
||||||
|
dependsOn: rocRAND
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocRAND
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocRAND'
|
||||||
155
.azuredevops/components/rocSOLVER.yml
Normal file
155
.azuredevops/components/rocSOLVER.yml
Normal file
@@ -0,0 +1,155 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libsuitesparse-dev
|
||||||
|
- gfortran
|
||||||
|
- libfmt-dev
|
||||||
|
- git
|
||||||
|
- googletest
|
||||||
|
- libgtest-dev
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSPARSE
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocSOLVER
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Clone lapack'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone --depth 1 --branch v3.9.1 https://github.com/Reference-LAPACK/lapack
|
||||||
|
workingDirectory: '$(Build.SourcesDirectory)'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: lapack
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_Fortran_FLAGS=-fno-optimize-sibling-calls
|
||||||
|
-DBUILD_TESTING=OFF
|
||||||
|
-DCBLAS=ON
|
||||||
|
-DLAPACKE=OFF
|
||||||
|
-GNinja
|
||||||
|
cmakeBuildDir: '$(Build.SourcesDirectory)/lapack/build'
|
||||||
|
installDir: '$(Pipeline.Workspace)/deps-install'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Pipeline.Workspace)/deps-install
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocSOLVER_testing
|
||||||
|
dependsOn: rocSOLVER
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocSOLVER
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rocsolver-test'
|
||||||
|
testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
150
.azuredevops/components/rocSPARSE.yml
Normal file
150
.azuredevops/components/rocSPARSE.yml
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- googletest
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- gfortran
|
||||||
|
- libgtest-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocSPARSE
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_CLIENTS_SAMPLES=OFF
|
||||||
|
-DBUILD_CLIENTS_TESTS=ON
|
||||||
|
-DBUILD_CLIENTS_BENCHMARKS=OFF
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip;$(Agent.BuildDirectory)/rocm/hip/cmake
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: rocSPARSE
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
publish: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.SourcesDirectory)/build/clients
|
||||||
|
contentsString: matrices/**
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
artifactName: testMatrices
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocSPARSE_testing
|
||||||
|
timeoutInMinutes: 90
|
||||||
|
dependsOn: rocSPARSE
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocSPARSE
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||||
|
testExecutable: './rocsparse-test'
|
||||||
|
testParameters: '--gtest_filter="*quick*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
|
|
||||||
122
.azuredevops/components/rocThrust.yml
Normal file
122
.azuredevops/components/rocThrust.yml
Normal file
@@ -0,0 +1,122 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- googletest
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- hipRAND
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- ROCR-Runtime
|
||||||
|
- hipRAND
|
||||||
|
- rocprofiler-register
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocThrust
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-GNinja
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DBUILD_TEST=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocThrust_testing
|
||||||
|
dependsOn: rocThrust
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocThrust
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocthrust'
|
||||||
134
.azuredevops/components/rocWMMA.yml
Normal file
134
.azuredevops/components/rocWMMA.yml
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- python3-pip
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libboost-program-options-dev
|
||||||
|
- libgtest-dev
|
||||||
|
- googletest
|
||||||
|
- libfftw3-dev
|
||||||
|
- git
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- rocm-cmake
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- rocBLAS
|
||||||
|
- aomp
|
||||||
|
- rocm_smi_lib
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocWMMA
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DROCWMMA_BUILD_TESTS=ON
|
||||||
|
-DROCWMMA_BUILD_SAMPLES=OFF
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
# gfx1030 not supported in documentation
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocWMMA_testing
|
||||||
|
timeoutInMinutes: 90
|
||||||
|
dependsOn: rocWMMA
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocWMMA
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocwmma'
|
||||||
50
.azuredevops/components/rocm-cmake.yml
Normal file
50
.azuredevops/components/rocm-cmake.yml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- doxygen
|
||||||
|
- doxygen-doc
|
||||||
|
- ninja-build
|
||||||
|
- python3-sphinx
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cget
|
||||||
|
- ninja
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_cmake
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
# extra steps for ctest suite
|
||||||
|
- script: |
|
||||||
|
python -m pip install -r $(Build.SourcesDirectory)/docs/requirements.txt
|
||||||
|
python -m pip install -r $(Build.SourcesDirectory)/test/docsphinx/docs/.sphinx/requirements.txt
|
||||||
|
git config --global user.email "you@example.com"
|
||||||
|
git config --global user.name "Your Name"
|
||||||
|
displayName: "ctest setup"
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocm-cmake
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
33
.azuredevops/components/rocm-core.yml
Normal file
33
.azuredevops/components/rocm-core.yml
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_core
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CURRENT_BINARY_DIR=$PWD
|
||||||
|
-DCMAKE_CURRENT_SOURCE_DIR=$PWD/../
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=1
|
||||||
|
-DCPACK_GENERATOR=DEB
|
||||||
|
-DCPACK_DEBIAN_PACKAGE_RELEASE="local.9999~99.99"
|
||||||
|
-DCPACK_RPM_PACKAGE_RELEASE="local.9999"
|
||||||
|
-DROCM_VERSION="$(next-release)"
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
171
.azuredevops/components/rocm-examples.yml
Normal file
171
.azuredevops/components/rocm-examples.yml
Normal file
@@ -0,0 +1,171 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- libglfw3-dev
|
||||||
|
- python3-pip
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- AMDMIGraphX
|
||||||
|
- clr
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipCUB
|
||||||
|
- hipFFT
|
||||||
|
- HIPIFY
|
||||||
|
- hipRAND
|
||||||
|
- hipSOLVER
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocFFT
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- rocThrust
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- AMDMIGraphX
|
||||||
|
- clr
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipCUB
|
||||||
|
- hipFFT
|
||||||
|
- HIPIFY
|
||||||
|
- hipRAND
|
||||||
|
- hipSOLVER
|
||||||
|
- hipSPARSE
|
||||||
|
- llvm-project
|
||||||
|
- rocBLAS
|
||||||
|
- rocFFT
|
||||||
|
- rocminfo
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- rocThrust
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_examples
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
# https://github.com/ROCm/HIP/issues/2203
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_ROOT=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_HIP_ARCHITECTURES=$(JOB_GPU_TARGET)
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS=-fgpu-rdc
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Move rocm-examples binaries to rocm/examples
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
mkdir -p $(Build.BinariesDirectory)/examples
|
||||||
|
mv $(Build.BinariesDirectory)/bin/* $(Build.BinariesDirectory)/examples
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocm_examples_testing
|
||||||
|
dependsOn: rocm_examples
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: TEST_LOG_FILE
|
||||||
|
value: $(Pipeline.Workspace)/rocm-examplesTestLog.log
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Unload and reload AMDGPU
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo modprobe -r amdgpu
|
||||||
|
sudo modprobe amdgpu
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Iterate through examples
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
for file in *; do
|
||||||
|
echo Now running: $file
|
||||||
|
./$file | tee -a $(TEST_LOG_FILE)
|
||||||
|
done
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)/rocm/examples
|
||||||
108
.azuredevops/components/rocm_bandwidth_test.yml
Normal file
108
.azuredevops/components/rocm_bandwidth_test.yml
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- python3-pip
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- CppHeaderParser
|
||||||
|
- argparse
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_bandwidth_test
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: ROCR_INC_DIR
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
- name: ROCR_LIB_DIR
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=release
|
||||||
|
-DCMAKE_MODULE_PATH=$(Build.SourcesDirectory)/cmake_modules
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/include;$(Agent.BuildDirectory)/rocm/include/hsa
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: rocm_bandwidth_test_testing
|
||||||
|
dependsOn: rocm_bandwidth_test
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocm_bandwidth_test
|
||||||
|
testDir: '$(Agent.BuildDirectory)'
|
||||||
|
testExecutable: './rocm/bin/rocm-bandwidth-test'
|
||||||
|
testParameters: ''
|
||||||
|
testPublishResults: false
|
||||||
52
.azuredevops/components/rocm_smi_lib.yml
Normal file
52
.azuredevops/components/rocm_smi_lib.yml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_smi_lib
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DBUILD_TESTS=ON
|
||||||
|
-DROCM_DEP_ROCMCORE=ON
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: rocm_smi_lib_testing
|
||||||
|
dependsOn: rocm_smi_lib
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocm_smi_lib
|
||||||
|
testDir: '$(Agent.BuildDirectory)'
|
||||||
|
testExecutable: './rocm/share/rocm_smi/rsmitst_tests/rsmitst'
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
88
.azuredevops/components/rocminfo.yml
Normal file
88
.azuredevops/components/rocminfo.yml
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocminfo
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCRTST_BLD_TYPE=release
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: rocminfo_testing
|
||||||
|
dependsOn: rocminfo
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocminfo
|
||||||
|
testDir: '$(Agent.BuildDirectory)'
|
||||||
|
testExecutable: './rocm/bin/rocminfo'
|
||||||
|
testParameters: ''
|
||||||
|
testPublishResults: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocm_agent_enumerator
|
||||||
|
testDir: '$(Agent.BuildDirectory)'
|
||||||
|
testExecutable: './rocm/bin/rocm_agent_enumerator'
|
||||||
|
testParameters: ''
|
||||||
|
testPublishResults: false
|
||||||
37
.azuredevops/components/rocprofiler-register.yml
Normal file
37
.azuredevops/components/rocprofiler-register.yml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocprofiler_register
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocprofiler-register
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocprofiler-register-tests
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Build.BinariesDirectory)
|
||||||
|
cmakeBuildDir: 'tests/build'
|
||||||
|
installEnabled: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocprofiler-register
|
||||||
|
testDir: 'tests/build'
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
95
.azuredevops/components/rocprofiler-sdk.yml
Normal file
95
.azuredevops/components/rocprofiler-sdk.yml
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- python3-pip
|
||||||
|
- libdrm-dev
|
||||||
|
- libdw-dev
|
||||||
|
- libelf-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- black
|
||||||
|
- clang-format
|
||||||
|
- clang-tidy
|
||||||
|
- cmake
|
||||||
|
- cmake-format
|
||||||
|
- dataclasses
|
||||||
|
- numpy
|
||||||
|
- otf2
|
||||||
|
- pandas
|
||||||
|
- perfetto
|
||||||
|
- pycobertura
|
||||||
|
- pytest
|
||||||
|
- pyyaml
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rccl
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocprofilersdk
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCPROFILER_BUILD_TESTS=ON
|
||||||
|
-DROCPROFILER_BUILD_SAMPLES=OFF
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
multithreadFlag: -- -j2
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
156
.azuredevops/components/rocprofiler.yml
Normal file
156
.azuredevops/components/rocprofiler.yml
Normal file
@@ -0,0 +1,156 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- libgtest-dev
|
||||||
|
- libdrm-dev
|
||||||
|
- libdw-dev
|
||||||
|
- libsystemd-dev
|
||||||
|
- libelf-dev
|
||||||
|
- libnuma-dev
|
||||||
|
- libpciaccess-dev
|
||||||
|
- python3-pip
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- pyyaml==5.3.1
|
||||||
|
- Cppheaderparser
|
||||||
|
- websockets
|
||||||
|
- matplotlib
|
||||||
|
- lxml
|
||||||
|
- barectf
|
||||||
|
- pandas
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- ROCdbgapi
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- roctracer
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocprofiler
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
- name: ROCM_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_MODULE_PATH=$(Build.SourcesDirectory)/cmake_modules;$(Agent.BuildDirectory)/rocm/lib/cmake;$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DENABLE_LDCONFIG=OFF
|
||||||
|
-DUSE_PROF_API=1
|
||||||
|
-DGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
multithreadFlag: -- -j32
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rocprofiler_testing
|
||||||
|
dependsOn: rocprofiler
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Setup test environment
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocprofilerV1
|
||||||
|
testExecutable: LD_LIBRARY_PATH="$(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1/test" ./run.sh
|
||||||
|
testDir: $(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1
|
||||||
|
testParameters: ''
|
||||||
|
testPublishResults: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocprofilerV2
|
||||||
|
testExecutable: LD_LIBRARY_PATH="$(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests" share/rocprofiler/tests/runUnitTests
|
||||||
|
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
|
||||||
|
testDir: $(Agent.BuildDirectory)/rocm
|
||||||
120
.azuredevops/components/rocr_debug_agent.yml
Normal file
120
.azuredevops/components/rocr_debug_agent.yml
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- libelf-dev
|
||||||
|
- libdw-dev
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- python-is-python3
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocm-cmake
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- ROCdbgapi
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- ROCdbgapi
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocr_debug_agent
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake;$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
|
||||||
|
- job: rocr_debug_agent_testing
|
||||||
|
dependsOn: rocr_debug_agent
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocr_debug_agent-tests
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake;$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
cmakeBuildDir: '$(Agent.BuildDirectory)/rocm/src/rocm-debug-agent-test'
|
||||||
|
cmakeSourceDir: '.'
|
||||||
|
installEnabled: false
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rocr_debug_agent
|
||||||
|
testDir: '$(Agent.BuildDirectory)/rocm/src/rocm-debug-agent-test'
|
||||||
127
.azuredevops/components/roctracer.yml
Normal file
127
.azuredevops/components/roctracer.yml
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- doxygen
|
||||||
|
- graphviz
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- CppHeaderParser
|
||||||
|
- argparse
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- llvm-project
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocprofiler-register
|
||||||
|
- clr
|
||||||
|
- rocminfo
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- clr
|
||||||
|
- llvm-project
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: roctracer
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: HIP_ROCCLR_HOME
|
||||||
|
value: $(Build.BinariesDirectory)/rocm
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=release
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: roctracer_testing
|
||||||
|
dependsOn: roctracer
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: roctracer
|
||||||
|
testExecutable: $(Agent.BuildDirectory)/rocm/share/roctracer/run_tests.sh
|
||||||
|
testParameters: ''
|
||||||
|
testDir: $(Agent.BuildDirectory)
|
||||||
|
testPublishResults: false
|
||||||
181
.azuredevops/components/rpp.yml
Normal file
181
.azuredevops/components/rpp.yml
Normal file
@@ -0,0 +1,181 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- libopencv-dev
|
||||||
|
- libsndfile1-dev
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- imagemagick
|
||||||
|
- ninja-build
|
||||||
|
- clang
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- openpyxl
|
||||||
|
- pandas
|
||||||
|
- sphinx
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- half
|
||||||
|
- llvm-project
|
||||||
|
- rocminfo
|
||||||
|
- ROCR-Runtime
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- aomp
|
||||||
|
- clr
|
||||||
|
- half
|
||||||
|
- hipTensor
|
||||||
|
- llvm-project
|
||||||
|
- rocm-cmake
|
||||||
|
- rocminfo
|
||||||
|
- rocprofiler-register
|
||||||
|
- ROCR-Runtime
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rpp
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
# CI case: download latest default branch build
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
# manual build case: triggered by ROCm/ROCm repo
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
-DHALF_INCLUDE_DIRS=$(Agent.BuildDirectory)/rocm/include
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DAMDGPU_TARGETS=$(JOB_GPU_TARGET)
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
|
||||||
|
- job: rpp_testing
|
||||||
|
dependsOn: rpp
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: LD_LIBRARY_PATH
|
||||||
|
value: $(Agent.BuildDirectory)/rocm/lib;$(Agent.BuildDirectory)/rocm/llvm/lib
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
|
||||||
|
parameters:
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
${{ if eq(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: staging
|
||||||
|
${{ elseif ne(parameters.checkoutRef, '') }}:
|
||||||
|
dependencySource: tag-builds
|
||||||
|
# Dependencies from: https://github.com/ROCm/rpp/blob/develop/utilities/test_suite/README.md
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build and install Turbo JPEG
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
script: |
|
||||||
|
sudo apt-get install nasm
|
||||||
|
sudo apt-get install wget
|
||||||
|
git clone -b 3.0.2 https://github.com/libjpeg-turbo/libjpeg-turbo.git
|
||||||
|
cd libjpeg-turbo
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake -DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
|
-DCMAKE_BUILD_TYPE=RELEASE \
|
||||||
|
-DENABLE_STATIC=FALSE \
|
||||||
|
-DCMAKE_INSTALL_DEFAULT_LIBDIR=lib \
|
||||||
|
-DWITH_JPEG8=TRUE \
|
||||||
|
..
|
||||||
|
make -j$nproc
|
||||||
|
sudo make install
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build and install Nifti
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
script: |
|
||||||
|
git clone https://github.com/NIFTI-Imaging/nifti_clib.git
|
||||||
|
cd nifti_clib
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake ..
|
||||||
|
sudo make -j$nproc install
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build rpp tests
|
||||||
|
inputs:
|
||||||
|
targetType: 'inline'
|
||||||
|
script: |
|
||||||
|
sudo rm -rf /opt/rocm
|
||||||
|
sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
mkdir rpp-tests
|
||||||
|
cd rpp-tests
|
||||||
|
cmake /opt/rocm/share/rpp/test \
|
||||||
|
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ \
|
||||||
|
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||||
|
parameters:
|
||||||
|
componentName: rpp
|
||||||
|
testExecutable: 'export PATH=$(Agent.BuildDirectory)/rocm/llvm/bin:$PATH; CC=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang CMAKE_VERBOSE_MAKEFILE=ON VERBOSE=1 ctest'
|
||||||
|
testDir: 'rpp-tests'
|
||||||
|
- script: sudo rm /opt/rocm
|
||||||
48
.azuredevops/dependencies/grpc.yml
Normal file
48
.azuredevops/dependencies/grpc.yml
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: grpcVersion
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- git
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: grpc
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'git clone grpc'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone -b ${{ parameters.grpcVersion }} https://github.com/grpc/grpc --depth=1 --shallow-submodules --recurse-submodules
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
cmakeBuildDir: $(Agent.BuildDirectory)/grpc/build
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DgRPC_INSTALL=ON
|
||||||
|
-DgRPC_BUILD_TESTS=OFF
|
||||||
|
-DBUILD_SHARED_LIBS=ON
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
45
.azuredevops/dependencies/gtest.yml
Normal file
45
.azuredevops/dependencies/gtest.yml
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: gtestVersion
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- git
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: gtest
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'git clone gtest'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone -b ${{ parameters.gtestVersion }} https://github.com/google/googletest --depth=1 --shallow-submodules --recurse-submodules
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
cmakeBuildDir: $(Agent.BuildDirectory)/googletest/build
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DGTEST_FORCE_SHARED_CRT=ON
|
||||||
|
-DCMAKE_DEBUG_POSTFIX=d
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
37
.azuredevops/dependencies/half560.yml
Normal file
37
.azuredevops/dependencies/half560.yml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: half560
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
container:
|
||||||
|
image: ${{ variables.DOCKER_IMAGE_NAME }}:${{ variables.LATEST_DOCKER_VERSION }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
63
.azuredevops/dependencies/lapack.yml
Normal file
63
.azuredevops/dependencies/lapack.yml
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
parameters:
|
||||||
|
- name: checkoutRepo
|
||||||
|
type: string
|
||||||
|
default: 'self'
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: lapackVersion
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- wget
|
||||||
|
- cmake
|
||||||
|
- ninja-build
|
||||||
|
- gfortran
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: lapack
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool:
|
||||||
|
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Download lapack Source Code'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: wget -nv -O lapack-${{ parameters.lapackVersion }}.tar.gz https://github.com/Reference-LAPACK/lapack/archive/refs/tags/v${{ parameters.lapackVersion }}.tar.gz
|
||||||
|
workingDirectory: '$(System.ArtifactsDirectory)'
|
||||||
|
- task: ExtractFiles@1
|
||||||
|
displayName: Extract lapack Source Code
|
||||||
|
inputs:
|
||||||
|
archiveFilePatterns: '$(System.ArtifactsDirectory)/**/*.tar.gz'
|
||||||
|
destinationFolder: '$(Agent.BuildDirectory)'
|
||||||
|
cleanDestinationFolder: false
|
||||||
|
overwriteExistingFiles: true
|
||||||
|
- task: DeleteFiles@1
|
||||||
|
displayName: Cleanup Compressed lapack
|
||||||
|
inputs:
|
||||||
|
SourceFolder: '$(System.ArtifactsDirectory)'
|
||||||
|
Contents: '/**/*.tar.gz'
|
||||||
|
RemoveDotFiles: true
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||||
|
parameters:
|
||||||
|
cmakeBuildDir: $(Agent.BuildDirectory)/lapack-${{ parameters.lapackVersion }}/build
|
||||||
|
extraBuildFlags: >-
|
||||||
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
-DCMAKE_Fortran_COMPILER=gfortran
|
||||||
|
-DCMAKE_Fortran_FLAGS=-fno-optimize-sibling-calls
|
||||||
|
-DBUILD_TESTING=OFF
|
||||||
|
-DCBLAS=ON
|
||||||
|
-DLAPACKE=OFF
|
||||||
|
-GNinja
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||||
536
.azuredevops/nightly/pytorch.yml
Normal file
536
.azuredevops/nightly/pytorch.yml
Normal file
@@ -0,0 +1,536 @@
|
|||||||
|
parameters:
|
||||||
|
# ubuntu near-equivalent list of yum installs in https://github.com/ROCm/ROCm-docker/blob/master/dev/Dockerfile-centos-7-complete
|
||||||
|
# plus additional packages found through iterative testing of pipeline
|
||||||
|
- name: aptPackages
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- build-essential
|
||||||
|
- git
|
||||||
|
- ninja-build
|
||||||
|
- openjdk-8-jdk
|
||||||
|
- ca-certificates
|
||||||
|
- bc
|
||||||
|
- bridge-utils
|
||||||
|
- cmake
|
||||||
|
- devscripts
|
||||||
|
- dkms
|
||||||
|
- doxygen
|
||||||
|
- libdpkg-dev
|
||||||
|
- libdpkg-perl
|
||||||
|
- libelf-dev
|
||||||
|
- python3-dev
|
||||||
|
- python3-pip
|
||||||
|
- python3-venv
|
||||||
|
- wget
|
||||||
|
- ncurses-base
|
||||||
|
- libncurses-dev
|
||||||
|
- numactl
|
||||||
|
- libnuma-dev
|
||||||
|
- libssh-dev
|
||||||
|
- libunwind-dev
|
||||||
|
- llvm-dev
|
||||||
|
- libpth-dev
|
||||||
|
- qemu-kvm
|
||||||
|
- re2c
|
||||||
|
- subversion
|
||||||
|
- fakeroot
|
||||||
|
- autoconf
|
||||||
|
- libgomp1
|
||||||
|
- libtinfo-dev
|
||||||
|
- libcholmod3
|
||||||
|
- libsuitesparseconfig5
|
||||||
|
- libstdc++-12-dev
|
||||||
|
- python-is-python3
|
||||||
|
- gfortran
|
||||||
|
- libgfortran5
|
||||||
|
- liblapack3
|
||||||
|
- libblas3
|
||||||
|
- libquadmath0
|
||||||
|
- libmetis5
|
||||||
|
- libamd2
|
||||||
|
- libcamd2
|
||||||
|
- libcolamd2
|
||||||
|
- libccolamd2
|
||||||
|
- libdrm-amdgpu1
|
||||||
|
- ccache
|
||||||
|
- zip
|
||||||
|
- libjpeg-turbo-official
|
||||||
|
- libjpeg-dev
|
||||||
|
- libwebp-dev
|
||||||
|
- libfreetype-dev
|
||||||
|
- gnutls-bin
|
||||||
|
- ffmpeg
|
||||||
|
- libopenblas-dev
|
||||||
|
- liblapack-dev
|
||||||
|
- libswscale-dev
|
||||||
|
- libavformat-dev
|
||||||
|
- name: pipModules
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- astunparse
|
||||||
|
- expecttest!=0.2.0
|
||||||
|
- hypothesis
|
||||||
|
- numpy
|
||||||
|
- psutil
|
||||||
|
- pyyaml
|
||||||
|
- requests
|
||||||
|
- setuptools
|
||||||
|
- types-dataclasses
|
||||||
|
- typing-extensions>=4.8.0
|
||||||
|
- sympy>=1.13.0
|
||||||
|
- filelock
|
||||||
|
- networkx
|
||||||
|
- jinja2
|
||||||
|
- fsspec
|
||||||
|
- lintrunner
|
||||||
|
- ninja
|
||||||
|
- packaging
|
||||||
|
- optree>=0.12.0
|
||||||
|
# list for vision
|
||||||
|
- auditwheel
|
||||||
|
- future
|
||||||
|
- pytest
|
||||||
|
- pytest-azurepipelines
|
||||||
|
- pillow
|
||||||
|
# list from https://github.com/pytorch/builder/blob/main/manywheel/build_rocm.sh
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocminfo
|
||||||
|
- MIOpen
|
||||||
|
- clr
|
||||||
|
- hipBLAS
|
||||||
|
- hipFFT
|
||||||
|
- hipRAND
|
||||||
|
- hipSOLVER
|
||||||
|
- hipSPARSE
|
||||||
|
- ROCR-Runtime
|
||||||
|
- llvm-project
|
||||||
|
- rccl
|
||||||
|
- rocBLAS
|
||||||
|
- rocFFT
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocRAND
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- roctracer
|
||||||
|
- hipBLASLt
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocm-core
|
||||||
|
- rocPRIM
|
||||||
|
# below are additional dependencies not called out by build script, but throw errors during cmake
|
||||||
|
- hipCUB
|
||||||
|
- rocThrust
|
||||||
|
- hipBLAS-common
|
||||||
|
- name: rocmTestDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- rocminfo
|
||||||
|
# Reference on what tests to run for torchvision found in private repo:
|
||||||
|
# https://github.com/ROCm/rocAutomation/blob/jenkins-pipelines/pytorch/pytorch_ci/test_pytorch_test1.sh#L54
|
||||||
|
# Will iterate through this list using pytest
|
||||||
|
- name: torchTestList
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- nn
|
||||||
|
- torch
|
||||||
|
# - cuda seg faults and might need cuda installed on test system
|
||||||
|
# - ops takes too long
|
||||||
|
- unary_ufuncs
|
||||||
|
- binary_ufuncs
|
||||||
|
- autograd
|
||||||
|
# - inductor/torchinductor takes too long
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
schedules:
|
||||||
|
- cron: '30 7 * * *'
|
||||||
|
displayName: nightly pytorch
|
||||||
|
branches:
|
||||||
|
include:
|
||||||
|
- develop
|
||||||
|
always: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: pytorch
|
||||||
|
timeoutInMinutes: 120
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
amd-staging-gfx942:
|
||||||
|
ROCM_BRANCH: amd-staging
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
amd-staging-gfx90a:
|
||||||
|
ROCM_BRANCH: amd-staging
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
# various flags/parameters expected by bash scripts in pytorch builder repo
|
||||||
|
- name: ROCM_VERSION
|
||||||
|
value: 6.3.0
|
||||||
|
- name: ROCM_PATH
|
||||||
|
value: /opt/rocm
|
||||||
|
- name: DESIRED_CUDA
|
||||||
|
value: 6.3.0
|
||||||
|
- name: MKLROOT
|
||||||
|
value: /opt/intel
|
||||||
|
- name: AOTRITON_INSTALLED_PREFIX
|
||||||
|
value: /opt/rocm/aotriton
|
||||||
|
- name: DESIRED_PYTHON
|
||||||
|
value: 3.10
|
||||||
|
- name: PYTORCH_ROOT
|
||||||
|
value: $(Build.SourcesDirectory)/pytorch
|
||||||
|
- name: DESIRED_DEVTOOLSET
|
||||||
|
value: cxx11-abi
|
||||||
|
pool: ${{ variables.ULTRA_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
steps:
|
||||||
|
# copy environment setup from https://github.com/pytorch/builder/blob/main/manywheel/Dockerfile
|
||||||
|
# but instead of centos, use ubuntu environment
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register libjpeg-turbo packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget -q -O- https://packagecloud.io/dcommander/libjpeg-turbo/gpgkey | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/libjpeg-turbo.gpg > /dev/null
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/libjpeg-turbo.gpg] https://packagecloud.io/dcommander/libjpeg-turbo/any/ any main" | sudo tee /etc/apt/sources.list.d/libjpeg-turbo.list
|
||||||
|
sudo apt update
|
||||||
|
apt-cache show libjpeg-turbo-official | grep Version
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
# wheel install location different on azure agent compared to where wheel is assumed to be installed on upstream script
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: wheel install path symlink
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir -p /opt/python/cp310-cp310/lib/python3.10
|
||||||
|
sudo ln -s /usr/local/lib/python3.10/dist-packages /opt/python/cp310-cp310/lib/python3.10/site-packages
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
dependencySource: staging
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: ROCm symbolic link
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
|
||||||
|
- checkout: self
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone pytorch builder
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/builder.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone upstream pytorch
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/pytorch.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install patchelf
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo bash pytorch/.ci/docker/common/install_patchelf.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install mkl dependency for magma
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo bash pytorch/.ci/docker/common/install_mkl.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install rocm drm
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo bash pytorch/.ci/docker/common/install_rocm_drm.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install rocm magma
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo PYTORCH_ROCM_ARCH=$(JOB_GPU_TARGET) MKLROOT=$(MKLROOT) bash pytorch/.ci/docker/common/install_rocm_magma.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install AOTriton Shared Library
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: sudo bash ./common/install_aotriton.sh /opt/rocm
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/pytorch/.ci/docker
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Run ROCm Build Script
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: >-
|
||||||
|
sudo
|
||||||
|
DESIRED_CUDA=$(DESIRED_CUDA)
|
||||||
|
PYTORCH_ROCM_ARCH=$(JOB_GPU_TARGET)
|
||||||
|
GPU_TARGET=$(JOB_GPU_TARGET)
|
||||||
|
DESIRED_PYTHON=$(DESIRED_PYTHON)
|
||||||
|
PYTORCH_ROOT=$(PYTORCH_ROOT)
|
||||||
|
CMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
|
||||||
|
AOTRITON_INSTALLED_PREFIX=$(AOTRITON_INSTALLED_PREFIX)
|
||||||
|
DESIRED_DEVTOOLSET=$(DESIRED_DEVTOOLSET)
|
||||||
|
TORCH_PACKAGE_NAME=torch.$(ROCM_BRANCH).$(JOB_GPU_TARGET)
|
||||||
|
PYTORCH_BUILD_VERSION=$(cat $(Build.SourcesDirectory)/pytorch/version.txt | cut -da -f1)
|
||||||
|
PYTORCH_BUILD_NUMBER=$(date -u +%Y%m%d)
|
||||||
|
SKIP_ALL_TESTS=1
|
||||||
|
bash ./manywheel/build_rocm.sh
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/builder
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: /remote/wheelhouserocm$(ROCM_VERSION)
|
||||||
|
contentsString: '*.whl'
|
||||||
|
# common helper source for pytorch vision and audio
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone pytorch test-infra
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/test-infra.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: install package helper
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: python3 -m pip install test-infra/tools/pkg-helpers
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: pytorch pkg helpers
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: CU_VERSION=${CU_VERSION} CHANNEL=${CHANNEL} python -m pytorch_pkg_helpers
|
||||||
|
# get torch vision source and build
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone pytorch vision
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/vision.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build vision
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: >-
|
||||||
|
TORCH_PACKAGE_NAME=torch.$(ROCM_BRANCH).$(JOB_GPU_TARGET)
|
||||||
|
TORCHVISION_PACKAGE_NAME=torchvision.$(ROCM_BRANCH).$(JOB_GPU_TARGET)
|
||||||
|
PYTORCH_VERSION=$(cat $(Build.SourcesDirectory)/pytorch/version.txt | cut -da -f1)post$(date -u +%Y%m%d)
|
||||||
|
BUILD_VERSION=$(cat $(Build.SourcesDirectory)/vision/version.txt | cut -da -f1)post$(date -u +%Y%m%d)
|
||||||
|
python3 setup.py bdist_wheel
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/vision
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Relocate vision
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: python3 packaging/wheel/relocate.py
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/vision
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
|
||||||
|
parameters:
|
||||||
|
sourceDir: $(Build.SourcesDirectory)/vision/dist
|
||||||
|
contentsString: '*.whl'
|
||||||
|
clean: false
|
||||||
|
- task: PublishPipelineArtifact@1
|
||||||
|
displayName: 'wheel file Publish'
|
||||||
|
retryCountOnTaskFailure: 3
|
||||||
|
inputs:
|
||||||
|
targetPath: $(Build.BinariesDirectory)
|
||||||
|
|
||||||
|
- job: torchvision_testing
|
||||||
|
dependsOn: pytorch
|
||||||
|
condition: succeeded()
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
- name: PYTORCH_TEST_WITH_ROCM
|
||||||
|
value: 1
|
||||||
|
pool: $(JOB_TEST_POOL)
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
JOB_TEST_POOL: ${{ variables.GFX942_TEST_POOL }}
|
||||||
|
steps:
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: 'Register libjpeg-turbo packages'
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
|
||||||
|
wget -q -O- https://packagecloud.io/dcommander/libjpeg-turbo/gpgkey | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/libjpeg-turbo.gpg > /dev/null
|
||||||
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/libjpeg-turbo.gpg] https://packagecloud.io/dcommander/libjpeg-turbo/any/ any main" | sudo tee /etc/apt/sources.list.d/libjpeg-turbo.list
|
||||||
|
sudo apt update
|
||||||
|
apt-cache show libjpeg-turbo-official | grep Version
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||||
|
parameters:
|
||||||
|
aptPackages: ${{ parameters.aptPackages }}
|
||||||
|
pipModules: ${{ parameters.pipModules }}
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||||
|
- task: DownloadPipelineArtifact@2
|
||||||
|
displayName: 'Download Pipeline Wheel Files'
|
||||||
|
inputs:
|
||||||
|
itemPattern: '**/*$(JOB_GPU_TARGET)*.whl'
|
||||||
|
targetPath: $(Agent.BuildDirectory)
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||||
|
parameters:
|
||||||
|
dependencySource: staging
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
dependencySource: staging
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
# get sources to run test scripts
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone upstream pytorch
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/pytorch.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: git clone pytorch vision
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: git clone https://github.com/pytorch/vision.git --depth=1 --recurse-submodules
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Install Wheel Files
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: find . -name "*.whl" -exec pip install --no-index --find-links=. --no-dependencies -v {} \;
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Show Updated pip List
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: pip list -v
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add ROCm binaries to PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add Python site-packages binaries to path
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
USER_BASE=$(python3 -m site --user-base)
|
||||||
|
echo "##vso[task.prependpath]$USER_BASE/bin"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Add torch libs to ldconfig
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
echo $(python3 -m site --user-site)/torch/lib | sudo tee /etc/ld.so.conf.d/torch.conf
|
||||||
|
sudo ldconfig -v
|
||||||
|
ldconfig -p
|
||||||
|
# https://pytorch.org/get-started/locally/#linux-verification
|
||||||
|
# https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/3rd-party/pytorch-install.html#testing-the-pytorch-installation
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Simple Import Torch Tests
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
python3 -c 'import torch' 2> /dev/null && echo 'Success' || echo 'Failure'
|
||||||
|
python3 -c 'import torch; print(torch.cuda.is_available())'
|
||||||
|
python3 -c 'import torch; x = torch.rand(5, 3); print(x)'
|
||||||
|
# Test artifact build script has too many if statements for different environments
|
||||||
|
# Based off the snippet of interest for this environment, with some adjustments
|
||||||
|
# https://github.com/pytorch/pytorch/blob/main/.ci/pytorch/build.sh#L335-L375
|
||||||
|
# Removing in-line comments since it does not fit with the yaml markup
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Build Pytorch Test Artifacts
|
||||||
|
continueOnError: true
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
CUSTOM_TEST_ARTIFACT_BUILD_DIR="build/custom_test_artifacts"
|
||||||
|
CUSTOM_TEST_USE_ROCM=ON
|
||||||
|
CUSTOM_TEST_MODULE_PATH="${PWD}/cmake/public"
|
||||||
|
mkdir -pv "${CUSTOM_TEST_ARTIFACT_BUILD_DIR}"
|
||||||
|
|
||||||
|
CUSTOM_OP_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/custom-op-build"
|
||||||
|
CUSTOM_OP_TEST="${PWD}/test/custom_operator"
|
||||||
|
python --version
|
||||||
|
SITE_PACKAGES="$(python -c 'import site; print(";".join([x for x in site.getsitepackages()] + [x + "/torch" for x in site.getsitepackages()]))')"
|
||||||
|
|
||||||
|
mkdir -p "$CUSTOM_OP_BUILD"
|
||||||
|
pushd "$CUSTOM_OP_BUILD"
|
||||||
|
cmake "$CUSTOM_OP_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
|
||||||
|
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
|
||||||
|
make VERBOSE=1
|
||||||
|
popd
|
||||||
|
|
||||||
|
JIT_HOOK_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/jit-hook-build"
|
||||||
|
JIT_HOOK_TEST="$PWD/test/jit_hooks"
|
||||||
|
python --version
|
||||||
|
SITE_PACKAGES="$(python -c 'import site; print(";".join([x for x in site.getsitepackages()] + [x + "/torch" for x in site.getsitepackages()]))')"
|
||||||
|
mkdir -p "$JIT_HOOK_BUILD"
|
||||||
|
pushd "$JIT_HOOK_BUILD"
|
||||||
|
cmake "$JIT_HOOK_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
|
||||||
|
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
|
||||||
|
make VERBOSE=1
|
||||||
|
popd
|
||||||
|
|
||||||
|
CUSTOM_BACKEND_BUILD="${CUSTOM_TEST_ARTIFACT_BUILD_DIR}/custom-backend-build"
|
||||||
|
CUSTOM_BACKEND_TEST="${PWD}/test/custom_backend"
|
||||||
|
python --version
|
||||||
|
mkdir -p "$CUSTOM_BACKEND_BUILD"
|
||||||
|
pushd "$CUSTOM_BACKEND_BUILD"
|
||||||
|
cmake "$CUSTOM_BACKEND_TEST" -DCMAKE_PREFIX_PATH="$SITE_PACKAGES" -DPython_EXECUTABLE="$(which python)" \
|
||||||
|
-DCMAKE_MODULE_PATH="$CUSTOM_TEST_MODULE_PATH" -DUSE_ROCM="$CUSTOM_TEST_USE_ROCM"
|
||||||
|
make VERBOSE=1
|
||||||
|
popd
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/pytorch
|
||||||
|
- ${{ each torchTest in parameters.torchTestList }}:
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Test ${{ torchTest }}
|
||||||
|
continueOnError: true
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/pytorch
|
||||||
|
${{ if contains(torchTest, '/') }}:
|
||||||
|
script: pytest test/${{ split(torchTest, '/')[0] }}/test_${{ split(torchTest, '/')[1] }}.py
|
||||||
|
${{ else }}:
|
||||||
|
script: pytest test/test_${{ torchTest }}.py
|
||||||
|
# Reference on what tests to run for torchvision found in private repo:
|
||||||
|
# https://github.com/ROCm/rocAutomation/blob/jenkins-pipelines/pytorch/pytorch_ci/test_torchvision.sh#L51
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Test vision/transforms
|
||||||
|
continueOnError: true
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: pytest test/test_transforms.py
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/vision
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Uninstall Wheel Files
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: find . -name "*.whl" -exec pip uninstall -y {} \;
|
||||||
|
workingDirectory: $(Agent.BuildDirectory)
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove Python site-packages binaries from path
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: |
|
||||||
|
USER_BASE=$(python3 -m site --user-base)
|
||||||
|
echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$USER_BASE/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
|
- task: Bash@3
|
||||||
|
displayName: Remove ROCm binaries from PATH
|
||||||
|
inputs:
|
||||||
|
targetType: inline
|
||||||
|
script: echo "##vso[task.setvariable variable=PATH]$(echo $PATH | sed -e 's;:$(Agent.BuildDirectory)/rocm/bin;;' -e 's;^/;;' -e 's;/$;;')"
|
||||||
125
.azuredevops/nightly/rocm-nightly.yml
Normal file
125
.azuredevops/nightly/rocm-nightly.yml
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
parameters:
|
||||||
|
# currently excludes clr
|
||||||
|
- name: rocmDependencies
|
||||||
|
type: object
|
||||||
|
default:
|
||||||
|
- AMDMIGraphX
|
||||||
|
- amdsmi
|
||||||
|
- aomp-extras
|
||||||
|
- aomp
|
||||||
|
- composable_kernel
|
||||||
|
- half
|
||||||
|
- HIP
|
||||||
|
- hip-tests
|
||||||
|
- hipBLAS
|
||||||
|
- hipBLAS-common
|
||||||
|
- hipBLASLt
|
||||||
|
- hipCUB
|
||||||
|
- hipFFT
|
||||||
|
- hipfort
|
||||||
|
- HIPIFY
|
||||||
|
- hipRAND
|
||||||
|
- hipSOLVER
|
||||||
|
- hipSPARSE
|
||||||
|
- hipSPARSELt
|
||||||
|
- hipTensor
|
||||||
|
- llvm-project
|
||||||
|
- MIOpen
|
||||||
|
- MIVisionX
|
||||||
|
- omniperf
|
||||||
|
- rccl
|
||||||
|
- rdc
|
||||||
|
- rocAL
|
||||||
|
- rocALUTION
|
||||||
|
- rocBLAS
|
||||||
|
- ROCdbgapi
|
||||||
|
- rocDecode
|
||||||
|
- rocFFT
|
||||||
|
- ROCgdb
|
||||||
|
- rocm-cmake
|
||||||
|
- rocm-core
|
||||||
|
- rocm-examples
|
||||||
|
- rocminfo
|
||||||
|
- rocMLIR
|
||||||
|
- ROCmValidationSuite
|
||||||
|
- rocm_bandwidth_test
|
||||||
|
- rocm_smi_lib
|
||||||
|
- rocPRIM
|
||||||
|
- rocprofiler-register
|
||||||
|
- rocprofiler-sdk
|
||||||
|
- rocprofiler
|
||||||
|
- rocPyDecode
|
||||||
|
- ROCR-Runtime
|
||||||
|
- rocRAND
|
||||||
|
- rocr_debug_agent
|
||||||
|
- rocSOLVER
|
||||||
|
- rocSPARSE
|
||||||
|
- rocThrust
|
||||||
|
- roctracer
|
||||||
|
- rocWMMA
|
||||||
|
- rpp
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
schedules:
|
||||||
|
- cron: '30 7 * * *'
|
||||||
|
displayName: Nightly build
|
||||||
|
branches:
|
||||||
|
include:
|
||||||
|
- develop
|
||||||
|
always: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: rocm_nightly
|
||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
pool: ${{ variables.MEDIUM_BUILD_POOL }}
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
gfx942:
|
||||||
|
JOB_GPU_TARGET: gfx942
|
||||||
|
gfx90a:
|
||||||
|
JOB_GPU_TARGET: gfx90a
|
||||||
|
steps:
|
||||||
|
- task: DeleteFiles@1
|
||||||
|
displayName: 'Cleanup checkout space'
|
||||||
|
inputs:
|
||||||
|
SourceFolder: '$(Agent.BuildDirectory)/s'
|
||||||
|
Contents: '**/*'
|
||||||
|
- task: DeleteFiles@1
|
||||||
|
displayName: 'Cleanup Staging Area'
|
||||||
|
inputs:
|
||||||
|
SourceFolder: '$(Build.ArtifactStagingDirectory)'
|
||||||
|
Contents: '/**/*'
|
||||||
|
RemoveDotFiles: true
|
||||||
|
- script: df -h
|
||||||
|
displayName: System disk space before ROCm
|
||||||
|
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||||
|
parameters:
|
||||||
|
dependencyList: ${{ parameters.rocmDependencies }}
|
||||||
|
dependencySource: staging
|
||||||
|
skipLibraryLinking: true
|
||||||
|
skipLlvmSymlink: true
|
||||||
|
gpuTarget: $(JOB_GPU_TARGET)
|
||||||
|
- script: df -h
|
||||||
|
displayName: System disk space after ROCm
|
||||||
|
- script: du -sh $(Agent.BuildDirectory)/rocm
|
||||||
|
displayName: Uncompressed ROCm size
|
||||||
|
- task: ArchiveFiles@2
|
||||||
|
displayName: Compress rocm-nightly
|
||||||
|
inputs:
|
||||||
|
rootFolderOrFile: $(Agent.BuildDirectory)/rocm
|
||||||
|
includeRootFolder: false
|
||||||
|
archiveType: tar
|
||||||
|
tarCompression: gz
|
||||||
|
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.DefinitionName)_$(Build.BuildNumber)_ubuntu2204_$(JOB_GPU_TARGET).tar.gz
|
||||||
|
- script: du -sh $(Build.ArtifactStagingDirectory)
|
||||||
|
displayName: Compressed ROCm size
|
||||||
|
- task: PublishPipelineArtifact@1
|
||||||
|
displayName: 'Public ROCm Nightly Artifact'
|
||||||
|
retryCountOnTaskFailure: 3
|
||||||
|
inputs:
|
||||||
|
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||||
46
.azuredevops/scripts/compareDot.py
Normal file
46
.azuredevops/scripts/compareDot.py
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
import os
|
||||||
|
import requests
|
||||||
|
import hashlib
|
||||||
|
import sys
|
||||||
|
|
||||||
|
def download_dotfile(url, file_path):
|
||||||
|
response = requests.get(url)
|
||||||
|
if response.status_code == 200:
|
||||||
|
with open(file_path, 'wb') as f:
|
||||||
|
f.write(response.content)
|
||||||
|
else:
|
||||||
|
raise Exception(f"Failed to download file from {url}. Status code: {response.status_code}")
|
||||||
|
|
||||||
|
def hash_file(file_path):
|
||||||
|
sha256_hash = hashlib.sha256()
|
||||||
|
with open(file_path, 'rb') as f:
|
||||||
|
for byte_block in iter(lambda: f.read(4096), b""):
|
||||||
|
sha256_hash.update(byte_block)
|
||||||
|
return sha256_hash.hexdigest()
|
||||||
|
|
||||||
|
def compare_files(local_file, downloaded_file):
|
||||||
|
local_hash = hash_file(local_file)
|
||||||
|
downloaded_hash = hash_file(downloaded_file)
|
||||||
|
return local_hash == downloaded_hash
|
||||||
|
|
||||||
|
def main():
|
||||||
|
script_directory = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
local_dotfile = os.path.join(script_directory, 'input.dot')
|
||||||
|
downloaded_dotfile = os.path.join(script_directory, 'dependency_graph.dot')
|
||||||
|
|
||||||
|
url = 'https://raw.githubusercontent.com/ROCm/ROCm/refs/heads/generatedependencygraph/.azuredevops/scripts/dependency_graph.dot'
|
||||||
|
|
||||||
|
try:
|
||||||
|
download_dotfile(url, downloaded_dotfile)
|
||||||
|
if compare_files(local_dotfile, downloaded_dotfile):
|
||||||
|
print("The local DOT file and the downloaded DOT file are the same.")
|
||||||
|
else:
|
||||||
|
print("The local DOT file and the downloaded DOT file are different.")
|
||||||
|
# Exit with a non-zero status to signal failed/unstable build on Jenkins
|
||||||
|
# to trigger post-build email
|
||||||
|
sys.exit(1)
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error: {e}")
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
149
.azuredevops/scripts/dependencyGraph.py
Normal file
149
.azuredevops/scripts/dependencyGraph.py
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
import os
|
||||||
|
import yaml
|
||||||
|
from graphviz import Digraph
|
||||||
|
|
||||||
|
# Set DEBUG to False for normal output, True for debug output
|
||||||
|
DEBUG = False
|
||||||
|
|
||||||
|
def debug_print(message):
|
||||||
|
if DEBUG:
|
||||||
|
print(message)
|
||||||
|
|
||||||
|
import os
|
||||||
|
import yaml
|
||||||
|
|
||||||
|
def extract_dependencies(exclude_nodes=[]):
|
||||||
|
dependencies = {}
|
||||||
|
debug_print("Extracting dependencies from YAML files...")
|
||||||
|
|
||||||
|
# Define a mapping of specific filenames to component names
|
||||||
|
component_name_mapping = {
|
||||||
|
'HIP.yml': 'clr', # Remap HIP.yml to clr in graph
|
||||||
|
}
|
||||||
|
|
||||||
|
script_directory = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
yaml_directory = os.path.join(script_directory, '..', 'components')
|
||||||
|
|
||||||
|
for filename in os.listdir(yaml_directory):
|
||||||
|
if filename.endswith(".yaml") or filename.endswith(".yml"):
|
||||||
|
debug_print(f"Processing file: {filename}")
|
||||||
|
try:
|
||||||
|
with open(os.path.join(yaml_directory, filename), 'r') as file:
|
||||||
|
data = yaml.safe_load(file) or {}
|
||||||
|
parameters = data.get('parameters', [])
|
||||||
|
|
||||||
|
# Check for both 'rocmDependencies' and 'rocmDependenciesAMD'
|
||||||
|
rocm_dependencies = next((param['default'] for param in parameters if param['name'] == 'rocmDependencies' or param['name'] == 'rocmDependenciesAMD'), [])
|
||||||
|
test_dependencies = next((param['default'] for param in parameters if param['name'] == 'rocmTestDependencies'), [])
|
||||||
|
|
||||||
|
unique_dependencies = list(set(rocm_dependencies + test_dependencies))
|
||||||
|
unique_dependencies = [dep for dep in unique_dependencies if dep not in exclude_nodes]
|
||||||
|
|
||||||
|
# Use the mapped component name if it exists
|
||||||
|
component_name = component_name_mapping.get(filename, os.path.splitext(filename)[0])
|
||||||
|
dependencies[component_name] = {
|
||||||
|
'dependencies': unique_dependencies
|
||||||
|
}
|
||||||
|
debug_print(f"Found unique dependencies for {component_name}: {unique_dependencies}")
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error processing {filename}: {e}")
|
||||||
|
|
||||||
|
return dependencies
|
||||||
|
|
||||||
|
def simplify_dependencies(graph):
|
||||||
|
simplified_graph = {}
|
||||||
|
|
||||||
|
for component, deps in graph.items():
|
||||||
|
if component not in simplified_graph:
|
||||||
|
simplified_graph[component] = set(deps) # Use a set for uniqueness
|
||||||
|
|
||||||
|
for dep in deps:
|
||||||
|
if dep in graph: # If the dependency has its own dependencies
|
||||||
|
for sub_dep in graph[dep]:
|
||||||
|
simplified_graph[component].discard(sub_dep) # Remove transitive dependencies
|
||||||
|
|
||||||
|
# Convert sets back to lists
|
||||||
|
for component in simplified_graph:
|
||||||
|
simplified_graph[component] = list(simplified_graph[component])
|
||||||
|
|
||||||
|
return simplified_graph
|
||||||
|
|
||||||
|
def build_dependency_graph(dependencies, exclude_nodes=None):
|
||||||
|
if exclude_nodes is None:
|
||||||
|
exclude_nodes = []
|
||||||
|
|
||||||
|
graph = {}
|
||||||
|
debug_print("Building dependency graph...")
|
||||||
|
|
||||||
|
for component, deps in dependencies.items():
|
||||||
|
if component in exclude_nodes:
|
||||||
|
continue # Skip excluded components
|
||||||
|
|
||||||
|
# Ensure uniqueness and prevent self-dependency
|
||||||
|
all_deps = [dep for dep in set(deps['dependencies']) if dep != component and dep not in exclude_nodes]
|
||||||
|
graph[component] = all_deps
|
||||||
|
debug_print(f"{component} -> {all_deps}")
|
||||||
|
|
||||||
|
# Simplify the dependencies to remove transitive dependencies
|
||||||
|
simplified_graph = simplify_dependencies(graph)
|
||||||
|
|
||||||
|
return simplified_graph
|
||||||
|
|
||||||
|
def build_full_dependency_tree(graph):
|
||||||
|
tree = {}
|
||||||
|
debug_print("Building full dependency tree...")
|
||||||
|
|
||||||
|
def dfs(component, visited):
|
||||||
|
if component in visited:
|
||||||
|
return
|
||||||
|
visited.add(component)
|
||||||
|
for dep in graph.get(component, []):
|
||||||
|
# Prevent self-dependency in the tree
|
||||||
|
if dep != component:
|
||||||
|
if dep not in tree:
|
||||||
|
tree[dep] = []
|
||||||
|
if component not in tree[dep]: # Prevent duplicates
|
||||||
|
tree[dep].append(component)
|
||||||
|
dfs(dep, visited)
|
||||||
|
|
||||||
|
for component in graph.keys():
|
||||||
|
dfs(component, set())
|
||||||
|
|
||||||
|
return tree
|
||||||
|
|
||||||
|
def visualize_graph(graph):
|
||||||
|
dot = Digraph()
|
||||||
|
|
||||||
|
# sort edges for consistent dot file hash
|
||||||
|
for component in sorted(graph):
|
||||||
|
for dep in sorted(graph[component]):
|
||||||
|
dot.edge(component, dep)
|
||||||
|
|
||||||
|
script_directory = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
|
||||||
|
# make an input dot file for comparisons
|
||||||
|
dot_file_path = os.path.join(script_directory, 'input.dot')
|
||||||
|
with open(dot_file_path, 'w') as f:
|
||||||
|
f.write(dot.source)
|
||||||
|
|
||||||
|
dot.render(os.path.join(script_directory, 'dependency_graph'), format='png', cleanup=True) # Save as PNG
|
||||||
|
|
||||||
|
def main():
|
||||||
|
exclude_deps = ['rocm-examples']
|
||||||
|
dependencies = extract_dependencies(exclude_nodes=exclude_deps)
|
||||||
|
|
||||||
|
if not dependencies:
|
||||||
|
debug_print("No dependencies found.")
|
||||||
|
return
|
||||||
|
|
||||||
|
graph = build_dependency_graph(dependencies, exclude_nodes=exclude_deps)
|
||||||
|
full_tree = build_full_dependency_tree(graph)
|
||||||
|
|
||||||
|
print("Dependency tree:")
|
||||||
|
print(full_tree)
|
||||||
|
|
||||||
|
# Call this function after building the graph
|
||||||
|
visualize_graph(full_tree)
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
94
.azuredevops/scripts/dependency_graph.dot
Normal file
94
.azuredevops/scripts/dependency_graph.dot
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
digraph {
|
||||||
|
AMDMIGraphX -> MIVisionX
|
||||||
|
HIPIFY -> rccl
|
||||||
|
MIOpen -> AMDMIGraphX
|
||||||
|
MIVisionX -> rocAL
|
||||||
|
"ROCR-Runtime" -> clr
|
||||||
|
"ROCR-Runtime" -> rocminfo
|
||||||
|
ROCdbgapi -> ROCgdb
|
||||||
|
ROCdbgapi -> rocprofiler
|
||||||
|
ROCdbgapi -> rocr_debug_agent
|
||||||
|
ROCgdb -> aomp
|
||||||
|
ROCmValidationSuite -> rdc
|
||||||
|
amdsmi -> aomp
|
||||||
|
amdsmi -> rdc
|
||||||
|
aomp -> hipBLASLt
|
||||||
|
aomp -> rccl
|
||||||
|
aomp -> rocFFT
|
||||||
|
aomp -> rpp
|
||||||
|
"aomp-extras" -> rccl
|
||||||
|
"aomp-extras" -> rocBLAS
|
||||||
|
clr -> ROCdbgapi
|
||||||
|
clr -> composable_kernel
|
||||||
|
clr -> half
|
||||||
|
clr -> "hip-tests"
|
||||||
|
clr -> "hipBLAS-common"
|
||||||
|
clr -> rocDecode
|
||||||
|
clr -> rocMLIR
|
||||||
|
clr -> rocPRIM
|
||||||
|
clr -> rocRAND
|
||||||
|
clr -> rocm_bandwidth_test
|
||||||
|
clr -> roctracer
|
||||||
|
composable_kernel -> MIOpen
|
||||||
|
composable_kernel -> hipTensor
|
||||||
|
half -> MIOpen
|
||||||
|
half -> rpp
|
||||||
|
hipBLAS -> MIOpen
|
||||||
|
hipBLAS -> hipfort
|
||||||
|
"hipBLAS-common" -> hipBLASLt
|
||||||
|
hipBLASLt -> rocBLAS
|
||||||
|
hipFFT -> hipfort
|
||||||
|
hipRAND -> ROCmValidationSuite
|
||||||
|
hipRAND -> rocFFT
|
||||||
|
hipRAND -> rocThrust
|
||||||
|
hipSOLVER -> hipfort
|
||||||
|
hipSPARSE -> hipSPARSELt
|
||||||
|
hipSPARSE -> rocSOLVER
|
||||||
|
hipTensor -> rpp
|
||||||
|
"llvm-project" -> "ROCR-Runtime"
|
||||||
|
"llvm-project" -> "aomp-extras"
|
||||||
|
rccl -> omnitrace
|
||||||
|
rccl -> "rocprofiler-sdk"
|
||||||
|
rocBLAS -> ROCmValidationSuite
|
||||||
|
rocBLAS -> rocSPARSE
|
||||||
|
rocBLAS -> rocWMMA
|
||||||
|
rocDecode -> MIVisionX
|
||||||
|
rocDecode -> rocPyDecode
|
||||||
|
rocFFT -> hipFFT
|
||||||
|
rocMLIR -> MIOpen
|
||||||
|
rocPRIM -> hipCUB
|
||||||
|
rocPRIM -> rocSPARSE
|
||||||
|
rocPRIM -> rocThrust
|
||||||
|
rocRAND -> MIOpen
|
||||||
|
rocRAND -> hipRAND
|
||||||
|
rocRAND -> rocALUTION
|
||||||
|
rocSOLVER -> hipBLAS
|
||||||
|
rocSOLVER -> hipSOLVER
|
||||||
|
rocSPARSE -> hipSPARSE
|
||||||
|
rocSPARSE -> rocALUTION
|
||||||
|
"rocm-cmake" -> "llvm-project"
|
||||||
|
"rocm-core" -> aomp
|
||||||
|
"rocm-core" -> rocDecode
|
||||||
|
"rocm-core" -> rocprofiler
|
||||||
|
rocm_smi_lib -> "ROCR-Runtime"
|
||||||
|
rocminfo -> ROCdbgapi
|
||||||
|
rocminfo -> composable_kernel
|
||||||
|
rocminfo -> half
|
||||||
|
rocminfo -> "hip-tests"
|
||||||
|
rocminfo -> "hipBLAS-common"
|
||||||
|
rocminfo -> rocDecode
|
||||||
|
rocminfo -> rocMLIR
|
||||||
|
rocminfo -> rocPRIM
|
||||||
|
rocminfo -> rocRAND
|
||||||
|
rocminfo -> rocm_bandwidth_test
|
||||||
|
rocminfo -> roctracer
|
||||||
|
rocprofiler -> hipfort
|
||||||
|
rocprofiler -> omniperf
|
||||||
|
rocprofiler -> omnitrace
|
||||||
|
rocprofiler -> rdc
|
||||||
|
"rocprofiler-register" -> "ROCR-Runtime"
|
||||||
|
roctracer -> aomp
|
||||||
|
roctracer -> rocprofiler
|
||||||
|
roctracer -> "rocprofiler-sdk"
|
||||||
|
rpp -> MIVisionX
|
||||||
|
}
|
||||||
BIN
.azuredevops/scripts/dependency_graph.png
Normal file
BIN
.azuredevops/scripts/dependency_graph.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 475 KiB |
29
.azuredevops/tag-builds/AMDMIGraphX.yml
Normal file
29
.azuredevops/tag-builds/AMDMIGraphX.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/AMDMIGraphX
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/AMDMIGraphX.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
39
.azuredevops/tag-builds/HIP.yml
Normal file
39
.azuredevops/tag-builds/HIP.yml
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/HIP
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: matching_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/clr
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: hipother_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipother
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/HIP.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/HIPIFY.yml
Normal file
29
.azuredevops/tag-builds/HIPIFY.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/HIPIFY
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/HIPIFY.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/MIOpen.yml
Normal file
29
.azuredevops/tag-builds/MIOpen.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/MIOpen
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/MIOpen.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/MIVisionX.yml
Normal file
29
.azuredevops/tag-builds/MIVisionX.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/MIVisionX
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/MIVisionX.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/ROCR-Runtime.yml
Normal file
29
.azuredevops/tag-builds/ROCR-Runtime.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCR-Runtime
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/ROCR-Runtime.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/ROCT-Thunk-Interface.yml
Normal file
29
.azuredevops/tag-builds/ROCT-Thunk-Interface.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCT-Thunk-Interface
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/ROCT-Thunk-Interface.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/ROCdbgapi.yml
Normal file
29
.azuredevops/tag-builds/ROCdbgapi.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCdbgapi
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/ROCdbgapi.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/ROCgdb.yml
Normal file
29
.azuredevops/tag-builds/ROCgdb.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/rocgdb
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/ROCgdb.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/ROCmValidationSuite.yml
Normal file
29
.azuredevops/tag-builds/ROCmValidationSuite.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCmValidationSuite
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/ROCmValidationSuite.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/amdsmi.yml
Normal file
29
.azuredevops/tag-builds/amdsmi.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/amdsmi
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/amdsmi.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
25
.azuredevops/tag-builds/aomp-extras.yml
Normal file
25
.azuredevops/tag-builds/aomp-extras.yml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/aomp-extras
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/aomp-extras.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
40
.azuredevops/tag-builds/aomp.yml
Normal file
40
.azuredevops/tag-builds/aomp.yml
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: aomp_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/aomp
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: aomp-extras_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/aomp-extras
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: flang_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/flang
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: llvm-project_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/llvm-project
|
||||||
|
ref: amd-staging
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/aomp.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: aomp_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
39
.azuredevops/tag-builds/clr.yml
Normal file
39
.azuredevops/tag-builds/clr.yml
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/clr
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: matching_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/HIP
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
- repository: hipother_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipother
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/HIP.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/composable_kernel.yml
Normal file
29
.azuredevops/tag-builds/composable_kernel.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/composable_kernel
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/composable_kernel.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
23
.azuredevops/tag-builds/grpc.yml
Normal file
23
.azuredevops/tag-builds/grpc.yml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: grpcVersion
|
||||||
|
type: string
|
||||||
|
default: 'master'
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/grpc.yml
|
||||||
|
parameters:
|
||||||
|
grpcVersion: ${{ parameters.grpcVersion }}
|
||||||
23
.azuredevops/tag-builds/gtest.yml
Normal file
23
.azuredevops/tag-builds/gtest.yml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: gtestVersion
|
||||||
|
type: string
|
||||||
|
default: main
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/gtest.yml
|
||||||
|
parameters:
|
||||||
|
gtestVersion: ${{ parameters.gtestVersion }}
|
||||||
29
.azuredevops/tag-builds/half.yml
Normal file
29
.azuredevops/tag-builds/half.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/half
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/half.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/half560.yml
Normal file
29
.azuredevops/tag-builds/half560.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/rocm-5.6.0
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/half
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/half560.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hip-tests.yml
Normal file
29
.azuredevops/tag-builds/hip-tests.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hip-tests
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hip-tests.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipBLAS-common.yml
Normal file
29
.azuredevops/tag-builds/hipBLAS-common.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: develop
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipBLAS-common
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipBLAS-common.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipBLAS.yml
Normal file
29
.azuredevops/tag-builds/hipBLAS.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipBLAS
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipBLAS.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipBLASLt.yml
Normal file
29
.azuredevops/tag-builds/hipBLASLt.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipBLASLt
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipBLASLt.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipCUB.yml
Normal file
29
.azuredevops/tag-builds/hipCUB.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipCUB
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipCUB.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipFFT.yml
Normal file
29
.azuredevops/tag-builds/hipFFT.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipFFT
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipFFT.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipRAND.yml
Normal file
29
.azuredevops/tag-builds/hipRAND.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipRAND
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipRAND.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipSOLVER.yml
Normal file
29
.azuredevops/tag-builds/hipSOLVER.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipSOLVER
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipSOLVER.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipSPARSE.yml
Normal file
29
.azuredevops/tag-builds/hipSPARSE.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipSPARSE
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipSPARSE.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipSPARSELt.yml
Normal file
29
.azuredevops/tag-builds/hipSPARSELt.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipSPARSELt
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipSPARSELt.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
29
.azuredevops/tag-builds/hipTensor.yml
Normal file
29
.azuredevops/tag-builds/hipTensor.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
variables:
|
||||||
|
- group: common
|
||||||
|
- template: /.azuredevops/variables-global.yml
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: checkoutRef
|
||||||
|
type: string
|
||||||
|
default: refs/tags/$(LATEST_RELEASE_TAG)
|
||||||
|
|
||||||
|
resources:
|
||||||
|
repositories:
|
||||||
|
- repository: pipelines_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/ROCm
|
||||||
|
- repository: release_repo
|
||||||
|
type: github
|
||||||
|
endpoint: ROCm
|
||||||
|
name: ROCm/hipTensor
|
||||||
|
ref: ${{ parameters.checkoutRef }}
|
||||||
|
|
||||||
|
trigger: none
|
||||||
|
pr: none
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ${{ variables.CI_COMPONENT_PATH }}/hipTensor.yml
|
||||||
|
parameters:
|
||||||
|
checkoutRepo: release_repo
|
||||||
|
checkoutRef: ${{ parameters.checkoutRef }}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user