mirror of
https://github.com/ROCm/ROCm.git
synced 2026-01-09 22:58:17 -05:00
Compare commits
69 Commits
peter/deve
...
users/davi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec1d66fc35 | ||
|
|
a0434d5163 | ||
|
|
830ddaabd9 | ||
|
|
830b7640b2 | ||
|
|
f2b710ed94 | ||
|
|
6285afb2cc | ||
|
|
572f543d2b | ||
|
|
e4c95b6a77 | ||
|
|
6ad8d5d4f1 | ||
|
|
1301466c89 | ||
|
|
5806667d36 | ||
|
|
f3ef63413d | ||
|
|
f01cd9cb27 | ||
|
|
dc3e677941 | ||
|
|
2a1ff23469 | ||
|
|
e031c3b58e | ||
|
|
d1cb99a4e4 | ||
|
|
d90e3beb32 | ||
|
|
db10c64880 | ||
|
|
454dae5dc5 | ||
|
|
43f7a7eab0 | ||
|
|
a13b8c3fe2 | ||
|
|
37190c54ad | ||
|
|
dd95d99c3f | ||
|
|
1002c7fe04 | ||
|
|
bf068b1325 | ||
|
|
673cdece9b | ||
|
|
0e96202ec8 | ||
|
|
4091440e8f | ||
|
|
30fabd6b9a | ||
|
|
c0c49381d4 | ||
|
|
798b9245b5 | ||
|
|
aa7cef0892 | ||
|
|
fab6885067 | ||
|
|
46571c6e80 | ||
|
|
56c76fd502 | ||
|
|
d9500a8700 | ||
|
|
89c20a0fce | ||
|
|
d28aed0fdf | ||
|
|
fda3d6061a | ||
|
|
98ddec9979 | ||
|
|
fe8d96d395 | ||
|
|
18c2db71bb | ||
|
|
274d416d65 | ||
|
|
e0ef128be0 | ||
|
|
d3669d1561 | ||
|
|
f948707764 | ||
|
|
cd4b2e1140 | ||
|
|
f71ff094d1 | ||
|
|
9e26493076 | ||
|
|
fac248e1d8 | ||
|
|
1b35214255 | ||
|
|
cea5fb8bfe | ||
|
|
0457e0cf1b | ||
|
|
d4bafcee2c | ||
|
|
f25cbd8d8f | ||
|
|
45c526864c | ||
|
|
f444d8a166 | ||
|
|
831f06f277 | ||
|
|
d542b33982 | ||
|
|
9b1db63db8 | ||
|
|
b621effca5 | ||
|
|
8493858f6c | ||
|
|
b1317c189e | ||
|
|
847f3a8876 | ||
|
|
ed4624c8e9 | ||
|
|
d82d7e2afa | ||
|
|
38f67277fc | ||
|
|
87b969e455 |
172
.azuredevops/components/mxDataGenerator.yml
Normal file
172
.azuredevops/components/mxDataGenerator.yml
Normal file
@@ -0,0 +1,172 @@
|
||||
parameters:
|
||||
- name: componentName
|
||||
type: string
|
||||
default: mxDataGenerator
|
||||
- name: checkoutRepo
|
||||
type: string
|
||||
default: 'self'
|
||||
- name: checkoutRef
|
||||
type: string
|
||||
default: ''
|
||||
# monorepo related parameters
|
||||
- name: sparseCheckoutDir
|
||||
type: string
|
||||
default: ''
|
||||
- name: triggerDownstreamJobs
|
||||
type: boolean
|
||||
default: false
|
||||
- name: downstreamAggregateNames
|
||||
type: string
|
||||
default: ''
|
||||
- name: buildDependsOn
|
||||
type: object
|
||||
default: null
|
||||
- name: unifiedBuild
|
||||
type: boolean
|
||||
default: false
|
||||
# set to true if doing full build of ROCm stack
|
||||
# and dependencies are pulled from same pipeline
|
||||
- name: aggregatePipeline
|
||||
type: boolean
|
||||
default: false
|
||||
- name: aptPackages
|
||||
type: object
|
||||
default:
|
||||
- cmake
|
||||
- git
|
||||
- ninja-build
|
||||
- wget
|
||||
- libboost-program-options-dev
|
||||
- libboost-filesystem-dev
|
||||
- libdivide-dev
|
||||
- libfmt-dev
|
||||
- libopenblas-dev
|
||||
- libmsgpack-dev
|
||||
- libspdlog-dev
|
||||
- libyaml-cpp-dev
|
||||
- name: pipModules
|
||||
type: object
|
||||
default:
|
||||
- black
|
||||
- flake8
|
||||
- msgpack
|
||||
- pandas
|
||||
- pytest
|
||||
- pytest-cmake
|
||||
- pytest-cov
|
||||
- pytest-mock
|
||||
- scipy
|
||||
- pyyaml
|
||||
- joblib
|
||||
- --upgrade
|
||||
- name: rocmDependencies
|
||||
type: object
|
||||
default:
|
||||
- clr
|
||||
- llvm-project
|
||||
- rocm-cmake
|
||||
- rocminfo
|
||||
- ROCR-Runtime
|
||||
- name: rocmTestDependencies
|
||||
type: object
|
||||
default:
|
||||
- aomp
|
||||
- clr
|
||||
- llvm-project
|
||||
- rocminfo
|
||||
- rocm_smi_lib
|
||||
- rocprofiler-register
|
||||
- ROCR-Runtime
|
||||
- roctracer
|
||||
|
||||
- name: jobMatrix
|
||||
type: object
|
||||
default:
|
||||
buildJobs:
|
||||
- { pool: rocm-ci_ultra_build_pool, os: ubuntu2204, packageManager: apt, target: gfx942 }
|
||||
- { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx90a }
|
||||
- { pool: rocm-ci_ultra_build_pool, os: almalinux8, packageManager: dnf, target: gfx942 }
|
||||
- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx90a }
|
||||
- name: downstreamComponentMatrix
|
||||
type: object
|
||||
default:
|
||||
- rocRoller:
|
||||
name: rocRoller
|
||||
sparseCheckoutDir: projects/rocroller
|
||||
skipUnifiedBuild: 'false'
|
||||
buildDependsOn:
|
||||
- mxDataGenerator_build
|
||||
|
||||
jobs:
|
||||
- ${{ each job in parameters.jobMatrix.buildJobs }}:
|
||||
- job: mxDataGenerator_build_${{ job.os }}_${{ job.target }}
|
||||
${{ if parameters.buildDependsOn }}:
|
||||
dependsOn:
|
||||
- ${{ each build in parameters.buildDependsOn }}:
|
||||
- ${{ build }}_${{ job.os }}
|
||||
variables:
|
||||
- group: common
|
||||
- template: /.azuredevops/variables-global.yml
|
||||
- name: ROCM_PATH
|
||||
value: $(Agent.BuildDirectory)/rocm
|
||||
pool:
|
||||
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||
${{ if eq(job.os, 'almalinux8') }}:
|
||||
container:
|
||||
image: rocmexternalcicd.azurecr.io/manylinux228:latest
|
||||
endpoint: ContainerService3
|
||||
workspace:
|
||||
clean: all
|
||||
steps:
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||
parameters:
|
||||
aptPackages: ${{ parameters.aptPackages }}
|
||||
pipModules: ${{ parameters.pipModules }}
|
||||
packageManager: ${{ job.packageManager }}
|
||||
- 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 }}
|
||||
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
|
||||
parameters:
|
||||
dependencyList:
|
||||
- gtest
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||
parameters:
|
||||
checkoutRef: ${{ parameters.checkoutRef }}
|
||||
dependencyList: ${{ parameters.rocmDependencies }}
|
||||
os: ${{ job.os }}
|
||||
aggregatePipeline: ${{ parameters.aggregatePipeline }}
|
||||
${{ if parameters.triggerDownstreamJobs }}:
|
||||
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||
parameters:
|
||||
os: ${{ job.os }}
|
||||
extraBuildFlags: >-
|
||||
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
|
||||
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||
-GNinja
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
|
||||
parameters:
|
||||
componentName: ${{ parameters.componentName }}
|
||||
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
|
||||
os: ${{ job.os }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||
parameters:
|
||||
os: ${{ job.os }}
|
||||
componentName: ${{ parameters.componentName }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
|
||||
|
||||
- ${{ if parameters.triggerDownstreamJobs }}:
|
||||
- ${{ each component in parameters.downstreamComponentMatrix }}:
|
||||
- ${{ if not(and(parameters.unifiedBuild, eq(component.skipUnifiedBuild, 'true'))) }}:
|
||||
- template: /.azuredevops/components/${{ component.name }}.yml@pipelines_repo
|
||||
parameters:
|
||||
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||
sparseCheckoutDir: ${{ component.sparseCheckoutDir }}
|
||||
buildDependsOn: ${{ component.buildDependsOn }}
|
||||
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}
|
||||
triggerDownstreamJobs: true
|
||||
unifiedBuild: ${{ parameters.unifiedBuild }}
|
||||
285
.azuredevops/components/rocRoller.yml
Normal file
285
.azuredevops/components/rocRoller.yml
Normal file
@@ -0,0 +1,285 @@
|
||||
parameters:
|
||||
- name: componentName
|
||||
type: string
|
||||
default: rocRoller
|
||||
- name: checkoutRepo
|
||||
type: string
|
||||
default: 'self'
|
||||
- name: checkoutRef
|
||||
type: string
|
||||
default: ''
|
||||
# monorepo related parameters
|
||||
- name: sparseCheckoutDir
|
||||
type: string
|
||||
default: ''
|
||||
- name: triggerDownstreamJobs
|
||||
type: boolean
|
||||
default: false
|
||||
- name: downstreamAggregateNames
|
||||
type: string
|
||||
default: ''
|
||||
- name: buildDependsOn
|
||||
type: object
|
||||
default: null
|
||||
- name: unifiedBuild
|
||||
type: boolean
|
||||
default: false
|
||||
# set to true if doing full build of ROCm stack
|
||||
# and dependencies are pulled from same pipeline
|
||||
- name: aggregatePipeline
|
||||
type: boolean
|
||||
default: false
|
||||
- name: aptPackages
|
||||
type: object
|
||||
default:
|
||||
- ccache
|
||||
- gfortran
|
||||
- git
|
||||
- libboost-program-options-dev
|
||||
- libboost-filesystem-dev
|
||||
- liblapack-dev
|
||||
- libmsgpack-dev
|
||||
- libopenblas-dev
|
||||
- libyaml-cpp-dev
|
||||
- ninja-build
|
||||
- name: pipModules
|
||||
type: object
|
||||
default:
|
||||
- black
|
||||
- flake8
|
||||
- msgpack
|
||||
- pandas
|
||||
- pytest
|
||||
- pytest-cmake
|
||||
- pytest-cov
|
||||
- pytest-mock
|
||||
- scipy
|
||||
- pyyaml
|
||||
- joblib
|
||||
- --upgrade
|
||||
- name: rocmDependencies
|
||||
type: object
|
||||
default:
|
||||
- aomp
|
||||
- clr
|
||||
- llvm-project
|
||||
- rocm-cmake
|
||||
- rocminfo
|
||||
- ROCR-Runtime
|
||||
- rocprofiler-register
|
||||
- name: rocmTestDependencies
|
||||
type: object
|
||||
default:
|
||||
- aomp
|
||||
- clr
|
||||
- llvm-project
|
||||
- rocminfo
|
||||
- rocm_smi_lib
|
||||
- rocprofiler-register
|
||||
- ROCR-Runtime
|
||||
- roctracer
|
||||
|
||||
- name: jobMatrix
|
||||
type: object
|
||||
default:
|
||||
buildJobs:
|
||||
- { pool: rocm-ci_ultra_build_pool, os: ubuntu2204, packageManager: apt, target: gfx942 }
|
||||
- { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx90a }
|
||||
- { pool: rocm-ci_ultra_build_pool, os: almalinux8, packageManager: dnf, target: gfx942 }
|
||||
- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx90a }
|
||||
#testJobs:
|
||||
# - { os: ubuntu2204, packageManager: apt, target: gfx942 }
|
||||
# - { os: ubuntu2204, packageManager: apt, target: gfx90a }
|
||||
#- name: downstreamComponentMatrix
|
||||
# type: object
|
||||
# default:
|
||||
# - hipBLASLt:
|
||||
# name: hipBLASLt
|
||||
# sparseCheckoutDir: projects/hipblaslt
|
||||
# skipUnifiedBuild: 'false'
|
||||
# buildDependsOn:
|
||||
# - rocRoller_build
|
||||
|
||||
jobs:
|
||||
- ${{ each job in parameters.jobMatrix.buildJobs }}:
|
||||
- job: rocroller_build_${{ job.os }}_${{ job.target }}
|
||||
timeoutInMinutes: 120
|
||||
${{ if parameters.buildDependsOn }}:
|
||||
dependsOn:
|
||||
- ${{ each build in parameters.buildDependsOn }}:
|
||||
- ${{ build }}_${{ job.os }}
|
||||
variables:
|
||||
- group: common
|
||||
- template: /.azuredevops/variables-global.yml
|
||||
- name: ROCM_PATH
|
||||
value: $(Agent.BuildDirectory)/rocm
|
||||
pool:
|
||||
vmImage: ${{ variables.BASE_BUILD_POOL }}
|
||||
${{ if eq(job.os, 'almalinux8') }}:
|
||||
container:
|
||||
image: rocmexternalcicd.azurecr.io/manylinux228:latest
|
||||
endpoint: ContainerService3
|
||||
workspace:
|
||||
clean: all
|
||||
steps:
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
|
||||
parameters:
|
||||
aptPackages: ${{ parameters.aptPackages }}
|
||||
pipModules: ${{ parameters.pipModules }}
|
||||
packageManager: ${{ job.packageManager }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
|
||||
parameters:
|
||||
checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
|
||||
parameters:
|
||||
dependencyList:
|
||||
- catch2
|
||||
- cli11
|
||||
- fmtlib
|
||||
- gtest
|
||||
- libdivide
|
||||
- spdlog
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||
parameters:
|
||||
checkoutRef: ${{ parameters.checkoutRef }}
|
||||
dependencyList: ${{ parameters.rocmDependencies }}
|
||||
os: ${{ job.os }}
|
||||
aggregatePipeline: ${{ parameters.aggregatePipeline }}
|
||||
${{ if parameters.triggerDownstreamJobs }}:
|
||||
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
|
||||
- task: Bash@3
|
||||
displayName: Build and install LAPACK
|
||||
inputs:
|
||||
targetType: inline
|
||||
script: |
|
||||
mkdir -p $(Agent.BuildDirectory)/temp-deps
|
||||
cd $(Agent.BuildDirectory)/temp-deps
|
||||
git clone https://github.com/Reference-LAPACK/lapack-release -b lapack-3.9.1 lapack
|
||||
cd lapack
|
||||
cmake -DCMAKE_Fortran_COMPILER=gfortran -DCMAKE_BUILD_TYPE=Release -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCBLAS=ON -DLAPACKE=OFF -DBUILD_TESTING=OFF -DCMAKE_INSTALL_LIBDIR=lib -DBUILD_SHARED_LIBS=OFF -B build -S .
|
||||
cmake --build build --parallel
|
||||
cd build
|
||||
sudo make install
|
||||
- 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: rocRoller | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
|
||||
path: $(CCACHE_DIR)
|
||||
restoreKeys: |
|
||||
rocRoller | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING)
|
||||
rocRoller | ${{ job.os }} | ${{ job.target }}
|
||||
rocRoller | ${{ job.os }}
|
||||
- task: Bash@3
|
||||
displayName: Add paths for CMake and Python site-packages binaries
|
||||
inputs:
|
||||
targetType: inline
|
||||
script: |
|
||||
USER_BASE=$(python3 -m site --user-base)
|
||||
echo "##vso[task.prependpath]$USER_BASE/bin"
|
||||
echo "##vso[task.setvariable variable=PytestCmakePath]$USER_BASE/share/Pytest/cmake"
|
||||
displayName: Set cmake configure paths
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
|
||||
parameters:
|
||||
os: ${{ job.os }}
|
||||
multithreadFlag: '-j'
|
||||
cmakeSourceDir: $(Agent.BuildDirectory)/sparse/shared/rocroller
|
||||
cmakeBuildDir: $(Agent.BuildDirectory)/sparse/shared/rocroller/build
|
||||
extraBuildFlags: >-
|
||||
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor;$(PytestCmakePath)
|
||||
-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.target }}
|
||||
-DGPU_TARGETS=${{ job.target }}
|
||||
-DROCROLLER_ENABLE_FETCH=OFF
|
||||
-GNinja
|
||||
--trace-expand
|
||||
--debug-output
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
|
||||
parameters:
|
||||
componentName: ${{ parameters.componentName }}
|
||||
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
|
||||
os: ${{ job.os }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
|
||||
parameters:
|
||||
os: ${{ job.os }}
|
||||
componentName: ${{ parameters.componentName }}
|
||||
gpuTarget: ${{ job.target }}
|
||||
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
|
||||
|
||||
# - ${{ if eq(parameters.unifiedBuild, False) }}:
|
||||
# - ${{ each job in parameters.jobMatrix.testJobs }}:
|
||||
# - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
|
||||
# timeoutInMinutes: 300
|
||||
# dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
|
||||
# condition:
|
||||
# and(succeeded(),
|
||||
# eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
|
||||
# not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
|
||||
# eq(${{ parameters.aggregatePipeline }}, False)
|
||||
# )
|
||||
# variables:
|
||||
# - group: common
|
||||
# - template: /.azuredevops/variables-global.yml
|
||||
# - name: ROCM_PATH
|
||||
# value: $(Agent.BuildDirectory)/rocm
|
||||
# pool: ${{ job.target }}_test_pool
|
||||
# workspace:
|
||||
# clean: all
|
||||
# steps:
|
||||
# - checkout: none
|
||||
# - 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:
|
||||
# preTargetFilter: ${{ parameters.componentName }}
|
||||
# os: ${{ job.os }}
|
||||
# gpuTarget: ${{ job.target }}
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
|
||||
# parameters:
|
||||
# os: ${{ job.os }}
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
|
||||
# parameters:
|
||||
# checkoutRef: ${{ parameters.checkoutRef }}
|
||||
# dependencyList: ${{ parameters.rocmTestDependencies }}
|
||||
# os: ${{ job.os }}
|
||||
# gpuTarget: ${{ job.target }}
|
||||
# ${{ if parameters.triggerDownstreamJobs }}:
|
||||
# downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
|
||||
# parameters:
|
||||
# componentName: ${{ parameters.componentName }}
|
||||
# os: ${{ job.os }}
|
||||
# testDir: '$(Agent.BuildDirectory)/rocm/bin'
|
||||
# testExecutable: './rocroller-tests-catch'
|
||||
# testParameters: '--reporter junit::out=./test_output.xml'
|
||||
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
|
||||
# parameters:
|
||||
# aptPackages: ${{ parameters.aptPackages }}
|
||||
# pipModules: ${{ parameters.pipModules }}
|
||||
# environment: test
|
||||
# gpuTarget: ${{ job.target }}
|
||||
|
||||
#- ${{ if parameters.triggerDownstreamJobs }}:
|
||||
# - ${{ each component in parameters.downstreamComponentMatrix }}:
|
||||
# - ${{ if not(and(parameters.unifiedBuild, eq(component.skipUnifiedBuild, 'true'))) }}:
|
||||
# - template: /.azuredevops/components/${{ component.name }}.yml@pipelines_repo
|
||||
# parameters:
|
||||
# checkoutRepo: ${{ parameters.checkoutRepo }}
|
||||
# sparseCheckoutDir: ${{ component.sparseCheckoutDir }}
|
||||
# buildDependsOn: ${{ component.buildDependsOn }}
|
||||
# downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}
|
||||
# triggerDownstreamJobs: true
|
||||
# unifiedBuild: ${{ parameters.unifiedBuild }}
|
||||
@@ -51,49 +51,44 @@ parameters:
|
||||
type: boolean
|
||||
default: true
|
||||
|
||||
# for cmake calls, set env variables for AlmaLinux 8
|
||||
# to simulate running source /opt/rh/gcc-toolset-14/enable for the session
|
||||
|
||||
steps:
|
||||
# create workingDirectory if it does not exist and change into it
|
||||
# call cmake from within that directory using $cmakeArgs as its parameters
|
||||
- ${{ if eq(parameters.os, 'almalinux8') }}:
|
||||
- script: |
|
||||
cd $AGENT_BUILDDIRECTORY
|
||||
pwd
|
||||
echo "##vso[task.setvariable variable=PATH]$PATH:/opt/rh/gcc-toolset-14/root/usr/bin"
|
||||
echo "##vso[task.setvariable variable=MANPATH]$MANPATH:/opt/rh/gcc-toolset-14/root/usr/share/man"
|
||||
echo "##vso[task.setvariable variable=INFOPATH]$INFOPATH:/opt/rh/gcc-toolset-14/root/usr/share/info"
|
||||
echo "##vso[task.setvariable variable=PCP_DIR]/opt/rh/gcc-toolset-14/root"
|
||||
echo "##vso[task.setvariable variable=LD_LIBRARY_PATH]$LD_LIBRARY_PATH:/opt/rh/gcc-toolset-14/root/usr/lib64"
|
||||
echo "##vso[task.setvariable variable=LD_LIBRARY_PATH]$LD_LIBRARY_PATH:/opt/rh/gcc-toolset-14/root/usr/lib"
|
||||
echo "##vso[task.setvariable variable=PKG_CONFIG_PATH]$PKG_CONFIG_PATH:/opt/rh/gcc-toolset-14/root/usr/lib64/pkgconfig"
|
||||
echo "##vso[task.setvariable variable=CMAKE_TOOLCHAIN_FILE]$AGENT_BUILDDIRECTORY/ci-toolchain.cmake"
|
||||
echo "set(CMAKE_SHARED_LINKER_FLAGS_INIT -L$AGENT_BUILDDIRECTORY/rocm/lib64 -L/opt/rh/gcc-toolset-14/root/usr/lib/gcc/x86_64-redhat-linux/14/)" > ci-toolchain.cmake
|
||||
echo "set(CMAKE_EXE_LINKER_FLAGS_INIT -L$AGENT_BUILDDIRECTORY/rocm/lib64 -L/opt/rh/gcc-toolset-14/root/usr/lib/gcc/x86_64-redhat-linux/14/)" >> ci-toolchain.cmake
|
||||
echo "set(CMAKE_CXX_FLAGS_INIT="--gcc-toolchain=/opt/rh/gcc-toolset-14/root")" >> ci-toolchain.cmake
|
||||
env:
|
||||
AGENT_BUILDDIRECTORY: $(Agent.BuildDirectory)
|
||||
displayName: '${{parameters.componentName }} CMake Env'
|
||||
- task: CMake@1
|
||||
displayName: '${{parameters.componentName }} CMake Flags'
|
||||
${{ if eq(parameters.os, 'almalinux8')}}:
|
||||
env:
|
||||
PATH: "/opt/rh/gcc-toolset-14/root/usr/bin:$(PATH)"
|
||||
MANPATH: "/opt/rh/gcc-toolset-14/root/usr/share/man:$(MANPATH)"
|
||||
INFOPATH: "/opt/rh/gcc-toolset-14/root/usr/share/info:$(INFOPATH)"
|
||||
PCP_DIR: "/opt/rh/gcc-toolset-14/root"
|
||||
LD_LIBRARY_PATH: "/opt/rh/gcc-toolset-14/root/usr/lib64:/opt/rh/gcc-toolset-14/root/usr/lib:$(LD_LIBRARY_PATH)"
|
||||
PKG_CONFIG_PATH: "/opt/rh/gcc-toolset-14/root/usr/lib64/pkgconfig:$(PKG_CONFIG_PATH)"
|
||||
inputs:
|
||||
workingDirectory: ${{ parameters.cmakeBuildDir }}
|
||||
cmakeArgs: >-
|
||||
${{ iif(parameters.customInstallPath, join('', format('-DCMAKE_INSTALL_PREFIX={0}', parameters.installDir)), '') }}
|
||||
${{ iif(eq(parameters.os, 'almalinux8'), '-DCMAKE_SHARED_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/lib64 -L/opt/rh/gcc-toolset-14/root/usr/lib/gcc/x86_64-redhat-linux/14/"', '') }}
|
||||
${{ iif(eq(parameters.os, 'almalinux8'), '-DCMAKE_EXE_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/lib64 -L/opt/rh/gcc-toolset-14/root/usr/lib/gcc/x86_64-redhat-linux/14/"', '') }}
|
||||
-DCMAKE_CXX_FLAGS="${{ parameters.extraCxxFlags }} ${{ iif(and(eq(parameters.os, 'almalinux8'), parameters.useAmdclang), '--gcc-toolchain=/opt/rh/gcc-toolset-14/root', '') }}"
|
||||
${{ parameters.extraBuildFlags }}
|
||||
${{ parameters.cmakeSourceDir }}
|
||||
${{ iif(parameters.customInstallPath, format('-DCMAKE_INSTALL_PREFIX={0}', parameters.installDir), '') }}
|
||||
${{ parameters.extraBuildFlags }} ${{ parameters.cmakeSourceDir }}
|
||||
- ${{ if parameters.printDiskSpace }}:
|
||||
- script: df -h
|
||||
displayName: Disk space before build
|
||||
# equivalent to running make $cmakeTargetDir from $cmakeBuildDir
|
||||
# i.e., cd $cmakeBuildDir; make $cmakeTargetDir
|
||||
- task: CMake@1
|
||||
${{ if and( eq(parameters.os, 'almalinux8'), eq(parameters.consolidateBuildAndInstall , true)) }}:
|
||||
${{ if eq(parameters.consolidateBuildAndInstall, true) }}:
|
||||
displayName: '${{ parameters.componentName }} CMake Build and Install'
|
||||
${{ else }}:
|
||||
displayName: '${{ parameters.componentName }} CMake Build'
|
||||
${{ if eq(parameters.os, 'almalinux8')}}:
|
||||
env:
|
||||
PATH: "/opt/rh/gcc-toolset-14/root/usr/bin:$(PATH)"
|
||||
MANPATH: "/opt/rh/gcc-toolset-14/root/usr/share/man:$(MANPATH)"
|
||||
INFOPATH: "/opt/rh/gcc-toolset-14/root/usr/share/info:$(INFOPATH)"
|
||||
PCP_DIR: "/opt/rh/gcc-toolset-14/root"
|
||||
LD_LIBRARY_PATH: "/opt/rh/gcc-toolset-14/root/usr/lib64:/opt/rh/gcc-toolset-14/root/usr/lib:$(LD_LIBRARY_PATH)"
|
||||
PKG_CONFIG_PATH: "/opt/rh/gcc-toolset-14/root/usr/lib64/pkgconfig:$(PKG_CONFIG_PATH)"
|
||||
inputs:
|
||||
workingDirectory: ${{ parameters.cmakeBuildDir }}
|
||||
${{ if eq(parameters.os, 'almalinux8') }}:
|
||||
@@ -112,7 +107,7 @@ steps:
|
||||
displayName: Disk space after build
|
||||
# equivalent to running make $cmakeTarget from $cmakeBuildDir
|
||||
# e.g., make install
|
||||
- ${{ if and(eq(parameters.installEnabled, true), or(ne(parameters.os, 'almalinux8'), eq(parameters.consolidateBuildAndInstall, false))) }}:
|
||||
- ${{ if and(eq(parameters.installEnabled, true), eq(parameters.consolidateBuildAndInstall, false)) }}:
|
||||
- task: CMake@1
|
||||
displayName: '${{parameters.componentName }} ${{ parameters.cmakeTarget }}'
|
||||
inputs:
|
||||
|
||||
@@ -26,6 +26,7 @@ parameters:
|
||||
type: object
|
||||
default:
|
||||
bison: bison
|
||||
catch2: catch-devel
|
||||
ccache: ccache
|
||||
cmake: cmake
|
||||
cuda-toolkit-12-9: cuda-compiler-12-9 cuda-toolkit-12-9
|
||||
@@ -44,6 +45,7 @@ parameters:
|
||||
libbabeltrace-dev: libbabeltrace-devel
|
||||
libbison-dev: bison-devel
|
||||
libboost-program-options-dev: boost-devel
|
||||
libdivide-dev: libdivide-devel
|
||||
# note: libdrm-amdgpu1 is not available in dnf
|
||||
libdrm-dev: libdrm-devel
|
||||
libdrm-amdgpu-dev: libdrm-amdgpu-devel
|
||||
@@ -54,6 +56,7 @@ parameters:
|
||||
libfftw3-dev: fftw-devel
|
||||
libfmt-dev: fmt-devel
|
||||
libgmp-dev: gmp-devel
|
||||
libgtest-dev: gtest-devel
|
||||
liblapack-dev: lapack-devel
|
||||
liblzma-dev: xz-devel
|
||||
libmpfr-dev: mpfr-devel
|
||||
@@ -63,12 +66,14 @@ parameters:
|
||||
libopenblas-dev: openblas-devel
|
||||
libopenmpi-dev: openmpi-devel
|
||||
libpci-dev: libpciaccess-devel
|
||||
libspdlog-dev: spdlog-devel
|
||||
libssl-dev: openssl-devel
|
||||
# note: libstdc++-devel is in the base packages list
|
||||
libsystemd-dev: systemd-devel
|
||||
libtool: libtool
|
||||
# note: libudev-dev is part of systemd-devel
|
||||
libva-amdgpu-dev: libva-amdgpu-devel
|
||||
libyaml-cpp-dev: yaml-cpp-devel
|
||||
mesa-amdgpu-va-drivers: mesa-amdgpu-va-drivers
|
||||
mesa-common-dev: mesa-libGL-devel
|
||||
ncurses-dev: ncurses-devel
|
||||
|
||||
@@ -9,6 +9,7 @@ parameters:
|
||||
default:
|
||||
boost: 250
|
||||
catch2: 343
|
||||
cli11: 367
|
||||
fmtlib: 341
|
||||
grpc: 72
|
||||
gtest: 73
|
||||
@@ -16,6 +17,7 @@ parameters:
|
||||
lapack: 69
|
||||
libdivide: 342
|
||||
spdlog: 340
|
||||
yaml-cpp: 368
|
||||
|
||||
steps:
|
||||
- ${{ each dependency in parameters.dependencyList }}:
|
||||
|
||||
Reference in New Issue
Block a user