Compare commits

...

665 Commits

Author SHA1 Message Date
anisha-amd
773f5de407 Docs: Ray release 25.12 and compatibility version format standardization (#5845) 2026-01-08 12:09:11 -05:00
dependabot[bot]
b297ced032 Bump urllib3 from 2.5.0 to 2.6.3 in /docs/sphinx (#5842)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-08 08:22:01 -05:00
peterjunpark
2dc22ca890 fix(primus-pytorch.rst): FP8 config instead of BF16 (#5839) 2026-01-07 13:49:31 -05:00
Joseph Macaranas
85102079ed [External CI] Add SIMDe dev package to HIP runtime pipeline (#5838) 2026-01-07 11:00:38 -05:00
dependabot[bot]
ba95e0e689 Bump pynacl from 1.6.1 to 1.6.2 in /docs/sphinx (#5836)
Bumps [pynacl](https://github.com/pyca/pynacl) from 1.6.1 to 1.6.2.
- [Changelog](https://github.com/pyca/pynacl/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/pynacl/compare/1.6.1...1.6.2)

---
updated-dependencies:
- dependency-name: pynacl
  dependency-version: 1.6.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-06 14:10:42 -05:00
Pratik Basyal
1691d369e9 ROCM-core version fixed (#5827) 2026-01-02 16:06:27 -05:00
peterjunpark
172b0f7c08 Fix inconsistency in xDiT doc
Fix inconsistency in xDiT doc
2025-12-29 10:26:25 -05:00
peterjunpark
c67fac78bd Update docs for xDiT diffusion inference 25.13 Docker release (#5820)
* archive previous version

* add xdit 25.13

* update history index

* add perf results section
2025-12-29 08:44:45 -05:00
peterjunpark
e0b8ec4dfb Update training docs for Primus/25.11 (#5819)
* update conf and toc.yml.in

* archive previous versions

archive data files

update anchors

* primus pytorch: remove training batch size args

* update primus megatron run cmds

multi-node

* update primus pytorch

update

* update

update

* update docker tag
2025-12-29 08:05:47 -05:00
Pratik Basyal
38f2d043dc OS table removed from compatibility table [develop] (#5810)
* OS table removed from compatibility table

* Feedback added

* Azure Linux 3.0 and compatibility version update

* Version fix

* Review feedback added

* Minor change
2025-12-23 16:28:19 -05:00
peterjunpark
3a43bacdda Update xdit diffusion inference history (#5808)
* Update xdit diffusion inference history

* fix
2025-12-22 11:05:32 -05:00
peterjunpark
48d8fe139b fix link to ROCm PyT docker image (#5803) 2025-12-19 15:47:55 -05:00
peterjunpark
7455fe57b8 clean up formatting in FA2 page (#5795) 2025-12-19 09:21:41 -05:00
peterjunpark
52c0a47e84 Update Flash Attention guidance in "Model acceleration libraries" (#5793)
* flash attention update

Signed-off-by: seungrok.jung <seungrok.jung@amd.com>

flash attention update

Signed-off-by: seungrok.jung <seungrok.jung@amd.com>

flash attention update

Signed-off-by: seungrok.jung <seungrok.jung@amd.com>

sentence-case heading

* Update docs/how-to/rocm-for-ai/inference-optimization/model-acceleration-libraries.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

---------

Co-authored-by: seungrok.jung <seungrok.jung@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-12-19 08:48:52 -05:00
peterjunpark
cbab9a465d Update documentation for JAX training MaxText 25.11 release (#5789) 2025-12-18 11:23:58 -05:00
peterjunpark
459283da3c xDiT diffusion inference v25.12 documentation update (#5786)
* Add xdit-diffusion ROCm docs page.

* Update template formatting and fix sphinx warnings

* Add System Validation section.

* Add sw component versions/commits.

* Update to use latest v25.10 image instead of v25.9

* Update commands and add FLUX instructions.

* Update Flux instructions. Change image tag. Describe as diffusion inference instead of specifically video.

* git rm xdit-video-diffusion.rst

* Docs for v25.12

* Add hyperlinks to components

* Command fixes

* -Diffusers suffix

* Simplify yaml file and cleanup main rst page.

* Spelling, added 'js'

* fix merge conflict

fix

---------

Co-authored-by: Kristoffer <kristoffer.torp@amd.com>
2025-12-17 10:20:10 -05:00
peterjunpark
1b4f25733d vLLM inference benchmark 1210 (#5776)
* Archive previous ver

fix anchors

* Update vllm.rst and data yaml for 20251210
2025-12-17 09:21:57 -05:00
Ibrahim Wani
b287372be5 [origami] Test update (#5768)
* Fix the skipping of origami tests

* Update dependencies for origami refactor

* test

* Unsupress test output.

* Ctest implementation

* Test ctest

* Test ctest 2

* Add pip install test

* Fix python version

* Add python dep

* test

* test 2

* Debug for readme

* Fix pip install

* Fix pip install 2

* Clean up

* Run tests on 950

* Replace 950 with 1201

* 1101

* Add more archs

* Add more archs 2

* Comment out archs

* Move pip install script to ./azuredevops/scripts

* Fix path

* Fix path 2

* Fix path 3

* Fix path 4

* Remove pip install testing:

* Use inline script

* Add old deps
2025-12-16 15:37:41 -07:00
Pratik Basyal
78e8baf147 Taichi removed from ROCm docs [Develop] (#5779)
* Taichi removed from ROCm docs

* Warnings fixed
2025-12-16 13:12:40 -05:00
Matt Williams
3e0c8b47e3 Merge pull request #5771 from ROCm/mattwill-amd-patch-4
Reverting Optiq note
2025-12-12 17:53:41 -05:00
Matt Williams
c3f0b99cc0 Reverting Optiq note 2025-12-12 17:47:33 -05:00
dependabot[bot]
c9d1679486 Bump rocm-docs-core from 1.31.0 to 1.31.1 in /docs/sphinx
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.31.0 to 1.31.1.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.31.0...v1.31.1)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-version: 1.31.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-12 16:15:26 -05:00
Pratik Basyal
fdbef17d7b Onnx and rocshmem version updated (#5760) 2025-12-11 17:05:25 -05:00
Matt Williams
6592a41a7f Adding ROCm-Optiq note to What is ROCm page (#5709)
* Adding ROCm-Optiq note to What is ROCm page

Adding a note for a link to the Optiq docs

* Apply suggestion from @mattwill-amd

* Apply suggestion from @mattwill-amd

* Apply suggestion from @mattwill-amd

* Update what-is-rocm.rst

* Update what-is-rocm.rst

* Apply suggestion from @mattwill-amd

* Apply suggestion from @mattwill-amd

* Apply suggestion from @mattwill-amd

* Apply suggestion from @mattwill-amd
2025-12-10 12:56:33 -08:00
Matt Williams
65a936023b Fixing link redirects (#5758)
* Update multi-gpu-fine-tuning-and-inference.rst

* Update pytorch-training-v25.6.rst

* Update pytorch-compatibility.rst
2025-12-10 11:17:59 -05:00
anisha-amd
2a64949081 Docs: update verl compatibility - fix (#5756) 2025-12-09 19:51:37 -05:00
anisha-amd
0a17434517 Docs: update verl compatibility - fix (#5754) 2025-12-09 18:36:16 -05:00
anisha-amd
2be7e5ac1e Docs: verl framework - compatibility - 25.11 release (#5752) 2025-12-09 11:41:43 -05:00
dependabot[bot]
ae80c4a31c Bump rocm-docs-core from 1.30.1 to 1.31.0 in /docs/sphinx (#5751)
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.30.1 to 1.31.0.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/v1.31.0/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.30.1...v1.31.0)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-version: 1.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-09 08:25:16 -05:00
Adel Johar
dd89a692e1 [Ex CI] Add rocAL dependencies 2025-12-09 10:56:23 +01:00
peterjunpark
bf74351e5a Fix Primus PyTorch doc: training.batch_size -> training.local_batch_size (#5748) 2025-12-08 13:35:22 -05:00
yugang-amd
f2067767e0 xdit-diffusion v25.11 docs (#5744) 2025-12-05 17:09:48 -05:00
Pratik Basyal
effd4174fb PyTorch 2.7 support added (#5740) 2025-12-04 15:49:23 -05:00
peterjunpark
453751a86f fix docker hub links for primus:v25.10 (#5738) 2025-12-04 09:17:33 -05:00
peterjunpark
fb644412d5 Update training Docker docs for Primus 25.10 (#5737) 2025-12-04 09:08:00 -05:00
Pratik Basyal
e8fdc34b71 711 hipBLASLT performance decline known issue added (#5730)
* hipBLASLT performance decline known issue added

* Update RELEASE.md

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* GitHub Issue added

* Ram's feedback incorporated

* GitHub Issue added

* Update RELEASE.md

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

---------

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2025-12-03 08:50:25 -05:00
Pratik Basyal
b4031ef23c 7.1.1 known issues post GA (#5721)
* rocblas known issues added

* Minor change

* Update RELEASE.md

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Resolved

* Update RELEASE.md

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

---------

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-11-28 16:34:47 -05:00
dependabot[bot]
d0bd4e6f03 Bump rocm-docs-core from 1.29.0 to 1.30.1 in /docs/sphinx (#5712)
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.29.0 to 1.30.1.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.29.0...v1.30.1)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-version: 1.30.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-28 08:18:23 -05:00
Jan Stephan
0056b9453e Remove continuous numbering of tables and figures
Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-11-28 10:29:01 +01:00
Pratik Basyal
3d1ad79766 Merged cell removed for coloring issue (#5713) 2025-11-27 19:52:36 -05:00
Pratik Basyal
8683bed11b Known issue from 7.1.0 removed (#5702) 2025-11-26 12:27:22 -05:00
Pratik Basyal
847cd7c423 Link and PyTorch version updated (#5700) 2025-11-26 11:52:47 -05:00
Alex Xu
42cad29c04 re-compile requirements.txt 2025-11-26 11:35:00 -05:00
alexxu-amd
f7b2fe0a48 Merge pull request #5699 from ROCm/sync-develop-from-internal
Sync develop from internal for 7.1.1
2025-11-26 11:27:48 -05:00
alexxu-amd
bb199aa2b9 Merge pull request #639 from ROCm/sync-develop-from-external
Sync develop from external
2025-11-26 11:10:19 -05:00
alexxu-amd
2f7b2a7fa1 Merge branch 'develop' into sync-develop-from-external 2025-11-26 10:54:34 -05:00
Pratik Basyal
7fd75919d1 711 GPU and environment variable link updated (#640)
* ROCm environment vairable link updated

* Programming patter link updated
2025-11-26 10:41:16 -05:00
Alex Xu
4490c57c6a resolve merge conflict 2025-11-26 10:33:02 -05:00
Alex Xu
007f24fe7b Merge remote-tracking branch 'external/develop' into sync-develop-from-external 2025-11-26 10:09:04 -05:00
Pratik Basyal
afbb6e0f61 PLDM table synced (#638) 2025-11-26 10:08:12 -05:00
Pratik Basyal
1b5a3e54c2 711 compatibility note update and review feedback added (#636)
* Leo's review feedback added

* rocshmem version bumped from 3.0.0 to 3.1.0

* Footnote cleaned

* Footnote updated

* Ram's feedback

* Link updated

* Footnote updated

* Link fixed
2025-11-26 09:46:57 -05:00
alexxu-amd
2c6eb9cf2a Update versions.md (#637)
* Update versions.md

* remove empty line
2025-11-26 09:03:54 -05:00
Pratik Basyal
b93fdb811c 7.1.1 pre-GA public link reset (#627)
* 7.1.1 pre-GA public link reset

* Update CHANGELOG.md
2025-11-26 08:38:13 -05:00
srayasam-amd
096d91e190 Updating rocm version to 7.1.1 GA (#5697)
* 7.1.1 GA update

* 7.1.1 GA update

* Update rocm-7.1.1.xml

* Update default.xml
2025-11-26 16:08:03 +05:30
Pratik Basyal
02037f4384 7.1.1 fixed issues added (#634)
* Fixed issues added

* Blank line added
2025-11-24 15:56:44 -05:00
peterjunpark
c64dc46a50 [7.1.1] docs(RELEASE.md): Add notes under "Driver and firmware related changes" (#632)
* Add notes under "Driver and firmware related changes"

update

* Update RELEASE.md

---------

Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-11-24 13:18:53 -05:00
Pratik Basyal
702d8e4c8e New link updated for MIgraphx (#5691) 2025-11-24 11:52:38 -05:00
Istvan Kiss
19344d7b61 Fix rocr-runtime environment variables content link (#631) 2025-11-21 18:59:57 +01:00
amd-hsivasun
807ec6afcf [Ex CI] Update AMDMIGraphX CMake version (#5683) 2025-11-20 18:05:24 -05:00
amd-hsivasun
4c04da05c3 [Ex CI] Update pipeline ID for amdmis to monorepo (#5685) 2025-11-20 18:05:17 -05:00
dependabot[bot]
411334716c Bump rocm-docs-core from 1.28.0 to 1.29.0 in /docs/sphinx (#5659)
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.28.0 to 1.29.0.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.28.0...v1.29.0)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-version: 1.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-20 13:54:33 -05:00
amd-hsivasun
99f0875e70 [Ex CI] amdsmi monorepo enablement (#5677)
* [Ex CI] amdsmi monorepo enablement

* Fix amdsmi yaml
2025-11-20 13:52:01 -05:00
peterjunpark
50658d0812 Update release highlights for 7.1.1 (#629) 2025-11-20 13:51:13 -05:00
Pratik Basyal
7aeecdf8e2 Document 7.1.1 Known issues (#628)
Co-authored-by: Peter Park <peter.park@amd.com>
2025-11-20 13:12:52 -05:00
Istvan Kiss
4f669eb2c6 Add JAX Plugin-PJRT support table (#619) 2025-11-20 10:55:51 -06:00
Jithun Nair
7d1f314303 Update PyTorch compatibility documentation with PyTorch2.9 for ROCm7.1.1 2025-11-19 19:15:04 -06:00
Jithun Nair
c523f51e58 Merge branch 'develop' into update-pytorch-compatibility 2025-11-19 19:11:22 -06:00
Melantha-S
b566858909 Update pytorch-compatibility.rst 2025-11-19 15:54:04 -07:00
Melantha-S
c33b9e3611 Update pytorch-compatibility.rst 2025-11-19 15:16:30 -07:00
Shao
2646b4841d Update pytorch compatibility documentation 2025-11-19 15:05:11 -07:00
Shao
ff2f40d800 Add logsumexp to spellcheck dictionary 2025-11-19 15:03:12 -07:00
Shao
71bcc5b204 Add PyTorch 2.9 release notes for ROCm 2025-11-19 14:59:27 -07:00
Pratik Basyal
fd840df30b JAX and PyTorch support and ROCProfiler upcoming changes updated 7.1.1 (#626)
* ROCProfiler upcoming changes updated

* ROCm examples moved

* JAX verison udpated

* Formatting updated"

* Update RELEASE.md

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Environment variable updated added

* Minor changelog fixes

* JAX reverted

* grid alignment

* Revert "grid alignment"

This reverts commit 47939743ab3175cad47f45fd2cd263476eaf14e1.

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-11-19 15:29:02 -05:00
Shao
58e26eede1 Add Cholesky and mx to spellcheck dictionary 2025-11-19 10:27:51 -07:00
Shao
407a9d4cb0 Update PyTorch compatibility documentation 2025-11-19 09:52:47 -07:00
Istvan Kiss
81b7745f8e Docs: Add Environment Variable Page (#395)
Co-authored-by: Adel Johar <adel.johar@amd.com>
2025-11-19 17:40:26 +01:00
Pratik Basyal
6af62fd30a 7.1.1 Compatibility table fixed (#624)
* broken table fixed

* Line break added

* Line break added
2025-11-19 11:22:47 -05:00
Pratik Basyal
bb692dfd84 711 Release Notes update [Batch1] (#623)
* Fixed issue updated

* Release notes updated

* Formatting correction

* RCCL performance decline issue added

* Known issue updated

* Minor update

* Known issues updated

* Review feedback added

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-11-19 08:04:37 -05:00
Adel Johar
8d51d0e803 [Ex CI] Add CXX override for MIGraphX 2025-11-19 10:45:10 +01:00
Adel Johar
66b8b96c72 [Ex CI] Add missing dependencies for rccl and mivisionx 2025-11-19 10:45:10 +01:00
Pratik Basyal
fb098b6354 Initial changes for 7.1.1 release notes (#622)
* Changelog and tables updates for 7.1.1 release notes

* Changelog synced

* Naming udpated

* Added upcoming changes for composable kernel

* Update RELEASE.md

Co-authored-by: Pratik Basyal <prbasyal@amd.com>

* Update RELEASE.md

* Highlights udpated for DGL, ROCm-DS, and HIP documentation

* Changelog synced"

* Offline, runfile and ROCm Bandwidth test updated

* CK/AITER highlight added

* Changelog synced

* AI model highlight updated

* PLDM version added

* Changelog updated

* Leo's feedback incorporated

* Compatibility and PLDM versions udpated

* New docs update added

* ROCm resolved issue added

* Review feedback added

* Link added

* PLDM updated

* PLDM table udpated

* Changes

---------

Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
2025-11-17 12:09:59 -05:00
cfallows-amd
72107dd6d5 [Ex CI] Adding dependencies to rocprofiler-compute azure workflow (#5667) 2025-11-14 12:24:56 -05:00
amd-hsivasun
99c1590057 [Ex CI] Added ROCM_PATH env var to rocprofiler-compute (#5666) 2025-11-14 12:19:06 -05:00
Jeffrey Novotny
3d86323f88 Update licenses document to reflect monorepo (#620) 2025-11-14 09:16:48 -05:00
Carrie Fallows
636d4cc736 Adding dependencies to rocmDependencies in rocprof-compute yaml. Now needed for building because of rocprofiler-sdk dependency.
Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-11-13 20:56:45 -05:00
amd-hsivasun
d1ce815d8d [Ex CI] Add rocprofiler-sdk dep to build for rocprofiler-compute (#5664) 2025-11-13 16:08:02 -05:00
Pratik Basyal
80ced95526 Changelog updated (#5660) 2025-11-13 10:18:15 -05:00
Pratik Basyal
09c6a9fdef 710 RCCL Known Issues and CRIU note update (#5647)
* RCCL ALltoALL known issue added

* CRIU note added

* Minor change

* Review feedback and AMDSMI detailed changelog link added

* Github issue link added
2025-11-11 16:54:36 -05:00
Alex Xu
372ddd5af3 revert test changes 2025-11-11 09:33:28 -05:00
peterjunpark
eb956cfc5c Fixed wording related to VLLM_V1_USE_PREFILL_DECODE_ATTENTION (#5605)
Co-authored-by: Hongxia Yang <hongxia.yang@amd.com>
2025-11-11 09:22:11 -05:00
peterjunpark
e05cdca54f Fix references to vLLM docs (#5651) 2025-11-11 09:00:07 -05:00
anisha-amd
04c7374f41 Docs: frameworks 25.10 - compatibility - DGL and llama.cpp (#5648) 2025-11-10 15:26:54 -05:00
Alex Xu
39de859bd1 update rocm-docs-core to 1.29.0 2025-11-10 14:10:06 -05:00
amd-hsivasun
c8531ac7ea [Ex CI] Update pipeline Id for hipTensor to monorepo (#5638) 2025-11-10 13:32:10 -05:00
Pratik Basyal
420bbfa126 7.1.0 MI325X PLDM note updated (#5644)
* PLDM note updated

* Footnote update

* Note added to compatibility

* Lint error fixed
2025-11-08 09:08:21 -05:00
Pratik Basyal
4881887e2c rocBLAS precision known issue added [Develop] (#5641)
* rocBLAS precision known issue added

* IPC note removed

* Review feedback added
2025-11-07 19:45:33 -05:00
Pratik Basyal
148d6670ad rocBLAS and HipBLASLt known issue added 7.1.0 (#5634)
* rocBLAS and HipBLASLt known issue added

* Title warning fixed

* Jeff's feedback added

* Leo's feedback incorporated

* Minor feedback

* MI325X PLDM udpate

* Leo's feedback added

* PyTorch profiling issue added

* Changelog synced

* JAX section removed

* Ram's feedback added
2025-11-07 17:48:36 -05:00
amd-hsivasun
9770e9b6ef [Ex CI] hiptensor Enablement (#5636) 2025-11-07 16:08:46 -05:00
Joseph Macaranas
ee4cf66d67 [External CI] Add simde-devel in dnf mapping (#5635) 2025-11-07 00:59:35 -05:00
Alex Xu
908862242a test preview banner 2025-11-06 12:24:52 -05:00
amd-hsivasun
6ba30f191c [Ex CI] rocWMMA increase timeout for test job (#5620) 2025-11-06 11:38:07 -05:00
yugang-amd
674dc355e4 vLLM 10/24 release (#5626)
* vLLM 10/24 release

* updates per SME inputs

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/vllm.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

---------

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2025-11-05 11:13:50 -05:00
Adel Johar
c7f3a56811 [Ex CI] Add half, rccl, and dependencies for rpp, mivisionx and rocjpeg 2025-11-05 15:59:15 +01:00
Pratik Basyal
0107fa731e ROCm Bandwidth test issue added (#5612) 2025-10-31 18:19:40 -04:00
Pratik Basyal
a87ec360e1 710 known issues update[Batch1] (#5604)
* Version update

* ROCm Bandwidth failure added

* Editorial feedback added

* Minor change

* rocprofv3 issue added

* Minor change

* ROCgdb issue added

* SME feedback incorpprated

* Leo's feedback added

* ROCm Compute Profiler known issue added

* Changelog synced
2025-10-31 14:57:13 -04:00
amd-hsivasun
7215e1e8c7 [Ex CI] Update rocwmma pipeline ID to monorepo (#5602) 2025-10-31 13:56:17 -04:00
amd-hsivasun
e4a59d8c66 [Ex CI] Enable rocWMMA Monorepo (#5597)
* [Ex CI] Enable rocWMMA Monorepo

* Updated to use component name parameter
2025-10-30 13:43:05 -04:00
Pratik Basyal
8108fe7275 7.1.0 Post GA updates (#5600)
* Post GA updates

* Mono repo link added

* AMD SMI changelog link removed
2025-10-30 13:27:25 -04:00
alexxu-amd
d3ff9d7c8e Merge pull request #5599 from ROCm/sync-develop-from-internal
Sync develop from internal for 7.1.0
2025-10-30 11:37:20 -04:00
Alex Xu
939ee7de0c Merge remote-tracking branch 'internal/develop' into sync-develop-from-internal 2025-10-30 11:15:00 -04:00
Pratik Basyal
f1e6c285dd 7.1.0 PRE GA Link reset (#616)
* Link reset

* Changelog synced and feedback incorporated

* Jeff's feedback added
2025-10-30 11:01:13 -04:00
alexxu-amd
ff1d9b4d69 Update versions.md for ROCm 7.1.0 GA (#615)
* Update versions.md

* fix linting
2025-10-30 10:00:32 -04:00
srayasam-amd
ef3fa601d5 7.1.0 GA update (#5598)
* PR for GA 7.1.0

* Create rocm-7.1.0.xml

* Update default.xml

* Update rocm-7.1.0.xml
2025-10-30 19:10:03 +05:30
Pratik Basyal
576191a104 710 release highlights update pre GA (#614)
* hipBLASLt highlights updated

* Flash attention highlight added

* PLDM highlight updated

* Spell fixes
2025-10-30 09:03:32 -04:00
Pratik Basyal
2db07b5cda Changelog updated for HIP (#613) 2025-10-29 18:27:05 -04:00
alexxu-amd
fe3dc988b8 Merge pull request #612 from ROCm/sync-develop-from-external
Sync develop from external for 7.1.0 GA
2025-10-29 17:13:01 -04:00
Alex Xu
36c879b7e0 resolve merge conflict 2025-10-29 17:08:07 -04:00
alexxu-amd
91450dca10 Merge branch 'develop' into sync-develop-from-external 2025-10-29 16:49:33 -04:00
Alex Xu
2de92767e6 Merge remote-tracking branch 'external/develop' into sync-develop-from-external 2025-10-29 16:48:29 -04:00
Pratik Basyal
54d226acd9 710 highlight updates [batch 2] (#611)
* Changelog updated for ROCdbg api"

* Systems profiler update

* Minor change
2025-10-29 16:42:57 -04:00
Pratik Basyal
f46d7ec00f 7.1.0 Release notes updated (#610)
* Release notes updated

* Changelog updated"

Changelog udpated
"

* Github link updated for Mono repo
2025-10-29 14:59:33 -04:00
Pratik Basyal
09c946b6fb 710 fixed issue update (#608)
* Resolved issues added

* Changelog synced

* Changelog synced
2025-10-29 12:28:09 -04:00
Pratik Basyal
5285669d98 7.1.0 release notes, changelog, and known issues update (#606)
* RCCL and hipblaslt changelog updated

* ROCProfiler-SDK highlight addede

* Review feedback from Leo and Swati added

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Swati Rawat <120587655+SwRaw@users.noreply.github.com>

* ROCprofiler-SDK added

* Minor edits

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Swati Rawat <120587655+SwRaw@users.noreply.github.com>
2025-10-29 10:22:52 -04:00
Jan Stephan
9b3138cffa [Ex CI] Add aomp, aomp-extras, composable_kernel and rocALUTION
Remove libomp-dev

Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-10-29 11:22:27 +01:00
Pratik Basyal
61fffe3250 7.0.2 Broken link, version and known issue update (#5591)
* Version and known issue update

* Historical compatibility updated
2025-10-28 15:16:15 -04:00
dependabot[bot]
43ccfbbe80 Bump rocm-docs-core from 1.26.0 to 1.27.0 in /docs/sphinx (#5570)
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.26.0 to 1.27.0.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.26.0...v1.27.0)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-version: 1.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-28 11:06:22 -04:00
peterjunpark
1515fb3779 Revert "Add xdit diffusion docs (#5576)" (#5580)
This reverts commit 4132a2609c.
2025-10-27 16:22:28 -04:00
randyh62
410a69efe4 Update RELEASE.md (#598)
Edit doorbell ring improvements
2025-10-27 13:14:45 -07:00
Joseph Macaranas
248cbf8bc1 [External CI] rccl triggers rocprofiler-sdk downstream (#5420)
- Update rccl component pipeline to include new additions made to projects already in super repos.
- Also update rccl to trigger rocproifler-sdk job upon completion.
- rocprofiler-sdk pipeline updated to include os parameter to enable future almalinux 8 job.
2025-10-27 12:14:30 -04:00
Istvan Kiss
0171dced89 Link fix and remove CentOS Stream mention from PyTorch release notes. (#593)
CentOS Stream not officially supported OS
2025-10-27 16:47:52 +01:00
Istvan Kiss
f2d6675839 Add back extra line to fix spellchecker (#604) 2025-10-27 16:39:29 +01:00
Pratik Basyal
7d0fad9aa8 Changelog duplication fixed (#601) 2025-10-27 10:38:44 -04:00
Kristoffer
4132a2609c Add xdit diffusion docs (#5576)
* Add xdit video diffusion base page.

* Update supported accelerators.

* Remove dependency on mad-tags.

* Update docker pull section.

* Update container launch instructions.

* Improve launch instruction options and layout.

* Add benchmark result outputs.

* Fix wrong HunyuanVideo path

* Finalize instructions.

* Consistent title.

* Make page and side-bar titles the same.

* Updated wordlist. Removed note container reg HF.

* Remove fp8_gemms in command and add release notes.

* Update accelerators naming.

* Add note regarding OOB performance.

* Fix admonition box.

* Overall fixes.
2025-10-27 14:56:55 +01:00
Pratik Basyal
c56d5b7495 7.1.0 release notes and compatibility footnote update (#599)
* RDC changelog and highlight addition

* Compatibility updated

* Minor change

* Consolidated changelog synced
2025-10-25 08:47:17 -05:00
Pratik Basyal
a2e2bd3277 710 Compatibility table fixed (#597)
* Compatibility table fixed

* Ryzen link updated

* rocJPEG added

* Driver updated

* Minor change

* PLDM udpate
2025-10-24 15:54:11 -04:00
randyh62
32d1cdcd90 Update RELEASE.md (#596)
Fix HIP 7.1 issues
2025-10-24 12:11:59 -07:00
Pratik Basyal
ac16524ebd 7.1.0 Compatibility updated (#595)
* Compatibility updated

* rocAL and MIgraphx changelog added

* Minor update

* Heading changes
2025-10-24 13:43:36 -04:00
Pratik Basyal
157d86b780 7.1.0 Release Notes Update (#591)
* Initial changelog added

* Changelog updated

* 7.1.0 draft changes

* Highlight changes

* Add release highlights

* formatting

* Order updated

* Highlights added

* Highlight update

* Changelog updated

* RCCL change

* RCCL changelog entry added

* Changelog updates added

* heading level fixed

* Updates added

* Leo's and Jeff's review feedback incorporated

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Release notes feedback

* Updated highlights

* Minor changes

* TOC for internal updated

---------

Co-authored-by: Peter Park <peter.park@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2025-10-24 12:41:23 -04:00
peterjunpark
35ca027aa4 Fix broken links under rocm-for-ai/ (#5564) 2025-10-23 14:39:58 -04:00
peterjunpark
90c1d9068f add xref to vllm v1 optimization guide in workload.rst (#5560) 2025-10-22 13:47:46 -04:00
peterjunpark
cb8d21a0df Updates to the vLLM optimization guide for MI300X/MI355X (#5554)
* Expand vLLM optimization guide for MI300X/MI355X with comprehensive AITER coverage. attention backend selection, environment variables (HIP/RCCL/Quick Reduce), parallelism strategies, quantization (FP8/FP4), engine tuning, CUDA graph modes, and multi-node scaling.

Co-authored-by: PinSiang <pinsiang.tan@embeddedllm.com>
Co-authored-by: Hongxia Yang <62075498+hongxiayang@users.noreply.github.com>
Co-authored-by: pinsiangamd <pinsiang.tan@amd.com>
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2025-10-22 12:54:25 -04:00
Kiriti Gowda
6f8cf36279 Merge pull request #5530 from kiritigowda/kg/ctest-verbose
CTest - Output verbose
2025-10-21 13:16:12 -07:00
anisha-amd
8eb5fef37c Docs: frameworks compatibility standardization (#5488) 2025-10-21 16:12:18 -04:00
Pratik Basyal
a5f0b30a47 PLDM version update for MI350 series [Develop] (#5547)
* PLDM version update for MI350 series

* Minor update
2025-10-20 14:39:17 -04:00
Adel Johar
2ec051dec5 Merge pull request #5531 from adeljo-amd/ci_examples
[Ex CI] Add libomp-dev, MIVisionX, rocDecode and dependencies
2025-10-20 09:55:02 +02:00
Pratik Basyal
fd6bbe18a7 PLDM update for MI250 and MI210 [Develop] (#5537)
* PLDM update for MI250 and MI210

* PLDM update
2025-10-17 17:13:42 -04:00
Istvan Kiss
14ada81c41 Pytorch release notes with rocm 7.1 (#588)
* Add PyTorch release notes udpate

* Remove torchtext

Torchtext development stoped and only supported with PyTorch 2.2

* Update
2025-10-17 22:03:14 +02:00
peterjunpark
a613bd6824 JAX Maxtext v25.9 doc update (#5532)
* archive previous version (25.7)

* update docker components list for 25.9

* update template

* update docker pull tag

* update

* fix intro
2025-10-17 11:31:06 -04:00
Adel Johar
b3459da524 [Ex CI] Add libomp-dev, MIVisionX, rocDecode 2025-10-17 14:02:54 +02:00
kiritigowda
eba211d7f1 CTest - Output verbose 2025-10-16 15:22:27 -07:00
peterjunpark
14bb59fca9 Update Megatron/PyTorch Primus 25.9 docs (#5528)
* add previous versions

* Fix heading levels in pages using embedded templates (#5468)

* update primus-megatron doc

update megatron-lm doc

update templates

fix tab

update primus-megatron model configs

Update primus-pytorch model configs

fix css class

add posttrain to pytorch-training template

update data sheets

update

update

update

update docker tags

* Add known issue and update Primus/Turbo versions

* add primus ver to histories

* update primus ver to 0.1.1

* fix leftovers from merge conflict
2025-10-16 12:51:30 -04:00
anisha-amd
a98236a4e3 Main Docs: references of accelerator removal and change to GPU (#5495)
* Docs: references of accelerator removal and change to GPU

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>
2025-10-16 11:22:10 -04:00
David Dixon
5cb6bfe151 Add yaml-cpp to dependencies 2025-10-16 07:26:06 -06:00
David Dixon
6e7422ded7 Update cli11.yml for Azure Pipelines (#5523) 2025-10-15 10:47:29 -06:00
Istvan Kiss
7b7ff53985 Update Radeon link (#5453) 2025-10-15 17:25:05 +02:00
David Dixon
019796dc63 [external] Create cli11.yml (#5522) 2025-10-15 09:19:56 -06:00
Pratik Basyal
f21cfe1171 GitHub issue added to 702 known issues (#5520)
* GitHub issue added to 702 known issues

* Added missing RCCL changelog
2025-10-15 09:58:23 -04:00
Jan Stephan
170cb47a4f Merge pull request #5512 from j-stephan/rocm-examples-deps
[Ex CI] Add libtiff-dev, libopencv-dev and rpp
2025-10-15 10:02:46 +02:00
Braden Stefanuk
d19a8e4a83 [superbuild] Add dependencies for hipblaslt and origami (#5487)
* ci: add deps for origami in superbuild

* ci: add rocm path to system path

* build: add pip msgpack dep
2025-10-14 16:05:24 -06:00
amd-hsivasun
3a0b8529ed [Ex CI] Added MIOpen to the test dependencies for rocm-examples (#5517) 2025-10-14 14:56:36 -04:00
Joseph Macaranas
f9d7fc2e6a [External CI] Add libsimde-dev to ROCR pipeline (#5515) 2025-10-14 14:24:45 -04:00
Nilesh M Negi
d424687191 [Ex CI] Increase RCCL build time limit to 120mins (#5516) 2025-10-14 12:59:40 -05:00
Jan Stephan
35e6e50888 [Ex CI] Add libopencv-dev
Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-10-13 20:00:25 +02:00
Jan Stephan
91cfe98eb3 [Ex CI] Add libtiff-dev and rpp
Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-10-13 17:42:59 +02:00
Pratik Basyal
036aaa2e78 ROCm for HPC topic updated Develop (#5504)
* ROCm for HPC topic updated

* ROCm for HPC topic udpated

* Minor editorial
2025-10-10 22:31:51 -04:00
Pratik Basyal
78258e0f85 702 compatibility Footnote updated (#5502)
* Footnote updated

* Minor update

* Minor update

* Break added

* Line break added

* Line break

* Footnote updated

* Minor correction
2025-10-10 21:23:07 -04:00
amd-hsong
c79d9f74ef Merge pull request #5490 Re-enable device_merge_inplace unit test for rocPRIM 2025-10-10 15:03:23 -06:00
amd-hsivasun
fb1b78c6f0 [Ex CI] Added Component and Module Dependencies (#5489)
* [Ex CI] Added Component and Module Dependencies

* Add registerROCmPackages flag
2025-10-10 16:01:11 -04:00
peterjunpark
3a70d75f5e Fix documented AMD SMI version (ROCm 7.0.2) (#5496) 2025-10-10 15:09:20 -04:00
alexxu-amd
61e1f088a1 Merge pull request #5492 from ROCm/sync-dev-from-internal
Sync dev from internal for 7.0.2 GA
2025-10-10 11:17:32 -04:00
Pratik Basyal
1f6e5c5e04 Update compatibility-matrix.rst 2025-10-10 11:10:48 -04:00
Pratik Basyal
e8a0769842 Update RELEASE.md 2025-10-10 11:07:51 -04:00
Alex Xu
6f9579d052 Merge remote-tracking branch 'internal/develop' into sync-dev-from-internal 2025-10-10 11:02:33 -04:00
Pratik Basyal
245d53a021 Merge pull request #579 from prbasyal-amd/post-rc3-702-update
GPU resiliency highlight updated 702
2025-10-10 11:00:59 -04:00
Alex Xu
35dbbb22bc fix linting 2025-10-10 10:29:13 -04:00
alexxu-amd
03dc8cee00 Merge pull request #584 from ROCm/sync-dev-from-external
Sync dev from external
2025-10-10 10:14:56 -04:00
Alex Xu
323e5fd27a Merge remote-tracking branch 'external/develop' into sync-dev-from-external 2025-10-10 10:13:08 -04:00
alexxu-amd
b11fd7b492 Update versions.md (#583) 2025-10-10 09:31:24 -04:00
srayasam-amd
5e2efa05a6 7.0.2 GA update (#5491)
* 7.0.2 GA update

* Create rocm-7.0.2.xml
2025-10-10 18:47:48 +05:30
Hao Song
29a90f0271 [rocPRIM] Re-enable device_merge_inplace unit test for rocPRIM 2025-10-09 21:48:11 +00:00
randyh62
c06242bb89 Update RELEASE.md (#581)
* Update RELEASE.md

Remove support for rocBlas and hipBlasLt

* Update CHANGELOG.md

Removed from the Changelog as well.
2025-10-09 13:15:08 -07:00
peterjunpark
68e8453ca5 Update vLLM doc for 10/6 release and bump rocm-docs-core to 1.26.0 (#5481)
* archive previous doc version

* update model/docker data and doc templates

* Update "Reproducing the Docker image"

* fix: truncated commit hash doesn't work for some reason

* bump rocm-docs-core to 1.26.0

* fix numbering

fix

* update docker tag

* update .wordlist.txt
2025-10-08 16:23:40 -04:00
Pratik Basyal
503b8bcc86 Framework and changelog updated (#5483)
* Framework and chaneglog updated

* Wordlist updated
2025-10-08 15:05:11 -04:00
amd-hsivasun
e3d97d339a [Ex CI] Added rocJPEG and rocprofiler-sdk 2025-10-08 14:47:44 -04:00
alexxu-amd
978c58d196 Merge pull request #577 from ROCm/sync-develop-from-external
Sync develop from external
2025-10-08 14:25:03 -04:00
alexxu-amd
a366048b64 Merge branch 'develop' into sync-develop-from-external 2025-10-08 14:12:14 -04:00
Pratik Basyal
4c3e33c291 Compatibility matrix and changelog synced for ROCm 7.0.2 (#576)
* Compatibility matrix and changelog synced

* Indentation updated

* OS updated
2025-10-08 14:11:15 -04:00
Alex Xu
89758e67d8 Merge remote-tracking branch 'external/develop' into sync-develop-from-external 2025-10-08 14:03:34 -04:00
Pratik Basyal
5d0f201b4d 7.0.2 review update (#575)
* 7.0.2 review update

* Tensorflow footnote updated

* Wordlist added
2025-10-08 12:35:14 -04:00
Pratik Basyal
e3677d89a6 PLDM bundle info updated for 7.0.2 (#574)
* PLDM bundle info updated

* Driver dependency added to GPU resiliency

* Known issue for Migrpahx added

* Footnote added

* Known issue for OpenCV updated

* Leo's feedback incorporated

* Radeon 9060 updated

* Known issues updated
2025-10-08 11:00:42 -04:00
amd-hsivasun
f20edab8fc [Ex CI] Update CMake Flags for hipTensor 2025-10-07 15:21:39 -04:00
Pratik Basyal
6f84d50011 ROCm 7.0.2 Post RC3 update (#573)
* Space minimized

* OS support updated

* Minor change
2025-10-06 14:08:01 -04:00
Pratik Basyal
57dd082f28 Post RC2 7.0.2 review feedback updated (#571)
* Known issue updated

* Space optimized

* Changelog updated

* Apply suggestions from code review

Leo's review feedback incorporated

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Highlight changes

* Highlight and OS support updated

* GPU resiliency highlight updated

* Highlights updated

* ROCm-EP deprecation added

* Apply suggestions from code review

leo's feedback incorporated

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* PLDM update

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-10-06 12:04:09 -04:00
peterjunpark
eeea0d2180 Fix heading levels in pages using embedded templates (#5468) 2025-10-03 13:33:14 -04:00
anisha-amd
93c6d17922 Docs: frameworks 25.09 - compatibility - FlashInfer and llama.cpp (#5462) 2025-10-02 13:51:36 -04:00
amd-hsivasun
f91c2b9b4a Update dependencies-rocm.yml 2025-10-01 15:31:35 -04:00
amd-hsivasun
5e6b66ca39 Remove tasks to locate test dir 2025-10-01 15:30:37 -04:00
amd-hsivasun
6b8b359d03 Updated test dir to s/build/tests 2025-10-01 15:30:37 -04:00
amd-hsivasun
38e659e5f0 Update testDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
0894547f5a Update setupenv 2025-10-01 15:30:37 -04:00
amd-hsivasun
aca31170c4 Update setupenv 2025-10-01 15:30:37 -04:00
amd-hsivasun
d21ec9eea5 Updated testDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
189c269350 Added Debug 2025-10-01 15:30:37 -04:00
amd-hsivasun
774cb7a1b3 Changed testDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
024cb4db76 Added testDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
945fb286f7 Find tests Task 2025-10-01 15:30:37 -04:00
amd-hsivasun
ee93101541 Change list files 2025-10-01 15:30:37 -04:00
amd-hsivasun
e31841312b Update testDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
41b5298659 Added a list for all rp-systems files 2025-10-01 15:30:37 -04:00
amd-hsivasun
58790154b2 Add a script to look for setup-env.sh 2025-10-01 15:30:37 -04:00
amd-hsivasun
6f7f73ac0b Update workingDirectories 2025-10-01 15:30:37 -04:00
amd-hsivasun
b2e3bc8565 [Ex CI] Updated rp-systems CMakeBuildDir 2025-10-01 15:30:37 -04:00
amd-hsivasun
52979e2fdb [Ex CI] Updated testDir for rp-systems tests 2025-10-01 15:30:37 -04:00
peterjunpark
0ea5216ace docs: update article_info in conf.py (#5454) 2025-10-01 13:17:50 -04:00
peterjunpark
2e1b4dd5ee Add multi-node setup instructions for training perf Dockers (#5449)
---------

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2025-09-30 14:53:38 -04:00
Pratik Basyal
5c7b993c0c 7.0.2 release changes (#568)
* Initial changes for 7.0.2

* Heading level updated

* Release notes changes

* rocsolver added

* Known issues updated

* Highlights updated

* RN changes

* Release highlights for AI applications updated

* AI developer contents added

* leo's review feedback added

* Compatibility matrix updated

* GPU driver support
2025-09-30 14:02:04 -04:00
amd-hsivasun
2d79b3c4bd [Ex CI] Added rocm-cmake dependency 2025-09-30 14:00:16 -04:00
Peter Park
fd59b5fbac fix links in docs (#5446) 2025-09-29 15:27:32 -04:00
amd-hsivasun
0a643f4686 [Ex CI] Enable aqlprofile 2025-09-26 14:42:15 -04:00
amd-hsivasun
d9e5744f7a Update testExecutable 2025-09-26 14:01:02 -04:00
amd-hsivasun
ccb849ec02 Added python3-pip to aptModules 2025-09-26 14:01:02 -04:00
amd-hsivasun
42d4867964 Removed more aptPackages 2025-09-26 14:01:02 -04:00
amd-hsivasun
375359a5dd Added ninja to aptPackages 2025-09-26 14:01:02 -04:00
amd-hsivasun
e92745f1ff Removed apt and pip modules 2025-09-26 14:01:02 -04:00
amd-hsivasun
0fa72358d3 Remove registerROCm packages flag 2025-09-26 14:01:02 -04:00
amd-hsivasun
6fec268a4e Removed package manager 2025-09-26 14:01:02 -04:00
amd-hsivasun
ff14cd1ff5 Added pyyaml 2025-09-26 14:01:02 -04:00
amd-hsivasun
8f65688653 Added registerROCmPackages 2025-09-26 14:01:02 -04:00
amd-hsivasun
33d1493adb Removed dependencies 2025-09-26 14:01:02 -04:00
amd-hsivasun
4b6c7776a2 Updated parameters 2025-09-26 14:01:02 -04:00
amd-hsivasun
af811daa1b Added GPUTarget 2025-09-26 14:01:02 -04:00
amd-hsivasun
d6c045e482 Update test parameters 2025-09-26 14:01:02 -04:00
amd-hsivasun
78b24cad39 Update test pool 2025-09-26 14:01:02 -04:00
amd-hsivasun
753a94c0bb Add test step to buildjob 2025-09-26 14:01:02 -04:00
amd-hsivasun
6ecad57c62 Revert pool changes 2025-09-26 14:01:02 -04:00
amd-hsivasun
977554809a Changed cmake prefix path 2025-09-26 14:01:02 -04:00
amd-hsivasun
7b00f4493b Removed module and prefix path 2025-09-26 14:01:02 -04:00
amd-hsivasun
95c439a272 Removed Compiler Path 2025-09-26 14:01:02 -04:00
amd-hsivasun
94e04fbdc0 Updated testpool 2025-09-26 14:01:02 -04:00
amd-hsivasun
7ab59de8af Update testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
175c817563 Change testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
25516d312e Updated testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
30c345629a Changed testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
210dc94bbb Removed testExecutable 2025-09-26 14:01:02 -04:00
amd-hsivasun
a54023ccb8 Changed testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
17e3362dc7 Add Checkout to testjob 2025-09-26 14:01:02 -04:00
amd-hsivasun
0f9c0d884d Updated testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
c890de4b16 Added Path to Gtest 2025-09-26 14:01:02 -04:00
amd-hsivasun
4ea77ab515 Added Tests 2025-09-26 14:01:02 -04:00
amd-hsivasun
c0512612f4 Updated testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
1c81ac3747 Updated testdir path 2025-09-26 14:01:02 -04:00
amd-hsivasun
4bafa42e52 Updated test parameters 2025-09-26 14:01:02 -04:00
amd-hsivasun
493801e670 Updated testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
1a5152b7b3 Removed testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
874c881012 Fixed testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
bdcaeea74c Updated testdir 2025-09-26 14:01:02 -04:00
amd-hsivasun
b02669acf7 Fixed Dependencies 2025-09-26 14:01:02 -04:00
amd-hsivasun
844f10b2b1 Updated denendecies-other variables 2025-09-26 14:01:02 -04:00
amd-hsivasun
d6c14920b4 External CI: Build pipeline for aqlprofile 2025-09-26 14:01:02 -04:00
amd-hsivasun
4affe10a7c [Ex CI] Update pipeline Id for rdc to monorepo 2025-09-26 12:38:57 -04:00
amd-hsivasun
81341ef435 Add New Line 2025-09-26 11:41:21 -04:00
amd-hsivasun
abacd328f9 [Ex CI] Added rocRand to rocmDependencies 2025-09-26 11:41:21 -04:00
amd-hsivasun
80b2fb6e26 [Ex CI] Add hipRAND to rocmDependencies 2025-09-26 11:41:21 -04:00
amd-hsivasun
b53e8decfc [Ex CI] Enable rdc monorepo 2025-09-26 11:41:21 -04:00
amd-hsivasun
5fcc2eafde [Ex CI] Update pipeline Id for rocprofiler-sdk to monorepo 2025-09-25 16:49:07 -04:00
amd-hsivasun
2eb0d77bc6 Updated testDir 2025-09-25 13:20:37 -04:00
amd-hsivasun
d84b41908f Changed Testdir 2025-09-25 13:20:37 -04:00
amd-hsivasun
986f8284d1 [Ex CI] Update testDir for rocprofiler-sdk 2025-09-25 13:20:37 -04:00
Pratik Basyal
d92d9268dc Use of Radeon and Ryzen reference updated [Develop] (#5432)
* Use of Radeon and Ryzen reference updated

* Pytorch link update
2025-09-24 19:07:41 -05:00
Ibrahim Wani
1629d3f0ea Add origami yaml based tests to azure pipelines (#5431)
* Add origami yaml tests

* Dependency fix in origami.yml

* Fix almalinux dependency; get publish test results step working

* Fix almalinux dependency issue
2025-09-24 14:49:51 -06:00
Pratik Basyal
6cf6b34b2e TOC for ROCm on Radeon and Ryzen updated (#5429) 2025-09-24 13:58:26 -05:00
Pratik Basyal
c35a0a121a ROR link and text updated (#5426) 2025-09-24 13:28:13 -05:00
amd-hsivasun
412e383654 [Ex CI] Update pipeline Id for rocprofiler-sdk 2025-09-23 15:56:49 -04:00
Pratik Basyal
39f6fc187d rocm-core version updated (#5418) 2025-09-23 15:49:33 -04:00
amd-hsivasun
05b480fb28 Update rocm-examples.yml 2025-09-23 12:10:11 -04:00
amd-hsivasun
4fa44d90db Updated dependencies-cmake-custom.yml default ver 2025-09-23 12:10:11 -04:00
amd-hsivasun
c9ef13d823 Added Custom Cmake to testjobs 2025-09-23 12:10:11 -04:00
amd-hsivasun
f02172050b Added rocWMMA dependency 2025-09-23 12:10:11 -04:00
amd-hsivasun
154dbe297a Updated File to take custom cmake version 2025-09-23 12:10:11 -04:00
amd-hsivasun
993a0a4fd4 [Ex CI] Update cmake 2025-09-23 12:10:11 -04:00
amd-hsivasun
c03662f410 [Ex CI] Update pipeline Id for origami to monorepo 2025-09-23 11:17:39 -04:00
Peter Park
442d7e4750 Add env var note to vllm.rst for MoE models and fix links in docs (#5415)
* docs(vllm.rst): add performance note for MoE models

* docs: fix links

update vllm readme link 20250521

fix links
2025-09-22 15:58:43 -04:00
Pratik Basyal
a09a8f517e PLDM version for 7.0.0 updated (#5412) 2025-09-22 11:14:07 -04:00
Pratik Basyal
0bbaab645d rocSHMEM and ROCprofiler-SDK highlight update (#5408) (#5409)
* rocSHMEM and ROCprofiler-SDK highlight update (#5408)

* Update RELEASE.md
2025-09-22 10:26:12 -04:00
Ibrahim Wani
4b80405e2e Add set -e to exit when test fails (#5398) 2025-09-19 10:43:35 -06:00
Peter Park
d92e5b6c12 Update Primus Megatron doc v25.8 (#5396)
* megatron: update previous versions list

update

wording

* megatron: update rst and yaml

update primus repo link

update mig guide

* update headings and anchors

* megatron: update doc

* update docker hub urls
2025-09-19 08:09:21 -04:00
Pratik Basyal
91fce2e134 rocpd highlight updated (#5393) 2025-09-18 19:00:36 -04:00
Peter Park
27d53cf082 Remove duplicate ML FW docker image support table (#5389) 2025-09-18 17:06:53 -04:00
Pratik Basyal
bc084246be Reference to AMD GPU Driver 30.10 release notes updated (#5380) 2025-09-18 13:34:46 -05:00
Peter Park
9827ba7ff2 docs: MaxText v25.7 patch update (#5372)
* remove jax 0.6.0 nanoo fp8 caveat note

* reorder maxtext docker images in data sheet
2025-09-17 16:25:46 -04:00
Pratik Basyal
bafda50153 Link updated (#5369) 2025-09-17 15:03:29 -05:00
Pratik Basyal
cae65c6c43 Link reset (#5368) 2025-09-17 13:49:04 -05:00
pbhandar-amd
6a66167486 Merge pull request #5367 from ROCm/amd/pbhandar/rocm_701_internal_to_external_sync
Sync internal to external develop branch for ROCm 7.0.1
2025-09-17 14:26:03 -04:00
Parag Bhandari
0f3543d6e8 Merge branch 'develop-internal' into develop 2025-09-17 14:15:05 -04:00
pbhandar-amd
678691c3d7 Merge pull request #563 from ROCm/amd/pbhandar/rocm_701_external_to_internal_sync
Sync external develop into internal develop for ROCm 7.0.1
2025-09-17 14:14:40 -04:00
pbhandar-amd
5cb3debed9 Merge branch 'develop' into amd/pbhandar/rocm_701_external_to_internal_sync 2025-09-17 14:09:59 -04:00
pbhandar-amd
dd5d710727 Update versions.md 2025-09-17 14:09:49 -04:00
pbhandar-amd
eca1ecde92 Merge branch 'develop' into amd/pbhandar/rocm_701_external_to_internal_sync 2025-09-17 13:48:36 -04:00
pbhandar-amd
ed1e414710 Update versions.md 2025-09-17 13:42:20 -04:00
Pratik Basyal
20c90fc406 Footnote updated (#564) 2025-09-17 12:24:03 -05:00
JeniferC99
6e39614b22 7.0.1 GA update (#5365)
* Update default.xml - Change 7.0.0 to 7.0.1

* add rocm-7.0.1.xml
2025-09-17 13:18:01 -04:00
Pratik Basyal
f7873ac74e Long cell in compatibility matrix updated 701 (#562)
* Long cell updated

* Long cell updated

* Historical comaptibility updated
2025-09-17 11:57:35 -05:00
Parag Bhandari
a86fba556b Merge branch 'develop' into develop-internal 2025-09-17 12:35:50 -04:00
Pratik Basyal
7603fed080 Release 7.0.1 demo release notes (#536)
* Mono repo highlight added

* Leo's feedback incorporated

* Minor wording change

* Randy's feedback incorp

* Update for upcoming change

* Minor feedback added

* Ram's feedback incorporated

* Reworded for clarity

* ROCM 7.0.1 draft

* Minor change

* Release 7.0.0 notes appended

* Heading order updated for 7.0.1

* 700 GA changes synced

* Issue updated

* Review feedback added

* Conf file updated

* Tensorflow change added

* review feedback added

* GPU depencency matrix updated

* Compatibility updated

* Minor change

* New update note

* AMD GPU Driver notes updated

* Footnotes updated
2025-09-17 10:57:15 -05:00
Braden Stefanuk
9932cd4ac2 [hipsparselt] Update compile command for new build system (#5244) 2025-09-16 15:36:20 -06:00
Peter Park
e8d104124f Fix PyTorch training benchmark doc template (#5357)
* fix template

* update wordlist
2025-09-16 17:21:57 -04:00
Peter Park
26f708da87 Add Stable Diffusion XL to PyT training benchmark doc and fix paths in SGLang Disagg Inference doc (#5282)
* add sdxl to pytorch-training

* fix sphinx warnings

fix links

* fix paths in cmds and links in sglang disagg

* fix col width

* update release highlights

* fix

quickfix
2025-09-16 16:49:33 -04:00
Pratik Basyal
5a5e4dbb6e Compatibility updated (#5355) 2025-09-16 15:49:13 -05:00
randyh62
1c3dae75e1 Revert "Update RELEASE.md (#560)" (#561)
This reverts commit f216b371a0.
2025-09-16 13:02:13 -07:00
Peter Park
bab853a0d3 Add NCF to pytorch training benchmark doc (#5352)
* add previous version (25.6)

* fix template

* Formatting and wording fixes

* add caveats

* update yaml

* add note to pytorch-training

* fix template

* make model name shorter
2025-09-16 13:29:28 -04:00
Pratik Basyal
5c7ccb3c26 Github Issue Links updated (#5350)
* 7.0.0 compatibility updated

* GIM link updated
2025-09-16 12:55:58 -04:00
randyh62
f216b371a0 Update RELEASE.md (#560)
Update llvm-project URL
2025-09-16 09:39:26 -07:00
randyh62
37faf170b1 Update RELEASE.md (#5349)
* Update RELEASE.md

update llvm-project URL

* Update .wordlist.txt

add spelling errors
2025-09-16 09:38:23 -07:00
Peter Park
8c40d14d7e fix pldm note (#5346) 2025-09-16 11:09:19 -05:00
Peter Park
d5101532f7 docs: Add SGLang disaggregated P/D inference w/ Mooncake guide (#5335)
* add main content

* Update content and format

add clarification

update

update data

* fix

fix

fix

* fix: deepseek v3

* add ki

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/how-to/rocm-for-ai/inference/benchmark-docker/sglang-distributed.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-09-16 10:33:58 -05:00
Peter Park
ef4e7ca1fe docs(PyTorch training v25.8): Add Primus and update PyTorch training benchmark docs (#5331)
* pyt: update previous versions list

update conf.py

* pyt: update yaml and rst

update

update toc

* update headings and anchors

* pyt: update doc

* update docker hub urls
2025-09-16 10:33:53 -05:00
Pratik Basyal
be68246824 Compatibility updated for 7.0.0 (#5332)
* Compatibility udpated

* Minor fix
2025-09-16 10:01:49 -05:00
Pratik Basyal
1626ee4d8b Post GA fixes develop (#5329)
* Develop link updated

* Release notes and compatibilty update

* Compatibilitbity updated

* RPP link updated
2025-09-16 09:30:12 -05:00
Matt Williams
f80044c7db Merge pull request #5326 from ROCm/mattwill-amd-patch-1
Adding AQLprofile link
2025-09-16 08:12:20 -04:00
Pratik Basyal
412f6f2b0e 700 reset link [Develop] (#5325)
* TOC link update and manifest removed

* Link reset

* Changelog synced
2025-09-16 08:07:40 -04:00
Matt Williams
bee7c1223f Update license.md 2025-09-16 08:03:55 -04:00
Pratik Basyal
8af34e2026 700 update pre GA batch1 (#5322)
* Fix PLDM note for ROCm 7.0 (#5320)

* fix pdlm for mi300x

* update debian 12 support note

* 7.0.0 Release notes update Batch 9 (#559)

* Changelog synced

* Compatibilty updated

* Compatibilty update

* Compiler highlight updated

* wordlist updated

---------

Co-authored-by: Peter Park <peter.park@amd.com>
2025-09-16 07:24:54 -04:00
arjun-raj-kuppala
0475650f00 Create rocm-7.0.0.xml (#5321) 2025-09-16 16:45:29 +05:30
Peter Park
cb73e9145a Fix PLDM note for ROCm 7.0 (#5320)
* fix pdlm for mi300x

* update debian 12 support note
2025-09-16 06:09:01 -05:00
Pratik Basyal
7316031fe6 7.0.0 Release notes update Batch 9 (#559)
* Changelog synced

* Compatibilty updated

* Compatibilty update

* Compiler highlight updated

* wordlist updated
2025-09-16 07:03:32 -04:00
Peter Park
76cb264f34 Update vllm-history.rst with missing 0909 entry (#5308) 2025-09-16 06:54:34 -04:00
pbhandar-amd
9c36e44a91 Sync internal 'develop' into external 'develop' for ROCm 7.0 (#5319) 2025-09-16 06:06:57 -04:00
Parag Bhandari
1037f8845a Merge branch 'develop-internal' into develop 2025-09-16 06:01:48 -04:00
pbhandar-amd
c2e31f2d2b Sync external 'develop' branch into internal 'develop' branch (#558) 2025-09-16 06:00:52 -04:00
Yanyao Wang
882f71302a Update default manifest file for ROCm7.0.0 (#5317)
Co-authored-by: Wang, Yanyao <Yanyao.Wang@amd.com>
2025-09-16 14:55:09 +05:30
pbhandar-amd
3d2f10ce0c Merge branch 'develop' into amd/pbhandar/rocm_7_public_internal_sync 2025-09-16 05:20:43 -04:00
pbhandar-amd
81f5314368 Update versions.md 2025-09-16 05:16:12 -04:00
Parag Bhandari
60e3a8107c Merge branch 'develop' into develop-internal 2025-09-16 05:12:42 -04:00
pbhandar-amd
b800801427 Update versions.md 2025-09-16 04:10:31 -04:00
Pratik Basyal
5637deb81e Release notes changes to TF (#556)
* RN changes to TF

* Series capitalized

* Minor update
2025-09-15 17:36:19 -04:00
randyh62
df1ae524b2 Hip minor update (#553)
* Update CHANGELOG.md

Removed duplicate num_threads entry, and added a new Resolved issue from Julia.

* Update RELEASE.md

Removed duplicate num_threads entry and added a resolved issue from Julia.
2025-09-15 14:15:25 -07:00
Pratik Basyal
06fd378036 Known issues updated (#555) 2025-09-15 16:09:07 -05:00
Pratik Basyal
cbd4e8f0ba 7.0.0 release notes feedback updated [Batch 6] (#550)
* RN changes updated

* Changelog synced and release notes updated

* Compatibility changes added
2025-09-15 16:29:34 -04:00
Jeffrey Novotny
b07ae4ba6c Fix links to MIT license for AQLprofile (#5312) 2025-09-15 15:53:29 -04:00
Jeffrey Novotny
2fe270beb3 Fix links to MIT licenses (#5311) 2025-09-15 15:16:17 -04:00
amitkumar-amd
1660ac335a Update RELEASE.md
Swap new framework vs updated framework
2025-09-14 01:50:27 -05:00
amitkumar-amd
b357ba993b Update RELEASE.md 2025-09-14 01:30:49 -05:00
amitkumar-amd
29f4d65da5 Update RELEASE.md 2025-09-14 01:17:53 -05:00
Pratik Basyal
2de5a33aec User space and firmware content added 700 (#542)
* User space and firmware content added

* New updates added

* BKC dep added
2025-09-14 00:58:32 -05:00
Adel Johar
e805e98701 Add key features and known issue for ROCm 7.0 (#421)
Co-authored-by: Istvan Kiss <neon60@gmail.com>
2025-09-13 11:56:58 +02:00
amd-hsivasun
a2785d2b5a Fixed componentName calls for test and build jobs 2025-09-12 12:17:03 -04:00
amd-hsivasun
8882410560 Enabled rocprofiler-systems monorepo 2025-09-12 12:17:03 -04:00
Joseph Macaranas
0af430d1cb [External CI] Another fix for downstream jobs (#5307) 2025-09-11 22:50:56 -04:00
Joseph Macaranas
33bc3c5e2b [External CI] Match component name for ROCR to match expected downstream (#5306) 2025-09-11 22:08:43 -04:00
randyh62
e1a1a4e712 Update RELEASE.md (#540)
* Update RELEASE.md

Added per Julia

* Update CHANGELOG.md

change added to Changelog.md as well
2025-09-11 14:46:12 -07:00
amd-hsivasun
355feae2e2 [Ex CI] Update pipeline Id for rocr-runtime to monorepo 2025-09-11 17:02:58 -04:00
amd-hsivasun
b3c566f6b9 [Ex CI] Update pipeline Id for hip-tests to monorepo 2025-09-11 17:02:50 -04:00
amd-hsivasun
9a3fc8c773 [Ex CI] Update pipeline Id for rocm-smi-lib to monorepo 2025-09-11 16:45:40 -04:00
amd-hsivasun
17be0ce7aa [Ex CI] Update pipeline Id for rocprofiler-sdk to monorepo 2025-09-11 16:41:20 -04:00
amd-hsivasun
c9c41a34c2 [Ex CI] enable hip-tests monorepo 2025-09-11 16:40:36 -04:00
amd-hsivasun
e71b8212f9 Fixed Indentation 2025-09-11 16:23:03 -04:00
amd-hsivasun
8c1df97e34 [Ex CI] Enable rocprofiler-sdk monorepo 2025-09-11 16:23:03 -04:00
amd-hsivasun
957005f596 Updated rocrtst testDir 2025-09-11 16:21:41 -04:00
amd-hsivasun
2383edc1fe Fixed WorkingDir in TestJobs 2025-09-11 16:21:41 -04:00
amd-hsivasun
c4b4abe354 User Test Commit 2025-09-11 16:21:41 -04:00
amd-hsivasun
9b2b1d3a66 User test 2025-09-11 16:21:41 -04:00
Haresh Sivasuntharampillai
8617b653f8 test commit 2025-09-11 16:21:41 -04:00
Haresh Sivasuntharampillai
26ddf7e6ac test commit 2025-09-11 16:21:41 -04:00
Haresh Sivasuntharampillai
91f21d890f Fixed SparseCheckout 2025-09-11 16:21:41 -04:00
Haresh Sivasuntharampillai
a6fbf60594 [Ex CI] enable rocr-runtime monorepo 2025-09-11 16:21:41 -04:00
amd-hsivasun
61f09e2ab9 Update pipelineId for rocprofiler-compute 2025-09-11 15:07:07 -04:00
amd-hsivasun
0d790615ef [Ex CI] Update pipeline Id for rocprofiler-compute to monorepo 2025-09-11 15:07:07 -04:00
Peter Park
7098bdc03b Update vLLM inference benchmark doc for 0909 release (and Sphinx fixes) (#5289) 2025-09-11 15:01:17 -04:00
Peter Park
8eee155585 Mockup: List some bullets horizontally (#539)
* list horizontally

* make it 2 cols

* use grid

* margin -

* update margins
2025-09-11 14:48:47 -04:00
Joseph Macaranas
10f6086819 [External CI] Updates to rocm-libraries pipelines (#5300)
- Add msgpack python module dependency for hipsparselt pipeline.
- Change CMake dirs for rocblas pipeline to allow relative-path access to shared/tensile directory.
2025-09-11 12:53:11 -04:00
amd-hsivasun
964a7cd0b5 fixed component name 2025-09-10 17:31:03 -04:00
amd-hsivasun
d3fe7439cf [Ex CI] enable rocm-smi-lib monorepo 2025-09-10 17:31:03 -04:00
amd-hsivasun
56f566c1dc [Ex CI] update rocminfo pipeline ID to monorepo 2025-09-10 17:24:17 -04:00
Peter Park
e3227d14e6 7.0.0 release notes: Add highlight for training/inference benchmark docker docs (#538)
* add highlight for training/inference benchmark docker docs

* update

update blurb

double word

Update RELEASE.md

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

Update RELEASE.md

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

Update RELEASE.md

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

update wording
2025-09-10 16:45:35 -04:00
Haresh Sivasuntharampillai
88f1493b68 [Ex CI] enable rocminfo monorepo 2025-09-10 16:30:48 -04:00
anisha-amd
3ca9cb1fcc Docs: adding ray and llama.cpp live blog links (#5290) 2025-09-10 15:02:03 -04:00
Peter Park
aebf1b4480 Update amdsmi changelog (#533)
* update amdsmi cl

* remove duplicated changelog entry

* minor tweaks and add upcoming changes

* update
2025-09-10 13:46:58 -04:00
amd-hsivasun
0840c14b6d [Ex CI] update rocm-core pipeline ID to monorepo 2025-09-10 11:58:15 -04:00
amd-hsivasun
daa0184d2e [Ex CI] enable rocm-core monorepo 2025-09-10 11:47:12 -04:00
Pratik Basyal
3b5019e03f Minor correction (#5285) 2025-09-10 10:53:25 -04:00
Pratik Basyal
68f505e375 Taichi removed (#5283) 2025-09-10 10:07:55 -04:00
Peter Park
05a66f75fe add qwen3 30b a3b to vllm-benchmark-models (#5280) 2025-09-09 17:41:11 -04:00
Ibrahim Wani
3c37ae88f0 Add origami CI pipelines (#5256)
* Add origami yaml pipeline.

* Unindent lines.

* Add cmake dependency step to origami yml.

* Add pybind dep

* Fix pipeline failures.

* Quick fix

* Fix pybind11 dep for almalinux

* Fix pybind11 dep for almalinux again

* Test

* [Ex CI] don't create symlink if more than one sparse checkout dir

* hipBLASLt multi sparse

* Replace pybind with nanobind.

* Quick fix

* Testing nanobind install in pipelines

* Run origami binding tests

* Change build path for tests

* Change build path for tests again

* Add missing dep for CI

* Add archs to buildJobs

* Fix CI error.

* Test

* Test job target

* Adding job target to hipblaslt dependant builds

* Check devices on machine

* Add gpu to pipeline

* Add more gpu targets

* test

* Add test job to origami

* Update test jobs

* Finding test dir

* Fix sparse checkout

* Find build dir

* Try to find build dir

* Clean up

* Test

* Change test dir

* Build origami in test job

* Try removing job.target from params

* Package bindings in build artifacts

* Download build as artifact.

* Comment out block

* Fix checkout in test job

* Test1

* Echo to list dir

* Sparse checkout origami/python

* Download python bindings as artifact

* Try ctest instead of running test files directly

* Only download artifacts for ubuntu

* Add missing cd

* Run individual tests not ctest.

* Fix hipblaslt build failures

* Resolve more ci failures in hipblaslt

* Add old changes back in

* Fix hipblaslt ci errors

* Clean up

* Add nanobind to array

* Add nanobind to array correctly

* Remove nanobind install script

* Quick fix

* Add pip module installs to test job

---------

Co-authored-by: Daniel Su <danielsu@amd.com>
2025-09-09 15:13:54 -06:00
amd-hsivasun
985786e98d Add sqlalchemy to dependencies in rocprofiler-compute 2025-09-09 15:27:56 -04:00
amd-hsivasun
f25e27acf0 Update roctracer pipeline ID and branch 2025-09-09 14:13:56 -04:00
Pratik Basyal
519364179c Mono repo highlight and known issues feedback added (#532)
* Mono repo highlight added

* Leo's feedback incorporated

* Minor wording change

* Randy's feedback incorp

* Update for upcoming change

* Minor feedback added

* Ram's feedback incorporated

* Reworded for clarity

* Minor update

* Minor update
2025-09-09 11:40:26 -04:00
anisha-amd
db43d18c37 Docs: frameworks compatibility- ray and llama.cpp (#5273) 2025-09-09 11:02:30 -04:00
Peter Park
4f53183696 docs: Add JAX MaxText benchmark v25.7 (#5182)
* Update previous versions

* Add data file

* fix filename and anchors

* add templates

* update .wordlist.txt

* Update template and data

add missing step

fix fmt

* update template

* fix data

* add jax 0.6.0

* update history

* update quantized training note
2025-09-08 21:42:56 -04:00
Joseph Macaranas
94476f34ca [External CI] Add amdgpu deps to rocpydecode pipeline (#5267) 2025-09-08 11:32:10 -04:00
Peter Park
4bc1bf00c6 Update PyTorch training benchmark docker doc to 25.7 (#5255)
* Update PyTorch training benchmark docker doc to 25.7

* update .wordlist.txt

* update conf.py

* update data sheet

* fix sphinx warnings
2025-09-05 12:07:51 -04:00
Matt Williams
76fd6b2290 Updating broken link (#5258) 2025-09-05 11:45:06 -04:00
Joseph Macaranas
e5345a9cca External CI: rocdecode downstream builds (#5254)
- Trigger downstream build of rocpydecode within rocdecode pipelines.
- Copying similar variables as other pipelines even though these projects are not in the super-repos.
2025-09-05 10:12:39 -04:00
Pratik Basyal
c2080a90c7 Changelog editorial fix ROCm 700 (#534)
* Changelog editorial fix

* Changelog synced
2025-09-05 09:07:51 -04:00
David Dixon
2f40189575 add catch2 (#5257) 2025-09-04 18:48:34 -06:00
David Dixon
9e1a82d327 Add libdivide (#5252) 2025-09-03 20:11:38 -06:00
Joseph Macaranas
3aab9e1bc5 Modify sparseCheckoutDirectories in checkout.yml (#5251)
Added 'shared' to sparseCheckoutDirectories parameter.
2025-09-03 16:58:17 -04:00
David Dixon
2b0ce5e5c2 Fix typo (#5250) 2025-09-03 13:59:41 -06:00
David Dixon
f1be2d291a Add fmtlib version that works with spdlog (#5249) 2025-09-03 13:26:18 -06:00
amd-hsivasun
07cb61f969 Update testjob dependsOn 2025-09-03 14:02:47 -04:00
amd-hsivasun
c486c39b50 Update rocprofiler-compute.yml
Reverted Component name and updated job names
2025-09-03 14:02:47 -04:00
amd-hsivasun
e68d9e9ce2 Update rocprofiler-compute.yml 2025-09-03 14:02:47 -04:00
amd-hsivasun
bff5c4a955 Fixed sparseCheckoutDir 2025-09-03 14:02:47 -04:00
amd-hsivasun
b0abc43c46 Added sparseCheckout to testjob template 2025-09-03 14:02:47 -04:00
amd-hsivasun
ceabccad83 Fixed componentName 2025-09-03 14:02:47 -04:00
amd-hsivasun
2628812fc4 [Ex CI] Enable rocprofiler-compute monorepo 2025-09-03 14:02:47 -04:00
amd-hsivasun
df3ea80290 Enable Roctracer Monorepo 2025-09-03 14:02:20 -04:00
David Dixon
b6647dfb22 Add spdlog source builds (#5247) 2025-09-03 11:35:53 -06:00
randyh62
08dad2dc41 Update RELEASE.md (#531)
Remove fine-grained system memory pool from HIP Highlights
2025-09-02 13:34:02 -07:00
David Dixon
c34fddb26a Add boost deps (#5235) 2025-09-02 13:28:19 -06:00
Pratik Basyal
b4c5980a96 Update to 7.0.0 RN and Compatibility matrix (#530)
* Fixes applied

* Tutorial HUB update added
2025-08-28 17:52:39 -04:00
Pratik Basyal
52ce201401 ROCm 7.0.0 Known issues [Batch2] (#529)
* Known issues added

* SME feedback added
2025-08-28 16:50:55 -04:00
Swati Rawat
505233473d Merge pull request #506 from SwRaw/swraw/docs
Create mi355-performance-counters.rst
2025-08-28 20:58:40 +05:30
Swati Rawat
4f4f4556a5 Merge branch 'develop' into swraw/docs 2025-08-28 20:48:33 +05:30
srawat
4f8426376b Update gpu-arch.md 2025-08-28 20:43:10 +05:30
Istvan Kiss
d476d09aff Update precision support page with missing libraries and RDNA2 and CDNA4 support 2025-08-28 17:09:34 +02:00
Adel Johar
04beef8773 Docs: Overhaul JAX compatibility page for ROCm 7.0 2025-08-28 17:08:27 +02:00
srawat
95d1752874 Update _toc.yml.in 2025-08-28 20:35:01 +05:30
srawat
eabf72c2db Update _toc.yml.in 2025-08-28 20:28:34 +05:30
Pratik Basyal
53bd9b5da4 Table loading and broken link fixed in 7.0.0 (#528)
* Indentation and formatting updated

* Table and broken link fixed

* Clang-ocl removed
2025-08-28 10:52:03 -04:00
Pratik Basyal
0665e73e2d 700 known Issues update [Batch1] (#527)
* Indentation and formatting updated

* Known issues added

* Known issues udpated

* Minor change

* Known issues updated

* KMD UMD udpate

* Updated known issues

* Additional text removed from known issues

* Oracle linux 10 removed
2025-08-28 09:50:57 -04:00
srawat
264d353071 Merge branch 'swraw/docs' of https://github.com/SwRaw/ROCm-internal into swraw/docs 2025-08-28 19:05:40 +05:30
srawat
d58e2b16db Update mi350-performance-counters.rst 2025-08-28 19:05:00 +05:30
Pratik Basyal
010a191938 700 RN update Batch 4 (#526)
* Indentation and formatting updated

* Resolved issue for kokkos option added

* Known issue for ROCr added

* 2nd known issue added

* Known issues updated

* adding 2 known issues

* Apply suggestions from code review

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Update RELEASE.md

* Known issues added

* Approved known issue added

* Component removed based on Leo's feedback

* Issue link added

---------

Co-authored-by: Matt Williams <Matt.Williams+amdeng@amd.com>
Co-authored-by: Matt Williams <matt.williams@amd.com>
2025-08-27 14:22:04 -04:00
Daniel Su
977e9c2295 [Ex CI] change hip-clr pipeline ID (#5230) 2025-08-27 13:06:08 -04:00
Daniel Su
eac9772fff [Ex CI] add temporary downstream path from rocBLAS to hipBLAS (#5184) 2025-08-27 13:05:51 -04:00
Daniel Su
151a4bd7bc [Ex CI] add retries to potentially flaky steps (#5175) 2025-08-27 13:05:26 -04:00
Daniel Su
9d28684161 [Ex CI] enable clr/hip/hipother monorepo builds (#5217) 2025-08-27 10:43:07 -04:00
randyh62
a7edb17538 Fix hip7 rn (#523)
* Update RELEASE.md

Update per LRT meeting notes

* Update RELEASE.md

move warpSize change as requested

* Update RELEASE.md

update warpSize change wording.

* Update RELEASE.md

* Update RELEASE.md

Why either?

* Update RELEASE.md

Add content from HIP 7 Changelog

* Update RELEASE.md

looks good

* Update RELEASE.md

Co-authored-by: Julia Jiang <56359287+jujiang-del@users.noreply.github.com>

---------

Co-authored-by: Julia Jiang <56359287+jujiang-del@users.noreply.github.com>
2025-08-26 16:02:49 -07:00
Braden Stefanuk
9ea9b33d14 [superbuild] Configure pipeline (#5221) 2025-08-26 15:12:19 -06:00
Pratik Basyal
59afdef1fb ONNX version 1.22.0 updated ROCm 7.0.0 (#524)
* Indentation and formatting updated

* ONNX v 1.22.0 udpated
2025-08-26 16:52:56 -04:00
Pratik Basyal
ea8ff1b17d UCC and UCX version and release notes update for 7.0.0 (#521)
* Indentation and formatting updated

* UCC and UCX version udpated

* ROCm bandwidth test update

* MI350 series info added

* Changelog update

* ROCm systems Profiler highlight updated

* Redundant removed, pulled out from HIP changelog

* Known issues to Compute profiler added

* ONNX compatibility updtaed

* ROCm COmpute Profiler highlight added

* RN update

* ROCm 700 stack image updated

* ROCM Compute and System highlight updated

* Deep learning frameworks added

* removed BF16 support for MIGraphX -- already in 6.4 release notes; removed FP4 MIGraphX support

* ROCm Compute profiler highlight updated

* Formatting update

* AI framework update

* ROCm Systems Profiler udpate

* removed mention of CentOS of CentOS

* ROCm Compute Profiler update

* Feedback changes

* leo's feedback incorporated

* ampersand

* Changelog synced

* Changelog synced

* RHEL 10 removed

* Rocky Linux updated

---------

Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
2025-08-26 16:34:27 -04:00
Swati Rawat
808a7709aa Merge branch 'develop' into swraw/docs 2025-08-26 20:32:46 +05:30
srawat
8cc17e307c review comments 2025-08-26 18:22:35 +05:30
srawat
7fd6146b16 Update mi355-performance-counters.rst 2025-08-22 23:16:18 +05:30
srawat
e839054e56 Update mi355-performance-counters.rst 2025-08-22 22:31:49 +05:30
Matt Williams
1d42f7cc62 Deep learning frameworks edits for scale (#5189)
* Deep learning frameworks edits for scale

Based on https://ontrack-internal.amd.com/browse/ROCDOC-1809

* update table

table

* leo comments

* formatting

* format

* update table based on feedback

* header

* Update machine learning page

* headers

* Apply suggestions from code review

Co-authored-by: anisha-amd <anisha.sankar@amd.com>

* Update .wordlist.txt

* formatting

* Update docs/how-to/deep-learning-rocm.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

---------

Co-authored-by: Matt Williams <Matt.Williams+amdeng@amd.com>
Co-authored-by: anisha-amd <anisha.sankar@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-08-22 11:46:07 -04:00
Pratik Basyal
78c4a4c12a Post RC4 700 RN update [Batch 3] (#520)
* Indentation and formatting updated

* OS support changes

* Historical compatibility updated

* Minor update
2025-08-22 11:30:37 -04:00
srawat
c587d75701 listing in TOC 2025-08-22 19:57:27 +05:30
srawat
a88151f505 Update mi355-performance-counters.rst 2025-08-22 14:59:59 +05:30
Peter Park
98029db4ee docs: Add Primus (Megatron) training Docker documentation (#5218) 2025-08-21 23:50:55 -04:00
Pratik Basyal
ff7d9eb17a Post RC4 7.0.0 release notes update [Batch 2] (#519)
* Indentation and formatting updated

* Compatibility updated

* OS support updated

* Changelog synced

* AMD SMI link updated

* Broken links fixed

* Changelog synced
2025-08-21 21:34:11 -04:00
Pratik Basyal
2ec8757ffa Post RC4 RN 700 update (#513)
* Indentation and formatting updated

* Rc4 compute profiler version update

* Editorial changes in changelog

* Changelog and compatibility matrix updated

* ROCProfiler-SDK highlight update

* az and ol added to wordlist

* updated with newer info fr from migraphx

* fixed a formatting error

* Release date updated

* ROCProfiler-SDK highlight updated

* Changelog update

* Changelog update

* Release notes feedback

* Release notes update

---------

Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
2025-08-21 18:51:57 -04:00
Matt Williams
28c3384433 Merge pull request #518 from ROCm/license-update
Updating license for AQLprofile
2025-08-21 18:04:45 -04:00
Matt Williams
91c26c502d Updating license for AQLprofile 2025-08-21 18:02:31 -04:00
Pratik Basyal
0ae99ea21e Indentation and formatting updated (#517) 2025-08-21 16:02:27 -04:00
Jeffrey Novotny
60571680b5 Second round of proofreading for components in 7.0 release notes (#514)
* Second round of proofreading for components

* Remove duplicate item

---------

Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-08-21 14:17:17 -04:00
Matt Williams
65ebbaa117 Merge pull request #5113 from ROCm/aqlprofile
AQLProfile component additions
2025-08-21 12:53:16 -04:00
yugang-amd
e24bd407c1 edit release notes (#516)
Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-08-21 11:58:26 -04:00
spolifroni-amd
19156cf2c6 adding roccv to rocm (#479)
* adding-roccv

* removed rocCV

---------

Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-08-21 11:30:12 -04:00
randyh62
0d5f17a58b Update RELEASE.md (#515)
* Update RELEASE.md

Add logical reduction changes to ROCm 7.0 Release Notes

* Update RELEASE.md

Added description of DebugFission option for llvm-project

* Update RELEASE.md

update definition of __builtin_amdgcn_is_invocable

* Update RELEASE.md

Removed Perl Scripts from HIPCC
2025-08-21 06:18:35 -07:00
Peter Park
6b93d7a75a Update amdsmi changelog for 7.0 (#510)
Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-08-20 15:29:20 -04:00
Pratik Basyal
acdb5c90a6 PRE RC4 7.0.0 RN Update (#507)
* Indentation and formatting updated

* Feedback changes and AQLprofiler addition

* AQL Profiler update

* MIgraphx changelog added

* Release highlight added

* Indentation fixed

* Highlights updated

* Highlights changes

* Leo quick review feedback added

* Leo's review feedback added

* Leo's feedback incorporated

* Consolidated changelog synced

* OS virtualization link updated

* ROCm Bandwidth test added

* Changelog.md sycned
2025-08-20 14:50:24 -04:00
randyh62
073ac54e47 Llvm rn update (#511)
* Update RELEASE.md

Added LLVM Release Notes content

* Update RELEASE.md

minor formatting edits

* Update RELEASE.md

updated CUDA version
2025-08-20 14:26:28 -04:00
Joseph Macaranas
3dfc0cdbf1 [External CI] Update CMake on MIOpen build pipeline (#5210) 2025-08-20 15:37:15 +00:00
Swati Rawat
d0377dd947 Merge branch 'develop' into swraw/docs 2025-08-20 18:56:46 +05:30
srawat
35ec186cd9 spellcheck 2025-08-20 17:19:28 +05:30
srawat
da340c3d05 spellcheck 2025-08-20 17:06:02 +05:30
randyh62
1d127d987b Update RELEASE.md (#508)
* Update RELEASE.md

Added ROCR Runtime

* Update RELEASE.md

Removed Resolved Issue from HIP

* Update RELEASE.md

fix a few bad words
2025-08-19 12:51:09 -07:00
Daniel Su
00b0d9430e [Ex CI] change rocprofiler's branch to develop (#5208) 2025-08-19 15:44:07 -04:00
Daniel Su
14acec6000 [Ex CI] switch rocprofiler pipeline ID (#5207) 2025-08-19 15:22:02 -04:00
randyh62
71bc63d2d8 Update RELEASE.md (#505)
* Update RELEASE.md

Updated with Changelog info from Julia

* Update RELEASE.md

* Update RELEASE.md

* Update RELEASE.md
2025-08-19 10:53:36 -07:00
srawat
7b087769a2 Create mi355-performance-counters.rst 2025-08-19 20:40:28 +05:30
Pratik Basyal
08d0840b69 Post RC3 7.0.0 RN update (#501)
* Indentation and formatting updated

* AMD SMI changelog update

* Changelog update

* Compute and Systems profiler changelog added

* Highlight added

* AMD SMI link added

* Changelog updated

* Refernece link updated

* ROCal changelog added

* rocJpeg added

* Minor change

* version update

* rocpydecode added

* Changelog.md updated

* Heading level error fixed

* Feedback from Jeff incorporated

* Title formatting updated

* Changelog updated

* Changelog updated

* Changelog updates

* HIPCC perl script removed

* TOC for internal purpose updated

* ROCgdb api and ROCdbg added

* Changelog udpate

* Sandra's feedback added
2025-08-18 14:03:43 -04:00
Peter Park
c154b7e0a3 Fix documented VRAM for Radeon AI Pro R9700 (#5203) 2025-08-18 10:00:10 -04:00
Istvan Kiss
ae734e7846 Add MI350X and MI355X to atomics operation page (#497)
Add MI350X and MI355X to atomics operation page
2025-08-18 15:37:19 +02:00
David Dixon
9f5cd4500c Don't use local tensilelite (#5201) 2025-08-18 06:19:27 -06:00
Jan Stephan
51e7d9550f Make documentation build platform-independent (#5052)
Make documentation build platform-independent
2025-08-18 10:59:31 +02:00
Peter Park
55d0a88ec5 vLLM inference benchmark doc: add missing data field (#5199) 2025-08-15 13:20:39 -04:00
Pratik Basyal
67f988f58b 7.0.0 release changes to ROCm documentation (#483)
* Update RELEASE.md (#481)

Update HIP 7.0 Release Notes

* Initial 7.0.0 related changes

* Update RELEASE.md

Add Release Notes entry for `__reduce_XXX_sync` functions in HIP.

* Update RELEASE.md

Add HIP 7 API changes to Release Highlights

* Update RELEASE.md

Corect link for HIP 7 changes

* Update RELEASE.md

Update Release Highlights note for HIP 7 changes

* Changelog entry updated post RC2

* 642 GA manifest added

* 6.4.3 GA manifest added

* 7.0.0 RC1 manifest added

* added rocCV (#490)

Co-authored-by: Pratik Basyal <prbasyal@amd.com>

* 7.0.0 RC2 manifest added

* Documentation updated added

* Highlight for 7.0.0 added

* Highlight updated

* Highlights update

* removed rocCV (#499)

Co-authored-by: Pratik Basyal <prbasyal@amd.com>

* Version udpate

* Version table update

* Installer udpate added

* Table updated

---------

Co-authored-by: randyh62 <42045079+randyh62@users.noreply.github.com>
Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
2025-08-15 13:17:41 -04:00
Peter Park
7ee22790ce docs: Update vLLM benchmark doc for 20250812 Docker release (#5196) 2025-08-14 15:43:36 -04:00
Daniel Su
ec05312de7 [Ex CI] enable rocprofiler monorepo (#5197)
* [Ex CI] enable rocprofiler monorepo

* set ROCM_PATH
2025-08-14 14:31:34 -04:00
amd-hsivasun
39e7ccd3c5 Update variables-global.yml 2025-08-13 17:27:05 -04:00
dependabot[bot]
c4135ab541 Bump sphinx-sitemap from 2.7.2 to 2.8.0 in /docs/sphinx (#5192)
Bumps [sphinx-sitemap](https://github.com/jdillard/sphinx-sitemap) from 2.7.2 to 2.8.0.
- [Release notes](https://github.com/jdillard/sphinx-sitemap/releases)
- [Changelog](https://github.com/jdillard/sphinx-sitemap/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jdillard/sphinx-sitemap/compare/v2.7.2...v2.8.0)

---
updated-dependencies:
- dependency-name: sphinx-sitemap
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-13 09:22:31 -06:00
anisha-amd
dd56fd4d3a develop: compatibility matrix frameworks support update (#5185) 2025-08-12 14:25:37 -04:00
Peter Park
80f7dc79b9 Add Hunyuan Video to PyTorch inference benchmark models doc (#5094) 2025-08-12 11:54:59 -04:00
David Dixon
231aa0bfc6 Merge pull request #5120 from ROCm/users/ellosel/hipblaslt-lapack-deps
Add deps and config options for new hipblaslt build system
2025-08-11 13:32:09 -06:00
Joseph Macaranas
8655fb369a [External CI] Full checkout of rocm-libraries for hipsparselt pipeline (#5178) 2025-08-11 10:31:40 -04:00
Dominic Widdows
306b39ea5e Merge pull request #5174 from ROCm/dwiddows-patch-1
Fix hyperlink syntax
2025-08-08 11:23:09 -07:00
Dominic Widdows
9e055d92ce Fix hyperlink syntax 2025-08-08 10:28:09 -07:00
Daniel Su
85b13c0513 [Ex CI] temporarily disable high pool (#5173) 2025-08-08 11:10:04 -04:00
pbhandar-amd
dba913095a Merge pull request #5168 from ROCm/amd/pbhandar/manifest_700
Update XML for 6.4.3
2025-08-08 10:51:03 -04:00
Daniel Su
81b9d50c2c [Ex CI] retry MIOpen CK download if unzip fails (#5163) 2025-08-08 10:37:05 -04:00
David Dixon
e9bb2fca36 Remove build dir artifact creation 2025-08-08 14:26:12 +00:00
David Dixon
16e96caf80 Restore commented code 2025-08-08 14:26:12 +00:00
David Dixon
7e0efaa6b0 build all kernels 2025-08-08 14:25:43 +00:00
Daniel Su
af4f291005 Compress and upload build files 2025-08-08 14:25:43 +00:00
David Dixon
b9218832bc Update hipBLASLt.yml 2025-08-08 14:25:43 +00:00
David Dixon
3f2c1d65eb only run one test 2025-08-08 14:25:43 +00:00
David Dixon
ee4287fdd7 parallellize lapack build 2025-08-08 14:25:43 +00:00
David Dixon
d63db0be41 debug commit 2025-08-08 14:25:43 +00:00
David Dixon
6a37323fe7 Enable rocroller and use fetch content 2025-08-08 14:24:44 +00:00
David Dixon
b6b7b32e6d Disable blis for new build system 2025-08-08 14:22:13 +00:00
David Dixon
7c11126938 Fix pip args 2025-08-08 14:22:13 +00:00
David Dixon
ac0b72497e add python deps for hipblaslt 2025-08-08 14:22:13 +00:00
David Dixon
68bc7f83da Need both target options while transitioning between build systems 2025-08-08 14:22:13 +00:00
David Dixon
5bbe8ecdcc add deps install back 2025-08-08 14:22:13 +00:00
Daniel Su
6bc408d051 Change to GPU_TARGETS 2025-08-08 14:22:13 +00:00
Daniel Su
20762b9a96 Add blas and lapack to dnf map 2025-08-08 14:22:13 +00:00
David Dixon
fa5395a1a6 Drop lapack install script 2025-08-08 14:22:13 +00:00
Joseph Macaranas
254d863b91 External CI: Temporary Pipeline Change for CMake Refactor (#5166)
- Disable gfx1030 builds temporarily for blas, sparse, and solvers.
- TODO: gfx1030 build path should have separate build flags to use rocblas path.
2025-08-08 10:14:28 -04:00
Parag Bhandari
03bf20e614 Update XML for 6.4.3 2025-08-08 09:10:42 -04:00
Pratik Basyal
af48464844 6.4.3 version updated (#492) 2025-08-08 08:45:39 -04:00
pbhandar-amd
5b724a3780 Merge pull request #5167 syncing internal develop into external for ROCm 7.0
Syncing internal develop into external for ROCm 7.0 release.
2025-08-08 07:17:50 -04:00
Parag Bhandari
ffd5575cd9 Merge branch 'develop-internal' into amd/pbhandar/internal_to_external_700 2025-08-08 05:35:20 -04:00
pbhandar-amd
cfb7bd1883 Update versions.md 2025-08-07 16:36:12 -04:00
pbhandar-amd
ae7b791b22 Update versions.md 2025-08-07 16:34:26 -04:00
Daniel Su
3573239728 [Ex CI] update rocprofiler-register branch name (#5162) 2025-08-07 11:46:44 -04:00
Daniel Su
ec566f9623 [Ex CI] update rocprofiler-register pipeline ID to monorepo (#5158) 2025-08-07 10:35:14 -04:00
Pratik Basyal
30a862c4b9 PRE GA links reset to public (#491) 2025-08-07 10:23:34 -04:00
Parag Bhandari
3d3cfae976 Merge branch 'develop' into develop-internal 2025-08-07 09:42:50 -04:00
Daniel Su
14f5316ade [Ex CI] enable rocprofiler-register monorepo builds (#5155) 2025-08-06 13:44:55 -04:00
Pratik Basyal
00d814ccbf ROCm SMI 7.7.0 update included in 6.4.3 (#488)
* ROCm SMI 7.7.0 update included

* Feedback incorporated

* Review feedback added
2025-08-06 13:26:59 -04:00
Parag Bhandari
948a6a469b Merge branch 'develop' into develop-internal 2025-08-06 12:00:31 -04:00
Dominic Widdows
698d7f1d58 Updating old link that has been changed (#5149) 2025-08-05 15:23:55 -04:00
Dominic Widdows
9ab5dcfa59 Remove reference to build instructions that were moved 2025-08-05 15:22:32 -04:00
Pratik Basyal
8ba712bff3 Ram's review feedback incorporated (#487) 2025-08-05 11:12:35 -04:00
Daniel Su
e91e712888 [Ex CI] make MIOpen CK script no longer partially succeed (#5141) 2025-08-02 14:42:12 -04:00
Joseph Macaranas
8f1b075a79 [External CI] Disable downstream solver builds (#5150)
- Disable while migration to monorepo is postponed.
2025-08-02 14:41:27 -04:00
Pratik Basyal
f0cc7c573d No changes related updated added (#486) 2025-08-01 14:38:14 -04:00
Pratik Basyal
b271c9af9d 6.4.3 Release changes to ROCm documentation (#482)
* Initial changes to 6.4.3 added

* Additional changes to RN

* Deep learning framework updated added

* Tutorials for AI dev added

* Install on linux toc pointed to internal

* 6.4.3 compatibility table updated

* Datatype support docs improvement added

* Manifest 642 GA added

* 643 RC1 manifest added

* 6.4.2 version table added

* 6.4.3 version table added

* Leo's feedback incorporated

* Deeplearning framework support synced

* Historical Compatibility matrix updated

* Release highlight added

* DGL compatibility updated
2025-08-01 14:21:05 -04:00
Daniel Su
885ab8438a [Ex CI] reduce pipeline size (#5140)
* new fft miopen pipeline ids
* remove all references to mainline builds
2025-08-01 11:54:59 -04:00
anisha-amd
3837fe8440 Updates to the compatibility matrix with DGL fix (#5143) 2025-08-01 11:17:34 -04:00
anisha-amd
98530811b4 Update megablocks-compatibility.rst (#5136) 2025-07-31 13:30:39 -04:00
anisha-amd
266387d816 Docs: Adding frameworks compatibility for Megablocks and Taichi (#5133) 2025-07-31 13:00:31 -04:00
Daniel Su
2e93925311 [Ex CI] disable rocSPARSE to hipSOLVER downstream path (#5134) 2025-07-31 12:42:04 -04:00
Matt Williams
9786a75390 Update license 2025-07-31 10:33:36 -04:00
Daniel Su
88c2a2877b [Ex CI] enable hipSOLVER monorepo builds (#5119)
For ROCm/rocm-libraries#942

Enables hipSOLVER monorepo builds.

Enables downstream paths:
rocSOLVER -> hipSOLVER
rocSPARSE -> hipSOLVER

Sample runs:
hipSOLVER: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=40959&view=results
rocSOLVER: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=40948&view=results
rocSPARSE: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=40949&view=results
2025-07-31 10:31:55 -04:00
Daniel Su
85e0580b28 [Ex CI] enable FFT downstream jobs (#5126)
Monorepo support for FFTs was already implemented and trigger files already exist, so just need to enable their downstream jobs.

Enables downstream path:
hipRAND -> rocFFT -> hipFFT

Sample runs:
hipRAND: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=41270&view=results
rocFFT: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=41268&view=results
hipFFT: https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=41269&view=results
2025-07-31 10:31:35 -04:00
Peter Park
b61d6a021e Update PyT and TF Docker images in compatibility pages for 6.4.2 (#5129) 2025-07-31 09:55:46 -04:00
Istvan Kiss
fb30dafa29 Update precision support page part I. (#5127) 2025-07-31 15:22:19 +02:00
Joseph Macaranas
b2012cb0b9 External CI: rocm-libraries superbuild component yaml (#5125)
- Subset of the hipblaslt component yaml, deleting extra gpu targets and the testing component.
- Sparse checkout details removed.
- Basic build flags from top-level invocation added.
2025-07-30 17:50:46 -04:00
Daniel Su
45cf2b9a80 [Ex CI] rocprof-systems: add libsqlite3-dev (#5124)
Fixes rocprofiler-systems builds following ROCm/rocprofiler-systems@26ae543

Sample build:
https://dev.azure.com/ROCm-CI/ROCm-CI/_build/results?buildId=41257&view=results
2025-07-30 16:05:26 -04:00
Daniel Su
bee363995b [Ex CI] revert miopen-get-ck script change (#5123) 2025-07-30 12:03:51 -07:00
Matt Williams
95543cae2a Final edits 2025-07-30 14:43:52 -04:00
Daniel Su
3a031fad3a [Ex CI] disable MIOpen downstream jobs (#5122) 2025-07-30 13:12:11 -04:00
Daniel Su
46f6c4ff9a [Ex CI] enable MIOpen monorepo (#5117)
* init

* fix source dir

* miopen specify test build dir

* fix test build dir

* revert change

* fix test build again

* move to ultra temporarily

* miopen-get-ck, working dir

* exclude flaky test

* move back to high

* Add MIVisionX and AMDMIGraphX downstream jobs to MIOpen

* comment sparsecheckoutdir

* quote component names

* fix artifact name

* miopen ck script exit on fail

* add downstream checkout repos

* mivisionx, add aomp
2025-07-30 09:53:52 -07:00
Pratik Basyal
f632f2879f ROCm Software Stack image for 6.4.0 updated (#5112) 2025-07-28 14:51:19 -04:00
Matt Williams
1cf3eef9da AQLProfile component additions 2025-07-28 14:39:39 -04:00
yugang-amd
cc5bc5a882 Add SGLang inference benchmark doc w/ initial support for DeepSeek-R1-Distill-Qwen-32B (#4870) 2025-07-25 12:42:40 -04:00
Daniel Su
2c9c3d0ba1 [Ex CI] switch hipBLAS/SPARSE pipeline IDs to monorepo (#5098) 2025-07-24 16:53:29 -04:00
Peter Park
14249f24d8 Use madengine instead of tools/run_models.py in docs (#5095) 2025-07-24 15:38:12 -04:00
Daniel Su
0e8045cca7 [Ex CI] enable hipBLAS monorepo (#5090) 2025-07-24 12:37:34 -04:00
Daniel Su
541fe92947 [Ex CI] update to 6.4.2 (#5087) 2025-07-23 14:10:40 -04:00
Daniel Su
628d5f8a19 [Ex CI] create Docker images for nightly builds (#5005) 2025-07-23 12:16:11 -04:00
Peter Park
984a91f008 Add DeepSeek Janus Pro 7B to PyTorch inference benchmark doc (#5071)
---------

Co-authored-by: yugang-amd <yugang.wang@amd.com>
2025-07-22 16:26:06 -04:00
amd-hsivasun
ae2cc6ab38 [EX CI] ROCR-Runtime: migrate from rocm-smi to amd-smi (#5088)
* Update ROCR-Runtime.yml

Migrate from rocmsmi to amdsmi

* Update ROCR-Runtime.yml

Removed libhwloc.so.5 install

* Update ROCR-Runtime.yml

Link to hwloc.so.5

* Update ROCR-Runtime.yml

Added link in the rocrtst step

* Update ROCR-Runtime.yml
2025-07-22 14:17:53 -04:00
Peter Park
15ee605d18 Fix branches for install docs in _toc.yml.in (#5083) 2025-07-22 11:03:40 -04:00
anisha-amd
ae54add299 Sphinx warning for ROCm fixed (#5077) (#5082)
* Sphinx warning for DGL fixed

* Update dgl-compatibility.rst

removed benchmark line and updated link

---------

Co-authored-by: Pratik Basyal <prbasyal@amd.com>
2025-07-22 10:51:15 -04:00
Peter Park
2269e9d25d Remove broken link to deprecated AMDGPU installer documentation (#5078)
* remove link to deprecated AMDGPU installation method

* add deep learning frameworks
2025-07-21 19:36:20 -04:00
alexxu-amd
1b0b9f5a67 update xml for 6.4.2 (#5075) 2025-07-21 17:22:12 -04:00
Pratik Basyal
49548ada2e Date updated for GA (#5073) 2025-07-21 16:52:44 -04:00
alexxu-amd
aa5ddfb483 Merge pull request #5072 from ROCm/sync-develop-from-internal
Sync develop from internal
2025-07-21 15:50:27 -04:00
Pratik Basyal
34bffcb8ac Internal Link reverted to public for 6.4.2 GA (#477)
* Link reveted for GA

* Reduntant footnote removed
2025-07-21 15:35:52 -04:00
alexxu-amd
efc302ca83 Merge pull request #476 from ROCm/sync-develop-from-external
Sync develop from external
2025-07-21 15:09:42 -04:00
alexxu-amd
33c2a9fa89 Merge branch 'develop' into sync-develop-from-external 2025-07-21 15:03:20 -04:00
Alex Xu
aa6f40e2e0 Merge remote-tracking branch 'external/develop' into sync-develop-from-external 2025-07-21 14:55:59 -04:00
Pratik Basyal
977c74fe71 Deep learning framework doc highlight update to RN 6.4.2 (#474)
* HIP 7.0 upcoming changes blog link updated

* Documentation highlight for deep learning framework added

* Note loading fixed

* Note removed

* Link fixed
2025-07-21 14:17:10 -04:00
alexxu-amd
2bbcfc8f92 Update versions.md (#475) 2025-07-21 12:44:58 -04:00
Peter Park
5bcf3b0847 Update Megatron-LM training benchmark doc for v25.6 release (#5064) 2025-07-18 15:57:25 -04:00
Peter Park
7e7e15a201 Fix path to data file in vllm-0.9.1-20250702.rst (#5066) 2025-07-18 14:16:05 -04:00
Pratik Basyal
50718c9dc0 SLES 15 SP 7 note removed from Compatibility matrix (#472)
* HIP 7.0 upcoming changes blog link updated

* SLES 15 SP 7 note removed from compatibility matrix
2025-07-18 10:37:34 -04:00
Peter Park
b437a625b3 Update vLLM inference benchmark doc for 0715 release (#5058) 2025-07-17 15:00:02 -04:00
Daniel Su
09460f7332 [Ex CI] re-enable rocm-examples rocfft_callback (#5062) 2025-07-17 13:59:34 -04:00
spolifroni-amd
0d3b19b3cc added dgl and megatron to csv (#5057) 2025-07-16 15:28:08 -04:00
spolifroni-amd
703e253db5 minor link and comp matrix fixes (#5056) 2025-07-16 14:32:47 -04:00
Daniel Su
ec9b9cad17 [Ex CI] disable checkout in roc/hipSPARSE test jobs (#5046)
* [Ex CI] disable checkout in roc/hipSPARSE test jobs

* rocsparse 2 hour timeout
2025-07-16 10:46:13 -04:00
Daniel Su
20ff132b9b [Ex CI] migrate rocSPARSE, hipSPARSELt pipeline IDs (#5045) 2025-07-16 10:46:07 -04:00
Jan Stephan
3c71bb25e8 Make initial directory and copy operations platform-independent 2025-07-16 15:13:13 +02:00
Jan Stephan
16f707d6c4 Merge pull request #5001 from j-stephan/fix-doc-warnings
Fix doc warnings
2025-07-16 07:10:54 -04:00
Jeffrey Novotny
b431415ade Merge Verl, DGL, Megatron changes. (#5047)
* Verl compatibility

* verl compatibility

* add Supported features

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* updated and edited verl compat doc

* added links to verl

* add future release for sglang and megatron inference eng.

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* fix lint

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* fixed a typo and a table

* Spolifroni amd/add to compat matrix (#430)

* added verl to compatibility matrix

* small change

* fixed an error in csv

* edited the verl compat based on leo's recommendations

* updated compat matrix (#435)

* Added a hardcoded link to the verl install

This is a link to an RTD build and MUST be removed before publishing.

* Update verl-compatibility.rst

* Added a hardcoded link to the verl install

This link is to an RTD build and it WILL break at publishing. It MUST be changed before publishing.

* Added version support note (#448)

* small fixes

* Update verl-compatibility.rst

* Update verl-compatibility.rst

---------

Signed-off-by: Vicky Tsang <vtsang@amd.com>
Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
Co-authored-by: anisha-amd <anisha.sankar@amd.com>
(cherry picked from commit f9bd22626b)

* Stanford Megatron-LM Compatibility

* Create stanford-megatron-lm-compatibility.rst

* toc and wordlist

* Update deep-learning-rocm.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* fixes and adding to main compat matrix

* formatting fix

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
(cherry picked from commit f4f096b44e)

* Framework: DGL Compatability

* Introducing new file for DGL Compatability

* Update dgl-compatibility.rst

* Update .wordlist.txt

* Update .wordlist.txt

* Update deep-learning-rocm.rst

* compatibility fixes

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* additions to use-cases and system support

* wording and fixes

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* remove table heading

* Update compatibility-matrix-historical-6.0.csv

---------

Co-authored-by: anisha-amd <anisha.sankar@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
(cherry picked from commit 2a7554c0b9)

* Manually resolve merge conflict

* Further merge conflict adjustments

---------

Signed-off-by: Vicky Tsang <vtsang@amd.com>
Co-authored-by: vickytsang <vtsang@amd.com>
Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
Co-authored-by: anisha-amd <anisha.sankar@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
Co-authored-by: Mukhil M S <167260682+mukh1l@users.noreply.github.com>
2025-07-15 18:57:31 -04:00
vickytsang
f9bd22626b Verl compatibility
* verl compatibility

* add Supported features

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* updated and edited verl compat doc

* added links to verl

* add future release for sglang and megatron inference eng.

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* fix lint

Signed-off-by: Vicky Tsang <vtsang@amd.com>

* fixed a typo and a table

* Spolifroni amd/add to compat matrix (#430)

* added verl to compatibility matrix

* small change

* fixed an error in csv

* edited the verl compat based on leo's recommendations

* updated compat matrix (#435)

* Added a hardcoded link to the verl install

This is a link to an RTD build and MUST be removed before publishing.

* Update verl-compatibility.rst

* Added a hardcoded link to the verl install

This link is to an RTD build and it WILL break at publishing. It MUST be changed before publishing.

* Added version support note (#448)

* small fixes

* Update verl-compatibility.rst

* Update verl-compatibility.rst

---------

Signed-off-by: Vicky Tsang <vtsang@amd.com>
Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
Co-authored-by: anisha-amd <anisha.sankar@amd.com>
2025-07-15 16:39:31 -04:00
anisha-amd
f4f096b44e Stanford Megatron-LM Compatibility
* Create stanford-megatron-lm-compatibility.rst

* toc and wordlist

* Update deep-learning-rocm.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* fixes and adding to main compat matrix

* formatting fix

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/stanford-megatron-lm-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

* Update stanford-megatron-lm-compatibility.rst

---------

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-07-15 16:23:50 -04:00
Mukhil M S
2a7554c0b9 Framework: DGL Compatability
* Introducing new file for DGL Compatability

* Update dgl-compatibility.rst

* Update .wordlist.txt

* Update .wordlist.txt

* Update deep-learning-rocm.rst

* compatibility fixes

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update docs/compatibility/ml-compatibility/dgl-compatibility.rst

Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* additions to use-cases and system support

* wording and fixes

* Update dgl-compatibility.rst

* Update dgl-compatibility.rst

* remove table heading

* Update compatibility-matrix-historical-6.0.csv

---------

Co-authored-by: anisha-amd <anisha.sankar@amd.com>
Co-authored-by: Leo Paoletti <164940351+lpaoletti@users.noreply.github.com>
2025-07-15 16:17:58 -04:00
Daniel Su
505698ed3f [Ex CI] enable roc/hipSPARSE monorepo (#5042) 2025-07-15 13:49:57 -04:00
Peter Park
548d31f990 fix broken image in megatron-lm-v24.12-dev.rst (#5043) 2025-07-15 10:57:12 -04:00
Pratik Basyal
b48abafd9b Radeon RX 7700 XT added to 6.4.2 RN and compatibility matrix (#467)
* HIP 7.0 upcoming changes blog link updated

* Radeon RX 7700 XT added to release notes, compatibility matrix

* Changelog synced

* Footnote update
2025-07-14 16:43:50 -04:00
Daniel Su
32f79a966b [Ex CI] fix MIOpen CK script again (#5034) 2025-07-14 14:18:24 -04:00
Daniel Su
393df3e05c [Ex CI] hipSPARSELt monorepo enablement (#5033) 2025-07-11 16:40:18 -04:00
randyh62
fcea6ded85 Update RELEASE.md (#462)
Add latest HIP content for 6.4.2
2025-07-11 08:56:20 -07:00
Pratik Basyal
f2f7e36503 6.4.2 Release notes updates post RC4 [Batch1] (#463)
* HIP 7.0 upcoming changes blog link updated

* Changes to AMDGPU and rocPRIM update

* formating change

* Changelog update
2025-07-11 08:36:37 -04:00
Daniel Su
aa3cdcb3c3 [Ex CI] increase hipSPARSELt test timeout (#5028) 2025-07-10 12:04:06 -04:00
Pratik Basyal
e8bb027c20 HIP 7.0 upcoming changes blog link updated (#5021) 2025-07-10 09:53:44 -04:00
Pratik Basyal
e2e67f57e7 HIP 7.0 upcoming changes blog link updated (#461) 2025-07-10 09:53:34 -04:00
Pratik Basyal
544186aef8 ROCm for HPC table update for Develop (#5015) (#5016) (#5019)
* ROCm for HPC table update for 6.4.0 (#5015) (#5016)

* 6.4.0 updates synced

* Minor change

* Link update
2025-07-09 14:57:53 -04:00
Pratik Basyal
be2bc2142b ROCm for HPC table update for 6.4.2 (#5015) (#5016) (#459)
* ROCm for HPC table update for 6.4.0 (#5015) (#5016)

* 6.4.0 updates synced

* Minor change

* Link update
2025-07-09 14:56:18 -04:00
Peter Park
22524eeaa5 fix xrefs in vllm-0.9.0.1-20250605.rst (#5017) 2025-07-09 14:38:24 -04:00
Peter Park
d471b04cd5 Update vLLM Docker doc for 07/02 2025-07-09 11:38:27 -04:00
Di Nguyen
1c7cff8a47 Merge pull request #5011 from ROCm/zenguyen/disable-device-merge-inplace-rocprim
[rocPRIM] Disable device_merge_inplace unit test for rocPRIM
2025-07-09 09:12:08 -06:00
Daniel Su
84c664074f [Ex CI] add OS to copyHIP filenames (#5012) 2025-07-09 10:37:23 -04:00
Pratik Basyal
08b39b61b1 Post RC3 6.4.2 Release notes updates [Batch 1] (#447)
* RC3 manifest.xml added

* Warpsize reference added

* SLES15 SP7 support added

* Consolidated changelog synced

* Footnote order updated

* Footnote order

* Footnote reordered

* Leo's feedback incorporated

* SLES 15 SP7 support added to runfile

* Wording update for SLES 15 support in Runfile installer

* AMD SMI CPER known issues added

* Known issues removed post RC4

* Resolved issues added

* RC4 manifest added

* Compute Profiler highlight updated

* Changelog.md synced
2025-07-09 08:33:44 -04:00
NguyenNhuDi
7c6083d840 disabled device_merge_inplace 2025-07-08 14:08:53 -06:00
Daniel Su
94099b1398 [Ex CI] rocPyDecode: fix test running (#5002) 2025-07-08 14:32:30 -04:00
Peter Park
3b3fc4894b Fix xrefs and Sphinx warnings in documentation
Fix xrefs and Sphinx warnings in documentation
2025-07-08 13:22:53 -04:00
Daniel Su
8aba1d2318 [Ex CI] fix printed artifact download links (#4998) 2025-07-04 14:41:33 -04:00
Mirza Halilčević
e9e75cfc46 Merge pull request #4963 from ROCm/pybind11
Add pybind11 as a pip module requirement for azure
2025-07-04 13:35:24 +02:00
Peter Park
58b3ad0509 Fix Docker run commands in Megatron-LM Docker doc (#4996)
* fix megatron-lm docker run commands

* update --shm-size option
2025-07-02 14:19:27 -04:00
Daniel Su
523d8520f3 [Ex CI] rocBLAS: increase test timeout to 2 hours (#4995) 2025-07-02 12:16:50 -04:00
Peter Park
d0c8ba0805 Add Wan2.1 to PyTorch inference Docker documentation (#4984)
* add wan2.1 to pyt inference models

* update group name

* fix container tag

* fix group name

* change documented data type to bfloat16

* fix col width
2025-07-02 09:58:37 -04:00
ammallya
73de8a3e46 Removing failing checkout step 2025-07-01 11:25:17 -07:00
Daniel Su
1fc312f90f [Ex CI] fix hardcoded gfx in MIOpen CK script (#4993) 2025-06-30 15:34:54 -04:00
Daniel Su
fde2647ccd [Ex CI] migrate rocBLAS to monorepo (#4987) 2025-06-30 15:16:58 -04:00
Daniel Su
798c8debb5 [Ex CI] consolidate artifact extraction and deletion in deps-rocm (#4961) 2025-06-30 14:12:52 -04:00
dependabot[bot]
393ba600c2 Build(deps): Bump sphinx-sitemap from 2.6.0 to 2.7.2 in /docs/sphinx (#4985)
Bumps [sphinx-sitemap](https://github.com/jdillard/sphinx-sitemap) from 2.6.0 to 2.7.2.
- [Release notes](https://github.com/jdillard/sphinx-sitemap/releases)
- [Changelog](https://github.com/jdillard/sphinx-sitemap/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jdillard/sphinx-sitemap/compare/v2.6.0...v2.7.2)

---
updated-dependencies:
- dependency-name: sphinx-sitemap
  dependency-version: 2.7.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 09:33:28 -06:00
Daniel Su
c64c545b52 [Ex CI] hipBLASLt: build some archs on medium pool (#4986) 2025-06-30 11:32:35 -04:00
Daniel Su
76ee1d720f [Ex CI] rocAL: switch to medium pool (#4983) 2025-06-27 13:41:07 -04:00
Daniel Su
5adc040367 [Ex CI] migrate hipBLAS-common & hipBLASLt pipeline IDs (#4982) 2025-06-27 12:09:58 -04:00
Daniel Su
061da8f306 [Ex CI] enable almalinux8 and gfx1100 builds for hipBLASLt, rocBLAS, rocSOLVER (#4955) 2025-06-27 10:39:30 -04:00
Daniel Su
e26767bca6 [Ex CI] Tensile: add boost filesystem (#4980) 2025-06-27 10:38:31 -04:00
Daniel Su
7b6f1800d4 [Ex CI] fix miopen-get-ck for new artifact naming scheme (#4979) 2025-06-26 15:49:13 -04:00
Pratik Basyal
a6221937f2 KMD UMD support footnote update ROCm 640 (#4973) (#4976)
* KMD UMD support footnote update ROCm 640

* Histotical footnote
2025-06-26 15:34:21 -04:00
Daniel Su
ac2df2961d [Ex CI] add component name to artifact download filter (#4974) 2025-06-26 13:55:03 -04:00
alexxu-amd
dc0d89ff4f Merge pull request #451 from ROCm/sync-develop-from-external
Sync develop from external
2025-06-24 16:41:37 -04:00
Alex Xu
9812d8f745 Merge remote-tracking branch 'external/develop' into sync-develop-from-external 2025-06-24 15:45:03 -04:00
Mirza Halilcevic
9b102061f4 Add pybind11 as a pip module requirement for azure. 2025-06-24 08:06:52 -05:00
Daniel Su
f20e8dec8b [Ex CI] revert PRIM default branch to develop (#4960) 2025-06-23 16:35:02 -04:00
Daniel Su
10e9157f39 [Ex CI] allow rerun jobs to upload artifacts (#4959) 2025-06-23 15:37:52 -04:00
Daniel Su
a2ce6021cb [Ex CI] add more OSs to nightly build (#4958) 2025-06-23 15:13:11 -04:00
Peter Park
2196fc9a2f Fix pytorch training 25.6 doc (#4956)
* fix pytorch-training history

* fix pytorch-training

fix
2025-06-23 13:45:50 -04:00
Pratik Basyal
4342239006 Quick fix (#446) 2025-06-23 11:48:05 -04:00
Daniel Su
925689f89e [Ex CI] enable gfx1100 builds (#4954) 2025-06-23 11:26:35 -04:00
Pratik Basyal
151b9bb6d4 Review feedback to release notes post RC3 (#444)
* Review feedback to release notes

* AI tutorials addition listed in RN

* Resolved issue added

* Indentation fix

* OS support changes

* Minor fix

* SLES mention removed
2025-06-23 11:25:40 -04:00
randyh62
76549f97b9 Update RELEASE.md (#445)
Merge changes from updated Changelog
2025-06-23 11:02:50 -04:00
Peter Park
91a541f8b9 Update PyTorch training benchmark doc for v25.6 (#4950)
* update pytorch-training docker details

* add previous version

* add models data

* update models data id

* add models picker

* update data

* update fmt

fmt

* update data yaml

* update template

* update data

* fix

* fix vllm-0.6.4 broken link

* fix vllm history
2025-06-23 09:26:15 -04:00
Peter Park
34f8d57ece Organize version histories in ROCm for AI benchmark Docker docs (#4948)
* add vllm 0.8.3 20250415

update prev versions table

* add vllm previous versions page

* move index to vllm-history

* add standalone megatron-lm version history

* add pytorch training version history

* fix

* add vllm-0.4.3

* add vllm-0.6.4

* update vllm-history

* add vllm-0.7.3

* add vllm-0.6.6

* add notes

* fix vllm readme links

fix main page link

* add latest version to previous versions list

* add jax-maxtext history

* fix jax-maxtext history

* add pytorch-training history

* add link in jax-maxtext 25.4

* add megatron-lm history

* fix datatemplate path for vllm 0.8.3

* fix jax-maxtext history link

* update note about performance measurements

* add vllm 0.8.5_20250521 previous version

* consistency fixes
2025-06-20 15:01:38 -04:00
yugang-amd
55f95adc7c Update for vllm -06/10 (#4943) 2025-06-20 08:41:37 -04:00
Pratik Basyal
535ca32590 Updates to 6.4.2 release notes post RC2 review (#439)
* Updates to release notes

* AMDGPU refrence brokenlink fix

* Jeff's feedback incorporated

* Add AMD SMI changelog for 6.4.2

* add amd smi changelog

* Apply suggestions from code review

Co-authored-by: Pratik Basyal <prbasyal@amd.com>

---------

Co-authored-by: Pratik Basyal <prbasyal@amd.com>

* AMDGPU installer highlight

* AMDGPU installation removal highlight

* AMD SMI changelog synced with consolidated changelog

* AMDSMI v25.5.1 updated in compatibility table

* fix AMD SMI changelog formatting

* Quick update

* leo's feedback incorporated

* Update on ROCm Offline Installer

* AMDGOU installer link updated

* rocBLAS changes added

* Consolidated changelog synced

* Version update post RC3

* AMD SMI upcoming changes added

* Minor change

---------

Co-authored-by: Peter Park <peter.park@amd.com>
2025-06-19 13:59:01 -04:00
Daniel Su
e05b1702d8 [Ex CI] fix experimental HIP to CLR triggers (#4946) 2025-06-19 12:56:53 -04:00
Daniel Su
4179042cf7 [Ex CI] add multi-OS support to copyHIP (#4945) 2025-06-19 12:15:22 -04:00
dependabot[bot]
ae2de81b79 Build(deps): Bump urllib3 from 2.4.0 to 2.5.0 in /docs/sphinx (#4942)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.4.0...2.5.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.5.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-19 09:03:29 -06:00
yugang-amd
aa29e156a8 Remove xref to amdgpu-install (#442) 2025-06-18 14:49:35 -04:00
Daniel Su
efd6cec4a4 [Ex CI] disable downstream triggers for mathlibs not yet migrated (#4936) 2025-06-18 14:10:58 -04:00
Daniel Su
b65996587f [Ex CI] remove ALLOWED_PARTIAL_SUCCEED_BUILDS library variable (#4937) 2025-06-18 12:10:04 -04:00
yugang-amd
7b7eaf69f2 remove broken xref (#4939) 2025-06-18 10:15:53 -04:00
Istvan Kiss
666996ee2d Merge pull request #434 from ROCm/pytorch_6.4.1_comp
Docs: Pytorch compatibility page update
2025-06-18 13:21:04 +02:00
Adel Johar
51cb6461b5 Docs: Pytorch compatibility page update 2025-06-18 11:12:47 +02:00
Daniel Su
4cfc8ddad2 [Ex CI] MIVisionX: add hipBLASLt to build deps (#4931) 2025-06-17 13:40:35 -04:00
Daniel Su
97ebbb227d [Ex CI] rocprof-sdk: add cmake, libsqlite3-dev (#4935) 2025-06-17 13:40:15 -04:00
Daniel Su
8c6a1726fe [Ex CI] remove old aqlprofile param in Pytorch (#4927) 2025-06-16 15:17:23 -04:00
Daniel Su
2656143c9e [Ex CI] fix ROCm versions (#4930) 2025-06-16 11:42:51 -04:00
Daniel Su
7910841c94 [Ex CI] rccl: use vendored gtest, use GPU_TARGETS flag (#4929) 2025-06-16 11:35:20 -04:00
Daniel Su
30fec8f74a [Ex CI] update ROCm versioning (#4928) 2025-06-16 11:31:19 -04:00
Daniel Su
1923f801e0 [Ex CI] fix hipRAND multi-OS tests, Tensile sparse dir (#4923) 2025-06-13 16:21:13 -04:00
Peter Park
d69037bfcc Fix Sphinx issue in vllm-benchmark 0.8.5-20250513 previous version (#4924)
* fix sphinx issue in vllm-benchmark 0.8.5-20250513 previous version

* update article_info in conf.py

* update rocm/vllm
2025-06-13 15:03:51 -04:00
Daniel Su
7ac6aa4084 [Ex CI] add OS support to monorepo downstream triggers (#4920) 2025-06-13 12:26:05 -04:00
Daniel Su
14f3c42320 [Ex CI] Tensile almalinux8 builds (#4915) 2025-06-12 16:43:55 -04:00
Pratik Basyal
86efb8c0c7 6.4.2 post RC2 release notes review feedback incorporated (#437)
* Compatibility table update

* Quick updates

* HIP 7.0 change link reintroduced
2025-06-12 15:57:09 -04:00
Daniel Su
67be6f6249 [Ex CI] migrate roc/hipRAND pipelines, change migrated mathlibs's default branch to rocm-rel-7.0 (#4918)
* [Ex CI] migrate roc/hipRAND pipeline IDs to monorepo

* [Ex CI] change migrated mathlibs's default branch to rocm-rel-7.0
2025-06-12 15:39:41 -04:00
Pratik Basyal
5d594feeac Initial changes to 6.4.2 release notes, compatibility matrix, and changelog. (#427)
* Initial 6.4.2 changes to release notes

* 6.4.2 initial changes applied

* edited entry for rocPRIM

* Add HIP content for 6.4.2

* Release notes for 6.4.2 updated

* Conf.py updated

* Review and fixed issue updated

* RCCL changelog update

* Compatibility matrix updated

* Pointed to internal linux docs

* Histrorical changelog added

* Quick change on component table

* Changelog for Systems profiler updated

* Consolidated changelog synced

* ROCm validation suite changelog added

* Leo's feedback incoporated

* Highlights added

* Manifest added for comparision

* Manifest 642 RC1 added

* RC2 manifest added

* KMD/UMD footnote updated

* Minor changes

* Consolidated changelog synced

---------

Co-authored-by: spolifroni-amd <sandra.polifroni@amd.com>
Co-authored-by: randyh62 <42045079+randyh62@users.noreply.github.com>
2025-06-12 13:40:02 -04:00
powderluv
2502fc5bcf Update README.md to point to TheRock (#4907)
* Update README.md to point to TheRock

Point to TheRock build system to build ROCm

* Update README.md

---------

Co-authored-by: David Galiffi <dgaliffi@amd.com>
Co-authored-by: alexxu-amd <159800977+alexxu-amd@users.noreply.github.com>
2025-06-12 10:44:34 -04:00
Adel Johar
4a05e26a0e Merge pull request #433 from ROCm/jax_6.4.1_comp
Docs: Overhaul JAX compatibility page for 6.4.1
2025-06-12 16:23:41 +02:00
Adel Johar
c699aaf915 Docs: Overhaul JAX compatibility page 2025-06-12 14:35:30 +02:00
Pratik Basyal
61c6749a10 Link to 6.4.1 updated from internal to public (#4913) 2025-06-10 16:59:52 -04:00
Daniel Su
8e8104c811 [Ex CI] add new rocprof-compute pip packages (#4905) 2025-06-10 16:06:51 -04:00
Peter Park
cfb3504d77 Add Mochi Video to pytorch-inference-benchmark-models.yaml
Add Mochi Video to pytorch-inference-benchmark-models.yaml
2025-06-10 13:18:41 -04:00
Joseph Macaranas
3602bc5142 [External CI] Revert hip/clr workaround (#4908)
- Undo workaround for hip/clr.
- Build latest hip/clr and deal with fallout.
- Issues need to be caught and escalated.
2025-06-10 11:13:14 -04:00
Scott Todd
cf4a8ecf28 Advertise TheRock near the top of README.md. (#4906) 2025-06-09 20:20:55 -07:00
Daniel Su
a5aae151b7 [Ex CI] shard rocPRIM tests across 3 runners (#4895) 2025-06-09 15:52:35 -04:00
Alex Xu
685457834a upgrade rocm-docs-core to 1.20.1 2025-06-09 14:53:09 -04:00
Joseph Macaranas
1c715356b6 [External CI] More AlmaLinux 8 Pipelines (#4898)
Added AlmaLinux 8 Pipeline Support
- aomp
- HIPIFY
- rocDecode
- ROCgdb
- rocJPEG
- rocprofiler
- aqlprofile dependency template
- build autotools template
- download latest cmake template

Pipeline Changes
- More gfx build targets.
- Copying llvm-lit to the llvm-project published artifacts.
- HIPIFY now uses our built version of llvm-project for its pipeline.
- Disable testing in HIPIFY pipeline due to low value provided. Revisit in the future.
- aomp's ROCm dependency list reduced.
- aomp's openmp build had issues with ninja on AlmaLinux 8.
2025-06-09 14:16:59 -04:00
Joseph Macaranas
ca8df59ba8 [External CI] Fix pytorch nightly build errors (#4901)
- Add hipSPARSELt dependency.
- Add hipBLASLt test dependency for rocroller shared library.
- Update pip dependency versions.
- Install another typing_extensions at a specific folder for one of the builds we do not control to work.
- Wheel renaming no longer works, so we need to find another mechanism if we start doing builds for different branches and gfx architectures.
2025-06-09 13:15:41 -04:00
Joseph Macaranas
ad1ac5a4e8 [External CI] AlmaLinux 8 builds for more libraries (#4897)
- Fixed rocprim pipeline to not rebuild during install step.
- Updates to hipblas-common, hipcub, hiprand, and rocthrust pipelines to build on AlmaLinux8 and more gfx architectures.
- Include rocm-cmake dependency when CMake setup mentions it.
2025-06-09 10:35:52 -04:00
Daniel Su
e2d0f4a362 [Ex CI] delete unused global variables (#4896) 2025-06-09 10:30:17 -04:00
Daniel Su
f0bef19f15 Ex CI: roc/hipFFT downstream builds (#4840) 2025-06-06 15:20:46 -04:00
Ian Dass
204032493b [External CI] Ubuntu 24.04 job for llvm-project (#4893)
* [External CI] Ubuntu 24.04 job for llvm-project

* temporarily switch to using 'high' build pool while 'ultra' is  down

* switch almalinux8 to build on manylinux container

* add pool for alma8 container

* switch alma8 packag manager to apt

* Update llvm-project.yml

* switch back to dnf after resolved container init

---------

Co-authored-by: Joseph Macaranas <Joseph.Macaranas@amd.com>
2025-06-06 14:46:30 -04:00
Joseph Macaranas
934dd0892c [External CI] Unblock rocm-libraries progress by not building gfx11 rocprim (#4894) 2025-06-06 14:41:50 -04:00
305 changed files with 51289 additions and 8826 deletions

View File

@@ -1,42 +0,0 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
resources:
repositories:
- repository: aomp_repo
type: github
endpoint: ROCm
name: ROCm/aomp
ref: amd-mainline
- repository: aomp-extras_repo
type: github
endpoint: ROCm
name: ROCm/aomp-extras
ref: amd-mainline
- repository: flang_repo
type: github
endpoint: ROCm
name: ROCm/flang
ref: amd-mainline
- repository: llvm-project_repo
type: github
endpoint: ROCm
name: ROCm/llvm-project
ref: amd-mainline
pipelines:
- pipeline: rocr-runtime_pipeline
source: \ROCR-Runtime
trigger:
branches:
include:
- amd-mainline
# 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

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: AMDMIGraphX
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -93,7 +112,11 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: AMDMIGraphX_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -105,6 +128,9 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
parameters:
cmakeVersion: '3.28.6'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
@@ -121,12 +147,15 @@ jobs:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip -DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include -DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
@@ -146,12 +175,12 @@ jobs:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: AMDMIGraphX_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
dependsOn: AMDMIGraphX_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
eq(${{ parameters.aggregatePipeline }}, False) eq(${{ parameters.aggregatePipeline }}, False)
) )
variables: variables:
@@ -167,6 +196,9 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
parameters:
cmakeVersion: '3.28.6'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
@@ -183,6 +215,8 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: CMake@1 - task: CMake@1
displayName: MIGraphXTest CMake Flags displayName: MIGraphXTest CMake Flags
inputs: inputs:
@@ -190,6 +224,7 @@ jobs:
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip -DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
-DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include -DHALF_INCLUDE_DIR=$(Agent.BuildDirectory)/rocm/include
@@ -199,7 +234,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: AMDMIGraphX componentName: ${{ parameters.componentName }}
testExecutable: make testExecutable: make
testParameters: -j$(nproc) check testParameters: -j$(nproc) check
testPublishResults: false testPublishResults: false

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hip_clr_combined
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -15,6 +34,7 @@ parameters:
default: default:
- cmake - cmake
- libnuma-dev - libnuma-dev
- libsimde-dev
- mesa-common-dev - mesa-common-dev
- ninja-build - ninja-build
- ocl-icd-libopencl1 - ocl-icd-libopencl1
@@ -35,108 +55,24 @@ parameters:
type: object type: object
default: default:
- llvm-project - llvm-project
- name: repos - ROCR-Runtime
type: object
default:
cloneRepos:
- hip:
name: 'HIP'
url: 'https://github.com/ROCm/HIP.git'
commit: 'efee830'
- clr:
name: 'clr'
url: 'https://github.com/ROCm/clr.git'
commit: '78f3cab'
- hipother:
name: 'hipother'
url: 'https://github.com/ROCm/hipother.git'
commit: 'e0ff75f'
# 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
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs: buildJobs:
- { os: ubuntu2204, packageManager: apt } - { os: ubuntu2204, packageManager: apt, platform: amd }
- { os: almalinux8, packageManager: dnf } - { os: ubuntu2204, packageManager: apt, platform: nvidia }
- { os: almalinux8, packageManager: dnf, platform: amd }
- { os: almalinux8, packageManager: dnf, platform: nvidia }
# HIP with AMD backend
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hip_clr_combined_amd_${{ job.os }} - job: ${{ parameters.componentName }}_${{ job.os }}_${{ job.platform }}
pool: ${{ if parameters.buildDependsOn }}:
vmImage: 'ubuntu-22.04' dependsOn:
${{ if eq(job.os, 'almalinux8') }}: - ${{ each build in parameters.buildDependsOn }}:
container: - ${{ build }}_${{ job.os }}
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
variables:
- group: common
- template: /.azuredevops/variables-global.yml
workspace:
clean: all
steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }}
- checkout: none
- ${{ each repo in parameters.repos.cloneRepos }}:
- task: Bash@3
displayName: 'Clone ${{ repo.name }} @ ${{ repo.commit }}'
inputs:
targetType: inline
script: |
echo "Cloning ${{ repo.name }}..."
git clone ${{ repo.url }} ${{ repo.name }}
cd ${{ repo.name }}
git checkout ${{ repo.commit }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependenciesAMD }}
aggregatePipeline: ${{ parameters.aggregatePipeline }}
os: ${{ job.os }}
# compile clr
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
componentName: clr
cmakeBuildDir: '$(Build.SourcesDirectory)/clr/build'
cmakeSourceDir: '$(Build.SourcesDirectory)/clr'
os: ${{ job.os }}
useAmdclang: false
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
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
artifactName: amd
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
artifactName: amd
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters:
# aptPackages: ${{ parameters.aptPackages }}
# pipModules: ${{ parameters.pipModules }}
# environment: amd
# HIP with Nvidia backend
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hip_clr_combined_nvidia_${{ job.os }}
pool: pool:
vmImage: 'ubuntu-22.04' vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}: ${{ if eq(job.os, 'almalinux8') }}:
@@ -155,48 +91,45 @@ jobs:
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }} packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- checkout: none # full checkout of rocm-systems superrepo, we need clr, hip, and hipother
- ${{ each repo in parameters.repos.cloneRepos }}: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
- task: Bash@3 parameters:
displayName: 'Clone ${{ repo.name }} @ ${{ repo.commit }}' checkoutRepo: ${{ parameters.checkoutRepo }}
inputs: # sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
targetType: inline
script: |
echo "Cloning ${{ repo.name }}..."
git clone ${{ repo.url }} ${{ repo.name }}
cd ${{ repo.name }}
git checkout ${{ repo.commit }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependenciesNvidia }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
os: ${{ job.os }} os: ${{ job.os }}
- script: 'ls -1R $(Agent.BuildDirectory)/rocm' ${{ if eq(job.platform, 'amd') }}:
displayName: 'Artifact listing' dependencyList: ${{ parameters.rocmDependenciesAMD }}
# compile clr ${{ elseif eq(job.platform, 'nvidia') }}:
dependencyList: ${{ parameters.rocmDependenciesNvidia }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: clr componentName: clr
cmakeBuildDir: '$(Build.SourcesDirectory)/clr/build' cmakeBuildDir: $(Agent.BuildDirectory)/s/projects/clr/build
cmakeSourceDir: '$(Build.SourcesDirectory)/clr' cmakeSourceDir: $(Agent.BuildDirectory)/s/projects/clr
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
-DHIP_COMMON_DIR=$(Build.SourcesDirectory)/HIP -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DHIP_PLATFORM=nvidia -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DHIPCC_BIN_DIR=$(Agent.BuildDirectory)/rocm/bin -DHIPCC_BIN_DIR=$(Agent.BuildDirectory)/rocm/bin
-DHIP_COMMON_DIR=$(Agent.BuildDirectory)/s/projects/hip
-DHIPNV_DIR=$(Agent.BuildDirectory)/s/projects/hipother/hipnv
-DHIP_PLATFORM=${{ job.platform }}
-DCLR_BUILD_HIP=ON -DCLR_BUILD_HIP=ON
-DCLR_BUILD_OCL=OFF -DCLR_BUILD_OCL=ON
-DHIPNV_DIR=$(Build.SourcesDirectory)/hipother/hipnv
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
artifactName: ${{ job.platform }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
artifactName: nvidia artifactName: ${{ job.platform }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters:
# aptPackages: ${{ parameters.aptPackages }}
# pipModules: ${{ parameters.pipModules }}
# environment: nvidia

View File

@@ -1,4 +1,7 @@
parameters: parameters:
- name: componentName
type: string
default: HIPIFY
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
@@ -13,113 +16,140 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- cmake - cuda-toolkit-12-9
- ninja-build - libcudnn9-dev-cuda-12
- libnuma-dev - libnuma-dev
- mesa-common-dev
- ninja-build
- python-is-python3
- python3-dev - python3-dev
- python3-pip - python3-pip
- python-is-python3 - name: pipModules
- mesa-common-dev type: object
- ccache default:
- cuda-toolkit - lit
- cudnn - name: rocmDependencies
type: object
default:
- llvm-project
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx942 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a }
jobs: jobs:
- job: HIPIFY - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: ${{ parameters.componentName }}_build_${{ job.os }}
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: UPSTREAM_LLVM_GIT_URL - template: /.azuredevops/variables-global.yml
value: https://github.com/llvm/llvm-project.git pool:
- name: UPSTREAM_LLVM_TAG ${{ if eq(job.os, 'ubuntu2404') }}:
value: llvmorg-18.1.2 name: rocm-ci_medium_build_pool_2404
pool: ${{ variables.MEDIUM_BUILD_POOL }} ${{ else }}:
workspace: name: ${{ variables.MEDIUM_BUILD_POOL }}
clean: all ${{ if eq(job.os, 'almalinux8') }}:
steps: container:
- task: Bash@3 image: rocmexternalcicd.azurecr.io/manylinux228:latest
displayName: 'Register CUDA packages' endpoint: ContainerService3
inputs: workspace:
targetType: inline clean: all
script: | steps:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb - task: Bash@3
sudo dpkg -i cuda-keyring_1.1-1_all.deb displayName: 'Register CUDA packages'
sudo rm -f cuda-keyring_1.1-1_all.deb inputs:
sudo apt update targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: script: |
aptPackages: ${{ parameters.aptPackages }} wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml sudo dpkg -i cuda-keyring_1.1-1_all.deb
- task: Bash@3 sudo rm -f cuda-keyring_1.1-1_all.deb
displayName: git clone upstream llvm-project sudo apt update
inputs: ${{ if eq(job.os, 'almalinux8') }}:
targetType: inline script: |
script: git clone $(UPSTREAM_LLVM_GIT_URL) --depth=1 --branch $(UPSTREAM_LLVM_TAG) --recurse-submodules sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo
workingDirectory: $(Pipeline.Workspace) - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml parameters:
parameters: aptPackages: ${{ parameters.aptPackages }}
checkoutRepo: ${{ parameters.checkoutRepo }} pipModules: ${{ parameters.pipModules }}
- script: | packageManager: ${{ job.packageManager }}
mkdir -p $(CCACHE_DIR) - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
echo "##vso[task.prependpath]/usr/lib/ccache:/usr/local/cuda/bin" - task: Bash@3
displayName: Update path for cuda and ccache displayName: Add lit to PATH
- task: Cache@2 inputs:
displayName: Ccache caching targetType: inline
inputs: script: |
key: HIPIFY | $(Agent.OS) | "$(UPSTREAM_LLVM_TAG)" site_packages=$(python3 -m site --user-base)/bin
path: $(CCACHE_DIR) sudo ln -sf $site_packages/bin/lit $(Pipeline.Workspace)/llvm-lit
restoreKeys: HIPIFY | $(Agent.OS) echo "##vso[task.prependpath]$site_packages"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
componentName: upstream-llvm parameters:
cmakeBuildDir: $(Pipeline.Workspace)/llvm-project/llvm/build checkoutRepo: ${{ parameters.checkoutRepo }}
cmakeSourceDir: $(Pipeline.Workspace)/llvm-project/llvm - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
installDir: $(Pipeline.Workspace)/llvm parameters:
extraBuildFlags: >- checkoutRef: ${{ parameters.checkoutRef }}
-DCMAKE_BUILD_TYPE=Release dependencyList: ${{ parameters.rocmDependencies }}
-DLLVM_ENABLE_PROJECTS=clang os: ${{ job.os }}
-DLLVM_INCLUDE_TESTS=OFF aggregatePipeline: ${{ parameters.aggregatePipeline }}
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache # cutensor is not available from apt or dnf
-DCMAKE_C_COMPILER_LAUNCHER=ccache - task: Bash@3
-GNinja displayName: 'Download and install cutensor'
- task: Bash@3 inputs:
displayName: python install lit targetType: inline
inputs: script: |
targetType: inline wget -q --show-progress https://developer.download.nvidia.com/compute/cutensor/redist/libcutensor/linux-x86_64/libcutensor-linux-x86_64-2.2.0.0-archive.tar.xz
script: sudo python3 $(Pipeline.Workspace)/llvm-project/llvm/utils/lit/setup.py install tar -xvJf libcutensor-linux-x86_64-*.tar.xz
- task: Bash@3 mkdir -p $(Pipeline.Workspace)/cutensor
displayName: install FileCheck cp -r libcutensor-linux-x86_64-*/* $(Pipeline.Workspace)/cutensor/
inputs: - task: Bash@3
targetType: inline displayName: 'List downloaded CUDA files'
script: cp $(Pipeline.Workspace)/llvm-project/llvm/build/bin/FileCheck $(Pipeline.Workspace)/llvm/bin inputs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml targetType: inline
parameters: script: ls -la1R /usr/local/cuda-12.9
componentName: HIPIFY # script: cp $(Pipeline.Workspace)/llvm-project/llvm/build/bin/FileCheck $(Pipeline.Workspace)/llvm/bin
extraBuildFlags: >- - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-DHIPIFY_CLANG_TESTS=ON parameters:
-DCMAKE_BUILD_TYPE=Release componentName: ${{ parameters.componentName }}
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda/targets/x86_64-linux os: ${{ job.os }}
-DCUDA_DNN_ROOT_DIR=/usr/local/cuda/targets/x86_64-linux consolidateBuildAndInstall: true
-DCMAKE_PREFIX_PATH=$(Pipeline.Workspace)/llvm;/usr/local/cuda/targets/x86_64-linux/lib extraBuildFlags: >-
-DLLVM_EXTERNAL_LIT=$(Pipeline.Workspace)/llvm-project/llvm/build/bin/llvm-lit -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;/usr/local/cuda/targets/x86_64-linux/lib
multithreadFlag: -- -j32 -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml -DHIPIFY_CLANG_TESTS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml -DCMAKE_BUILD_TYPE=Release
parameters: -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.9
componentName: HIPIFY -DCUDA_DNN_ROOT_DIR=/usr/local/cuda-12.9
testDir: $(Build.SourcesDirectory)/build -DCUDA_CUB_ROOT_DIR=/usr/local/cuda-12.9/targets/x86_64-linux/include/cub
testExecutable: make -DCUDA_TENSOR_ROOT_DIR=$(Pipeline.Workspace)/cutensor/
testParameters: test-hipify multithreadFlag: -- -j32
testPublishResults: false - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
environment: combined os: ${{ job.os }}
registerCUDAPackages: true # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
extraCopyDirectories: # parameters:
- llvm-project # componentName: HIPIFY
extraEnvVars: # testDir: $(Build.SourcesDirectory)/build
- UPSTREAM_LLVM_GIT_URL:::https://github.com/llvm/llvm-project.git # testExecutable: make
- UPSTREAM_LLVM_TAG:::llvmorg-18.1.2 # testParameters: -j 32 test-hipify
# testPublishResults: false
# os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ if eq(job.os, 'ubuntu2204') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: combined
registerCUDAPackages: true
extraCopyDirectories:
- llvm-project

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: MIOpen
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -74,16 +93,37 @@ parameters:
target: gfx942 target: gfx942
- gfx90a: - gfx90a:
target: gfx90a target: gfx90a
- name: downstreamComponentMatrix
type: object
default:
- MIVisionX:
name: MIVisionX
checkoutRepo: mivisionx_repo
sparseCheckoutDir: ''
skipUnifiedBuild: 'false'
buildDependsOn:
- MIOpen_build
- AMDMIGraphX:
name: AMDMIGraphX
checkoutRepo: amdmigraphx_repo
sparseCheckoutDir: ''
skipUnifiedBuild: 'false'
buildDependsOn:
- MIOpen_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: MIOpen_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: ROCM_PATH - name: ROCM_PATH
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
pool: ${{ variables.HIGH_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -91,10 +131,12 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/miopen-get-ck-build.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/miopen-get-ck-build.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
@@ -104,11 +146,14 @@ jobs:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: Bash@3 - task: Bash@3
displayName: Build and install other dependencies displayName: Build and install other dependencies
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Agent.BuildDirectory)/s
script: | script: |
sed -i '/composable_kernel/d' requirements.txt sed -i '/composable_kernel/d' requirements.txt
mkdir -p $(Agent.BuildDirectory)/miopen-deps mkdir -p $(Agent.BuildDirectory)/miopen-deps
@@ -130,8 +175,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -143,9 +190,9 @@ jobs:
- miopen-deps - miopen-deps
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: MIOpen_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
timeoutInMinutes: 180 timeoutInMinutes: 180
dependsOn: MIOpen_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -165,10 +212,12 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/miopen-get-ck-build.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/miopen-get-ck-build.yml
parameters: parameters:
@@ -178,11 +227,14 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: Bash@3 - task: Bash@3
displayName: Build and install other dependencies displayName: Build and install other dependencies
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Agent.BuildDirectory)/s
script: | script: |
sed -i '/composable_kernel/d' requirements.txt sed -i '/composable_kernel/d' requirements.txt
mkdir -p $(Agent.BuildDirectory)/miopen-deps mkdir -p $(Agent.BuildDirectory)/miopen-deps
@@ -193,7 +245,7 @@ jobs:
displayName: 'MIOpen Test CMake Flags' displayName: 'MIOpen Test CMake Flags'
inputs: inputs:
cmakeArgs: >- cmakeArgs: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Build.SourcesDirectory)/bin;$(Agent.BuildDirectory)/miopen-deps -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/s/bin;$(Agent.BuildDirectory)/miopen-deps
-DCMAKE_INSTALL_PREFIX=$(Agent.BuildDirectory)/rocm -DCMAKE_INSTALL_PREFIX=$(Agent.BuildDirectory)/rocm
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
@@ -203,19 +255,19 @@ jobs:
-DBUILD_DEV=OFF -DBUILD_DEV=OFF
-DMIOPEN_USE_MLIR=ON -DMIOPEN_USE_MLIR=ON
-DMIOPEN_GPU_SYNC=OFF -DMIOPEN_GPU_SYNC=OFF
.. $(Agent.BuildDirectory)/s
- task: Bash@3 - task: Bash@3
displayName: 'MIOpen Test Build' displayName: 'MIOpen Test Build'
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: build
script: | script: |
cmake --build . --target tests -- -j$(nproc) cmake --build . --target tests -- -j$(nproc)
workingDirectory: $(Build.SourcesDirectory)/build
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: MIOpen componentName: ${{ parameters.componentName }}
testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml --exclude-regex "test_rnn_seq_api|GPU_Conv2dTuningAsm_FP32"' testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml --exclude-regex "test_rnn_seq_api|GPU_Conv2dTuningAsm_FP32|GPU_Conv2dTuningAsmBwdWrw_FP32"'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
@@ -224,3 +276,15 @@ jobs:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
extraCopyDirectories: extraCopyDirectories:
- miopen-deps - miopen-deps
# - ${{ 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: ${{ component.checkoutRepo }}
# # sparseCheckoutDir: ${{ component.sparseCheckoutDir }}
# buildDependsOn: ${{ component.buildDependsOn }}
# downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}
# triggerDownstreamJobs: true
# unifiedBuild: ${{ parameters.unifiedBuild }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: MIVisionX
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -43,21 +62,24 @@ parameters:
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocm-cmake - AMDMIGraphX
- llvm-project
- ROCR-Runtime
- clr - clr
- half
- hipBLAS-common
- hipBLASLt
- llvm-project
- MIOpen
- rocBLAS
- rocDecode
- rocm-cmake
- rocminfo - rocminfo
- rocprofiler-register - rocprofiler-register
- half - ROCR-Runtime
- rocBLAS
- MIOpen
- AMDMIGraphX
- rpp - rpp
- rocDecode
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
- aomp
- clr - clr
- half - half
- hipBLAS-common - hipBLAS-common
@@ -86,12 +108,15 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: MIVisionX_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -109,6 +134,8 @@ jobs:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
@@ -130,12 +157,12 @@ jobs:
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: MIVisionX_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
dependsOn: MIVisionX_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
eq(${{ parameters.aggregatePipeline }}, False) eq(${{ parameters.aggregatePipeline }}, False)
) )
variables: variables:
@@ -160,6 +187,8 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: Bash@3 - task: Bash@3
displayName: Build MIVisionX tests displayName: Build MIVisionX tests
inputs: inputs:
@@ -173,7 +202,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: MIVisionX componentName: ${{ parameters.componentName }}
testDir: 'mivisionx-tests' testDir: 'mivisionx-tests'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: ROCR-Runtime
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -18,6 +37,7 @@ parameters:
- libdrm-dev - libdrm-dev
- libelf-dev - libelf-dev
- libnuma-dev - libnuma-dev
- libsimde-dev
- ninja-build - ninja-build
- pkg-config - pkg-config
- name: rocmDependencies - name: rocmDependencies
@@ -28,8 +48,8 @@ parameters:
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
- amdsmi
- llvm-project - llvm-project
- rocm_smi_lib
- rocprofiler-register - rocprofiler-register
- name: jobMatrix - name: jobMatrix
@@ -45,6 +65,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ROCR_Runtime_build_${{ job.os }} - job: ROCR_Runtime_build_${{ job.os }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
pool: pool:
vmImage: 'ubuntu-22.04' vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}: ${{ if eq(job.os, 'almalinux8') }}:
@@ -65,14 +89,18 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
os: ${{ job.os }} os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
@@ -82,111 +110,112 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters: # parameters:
# aptPackages: ${{ parameters.aptPackages }} # aptPackages: ${{ parameters.aptPackages }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: ROCR_Runtime_test_${{ job.os }}_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: ROCR_Runtime_build_${{ job.os }} - job: ROCR_Runtime_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: ROCR_Runtime_build_${{ job.os }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
packageManager: ${{ job.packageManager }} aptPackages: ${{ parameters.aptPackages }}
- task: Bash@3 packageManager: ${{ job.packageManager }}
displayName: Install libhwloc5 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
inputs: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
targetType: 'inline' parameters:
script: | os: ${{ job.os }}
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc5_1.11.12-3_amd64.deb - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
wget http://ftp.us.debian.org/debian/pool/main/h/hwloc/libhwloc-dev_1.11.12-3_amd64.deb - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
sudo apt install -y --allow-downgrades ./libhwloc5_1.11.12-3_amd64.deb ./libhwloc-dev_1.11.12-3_amd64.deb parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml dependencyList: ${{ parameters.rocmTestDependencies }}
parameters: gpuTarget: ${{ job.target }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml ${{ if parameters.triggerDownstreamJobs }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmTestDependencies }} checkoutRepo: ${{ parameters.checkoutRepo }}
gpuTarget: ${{ job.target }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml parameters:
parameters: runRocminfo: false
checkoutRepo: ${{ parameters.checkoutRepo }} - task: Bash@3
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml displayName: Build kfdtest
parameters: inputs:
runRocminfo: false targetType: 'inline'
- task: Bash@3 workingDirectory: $(Agent.BuildDirectory)/s/libhsakmt/tests/kfdtest
displayName: Build kfdtest script: |
continueOnError: true if [ -e /opt/rh/gcc-toolset-14/enable ]; then
inputs: source /opt/rh/gcc-toolset-14/enable
targetType: 'inline' fi
workingDirectory: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest mkdir build && cd build
script: | cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm ..
if [ -e /opt/rh/gcc-toolset-14/enable ]; then make
source /opt/rh/gcc-toolset-14/enable - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
fi parameters:
mkdir build && cd build componentName: kfdtest
cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm .. testExecutable: BIN_DIR=$(Agent.BuildDirectory)/s/libhsakmt/tests/kfdtest/build ./run_kfdtest.sh
make testParameters: '-p core --gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml testDir: $(Agent.BuildDirectory)/s/libhsakmt/tests/kfdtest/scripts
parameters: os: ${{ job.os }}
componentName: kfdtest - task: Bash@3
testExecutable: BIN_DIR=$(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/build ./run_kfdtest.sh displayName: Build rocrtst
testParameters: '-p core --gtest_output=xml:./test_output.xml --gtest_color=yes' inputs:
testDir: $(Build.SourcesDirectory)/libhsakmt/tests/kfdtest/scripts targetType: 'inline'
os: ${{ job.os }} workingDirectory: $(Agent.BuildDirectory)/s/rocrtst/suites/test_common
- task: Bash@3 script: |
displayName: Build rocrtst echo $(Agent.BuildDirectory)/s/rocrtst/thirdparty/lib | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf
continueOnError: true sudo cat /etc/ld.so.conf.d/rocm-ci.conf
inputs: sudo ldconfig -v
targetType: 'inline' ldconfig -p
workingDirectory: $(Build.SourcesDirectory)/rocrtst/suites/test_common if [ -e /opt/rh/gcc-toolset-14/enable ]; then
script: | source /opt/rh/gcc-toolset-14/enable
if [ -e /opt/rh/gcc-toolset-14/enable ]; then fi
source /opt/rh/gcc-toolset-14/enable BASE_CLANG_DIR=$(Agent.BuildDirectory)/rocm/llvm/lib/clang
fi export NEWEST_CLANG_VER=$(ls -1 $BASE_CLANG_DIR | sort -V | tail -n 1)
BASE_CLANG_DIR=$(Agent.BuildDirectory)/rocm/llvm/lib/clang mkdir build && cd build
export NEWEST_CLANG_VER=$(ls -1 $BASE_CLANG_DIR | sort -V | tail -n 1) cmake .. \
mkdir build && cd build -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm \
cmake .. \ -DTARGET_DEVICES=${{ job.target }} \
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm \ -DROCM_DIR=$(Agent.BuildDirectory)/rocm \
-DTARGET_DEVICES=${{ job.target }} \ -DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin \
-DROCM_DIR=$(Agent.BuildDirectory)/rocm \ -DOPENCL_INC_DIR=$BASE_CLANG_DIR/$NEWEST_CLANG_VER/include
-DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm/bin \ make
-DOPENCL_INC_DIR=$BASE_CLANG_DIR/$NEWEST_CLANG_VER/include make rocrtst_kernels
make - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
make rocrtst_kernels parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml componentName: rocrtst
parameters: testExecutable: ./rocrtst64
componentName: rocrtst testParameters: '--gtest_filter="-rocrtstNeg.Memory_Negative_Tests:rocrtstFunc.Memory_Max_Mem" --gtest_output=xml:./test_output.xml --gtest_color=yes'
testExecutable: ./rocrtst64 testDir: $(Agent.BuildDirectory)/s//rocrtst/suites/test_common/build/${{ job.target }}
testParameters: '--gtest_filter="-rocrtstNeg.Memory_Negative_Tests:rocrtstFunc.Memory_Max_Mem" --gtest_output=xml:./test_output.xml --gtest_color=yes' os: ${{ job.os }}
testDir: $(Build.SourcesDirectory)/rocrtst/suites/test_common/build/${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
os: ${{ job.os }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml aptPackages: ${{ parameters.aptPackages }}
parameters: environment: test
aptPackages: ${{ parameters.aptPackages }} gpuTarget: ${{ job.target }}
environment: test # docker image will be missing libhwloc5
gpuTarget: ${{ job.target }}
# docker image will be missing libhwloc5

View File

@@ -1,4 +1,7 @@
parameters: parameters:
- name: componentName
type: string
default: ROCgdb
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
@@ -23,8 +26,10 @@ parameters:
- libgmp-dev - libgmp-dev
- liblzma-dev - liblzma-dev
- libmpfr-dev - libmpfr-dev
- pkg-config
- ncurses-dev - ncurses-dev
- pkg-config
- python3-dev
- python3-pip
- texinfo - texinfo
- zlib1g-dev - zlib1g-dev
- name: rocmDependencies - name: rocmDependencies
@@ -40,67 +45,87 @@ parameters:
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- job: ROCgdb - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: ${{ parameters.componentName }}_build_${{ job.os }}
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: PKG_CONFIG_PATH - template: /.azuredevops/variables-global.yml
value: $(Agent.BuildDirectory)/rocm/share/pkgconfig - name: PKG_CONFIG_PATH
pool: value: $(Agent.BuildDirectory)/rocm/share/pkgconfig
vmImage: ${{ variables.BASE_BUILD_POOL }} pool:
workspace: ${{ if eq(job.os, 'ubuntu2404') }}:
clean: all name: rocm-ci_medium_build_pool_2404
steps: ${{ else }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml name: ${{ variables.MEDIUM_BUILD_POOL }}
parameters: ${{ if eq(job.os, 'almalinux8') }}:
aptPackages: ${{ parameters.aptPackages }} container:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml image: rocmexternalcicd.azurecr.io/manylinux228:latest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml endpoint: ContainerService3
parameters: workspace:
checkoutRepo: ${{ parameters.checkoutRepo }} clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} aptPackages: ${{ parameters.aptPackages }}
dependencyList: ${{ parameters.rocmDependencies }} packageManager: ${{ job.packageManager }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
configureFlags: >- checkoutRepo: ${{ parameters.checkoutRepo }}
--program-prefix=roc - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
--enable-64-bit-bfd parameters:
--enable-targets="x86_64-linux-gnu,amdgcn-amd-amdhsa" os: ${{ job.os }}
--disable-ld - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
--disable-gas parameters:
--disable-gdbserver checkoutRef: ${{ parameters.checkoutRef }}
--disable-sim dependencyList: ${{ parameters.rocmDependencies }}
--enable-tui os: ${{ job.os }}
--disable-gdbtk aggregatePipeline: ${{ parameters.aggregatePipeline }}
--disable-shared - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml
--disable-gprofng parameters:
--with-expat os: ${{ job.os }}
--with-system-zlib configureFlags: >-
--without-guile --program-prefix=roc
--with-babeltrace --enable-64-bit-bfd
--with-lzma --enable-targets="x86_64-linux-gnu,amdgcn-amd-amdhsa"
--with-python=python3 --disable-ld
--with-rocm-dbgapi=$(Agent.BuildDirectory)/rocm --disable-gas
LDFLAGS="-Wl,--enable-new-dtags,-rpath=$(Agent.BuildDirectory)/rocm/lib" --disable-gdbserver
makeCallPrefix: LD_RUN_PATH='${ORIGIN}/../lib' --disable-sim
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml --enable-tui
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml --disable-gdbtk
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml --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/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ROCgdb_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ROCgdb dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -119,18 +144,23 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-autotools.yml
parameters: parameters:
os: ${{ job.os }}
configureFlags: >- configureFlags: >-
--program-prefix=roc --program-prefix=roc
--enable-64-bit-bfd --enable-64-bit-bfd
@@ -166,7 +196,9 @@ jobs:
continueOnError: true continueOnError: true
inputs: inputs:
targetType: inline targetType: inline
script: make check-gdb TESTS=gdb.rocm/simple.exp script: |
${{ iif(eq(job.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
make check-gdb TESTS=gdb.rocm/simple.exp
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3 - task: Bash@3
displayName: print gdb log displayName: print gdb log

View File

@@ -86,8 +86,7 @@ jobs:
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
- name: HIP_INC_DIR - name: HIP_INC_DIR
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: Tensile
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -13,10 +32,10 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- python3-pip
- cmake - cmake
- libmsgpack-dev - libboost-filesystem-dev
- libboost-program-options-dev - libboost-program-options-dev
- libmsgpack-dev
- name: pipModules - name: pipModules
type: object type: object
default: default:
@@ -38,75 +57,97 @@ parameters:
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- job: Tensile_build - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: ${{ parameters.componentName }}_build_${{ job.os }}
- group: common ${{ if parameters.buildDependsOn }}:
- template: /.azuredevops/variables-global.yml dependsOn: ${{ parameters.buildDependsOn[job.target] }}
- name: ROCM_PATH variables:
value: $(Agent.BuildDirectory)/rocm - group: common
pool: - template: /.azuredevops/variables-global.yml
vmImage: ${{ variables.BASE_BUILD_POOL }} - name: ROCM_PATH
workspace: value: $(Agent.BuildDirectory)/rocm
clean: all pool:
steps: vmImage: ${{ variables.BASE_BUILD_POOL }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml ${{ if eq(job.os, 'almalinux8') }}:
parameters: container:
aptPackages: ${{ parameters.aptPackages }} image: rocmexternalcicd.azurecr.io/manylinux228:latest
pipModules: ${{ parameters.pipModules }} endpoint: ContainerService3
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml workspace:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml clean: all
parameters: steps:
checkoutRepo: ${{ parameters.checkoutRepo }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters:
parameters: aptPackages: ${{ parameters.aptPackages }}
checkoutRef: ${{ parameters.checkoutRef }} pipModules: ${{ parameters.pipModules }}
dependencyList: ${{ parameters.rocmDependencies }} packageManager: ${{ job.packageManager }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
- task: Bash@3 parameters:
displayName: Create wheel file checkoutRepo: ${{ parameters.checkoutRepo }}
inputs: sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
targetType: inline - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
script: python3 setup.py bdist_wheel parameters:
workingDirectory: $(Build.SourcesDirectory) checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml dependencyList: ${{ parameters.rocmDependencies }}
parameters: os: ${{ job.os }}
sourceDir: $(Build.SourcesDirectory)/dist aggregatePipeline: ${{ parameters.aggregatePipeline }}
contentsString: '*.whl' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
targetDir: $(Build.ArtifactStagingDirectory) parameters:
clean: false os: ${{ job.os }}
- task: PublishPipelineArtifact@1 - task: Bash@3
displayName: 'wheel file Publish' displayName: Create wheel file
retryCountOnTaskFailure: 3 inputs:
inputs: targetType: inline
targetPath: $(Build.ArtifactStagingDirectory) script: python3 setup.py bdist_wheel
- task: Bash@3 workingDirectory: $(Agent.BuildDirectory)/s
displayName: Save pipeline artifact file names - task: Bash@3
inputs: displayName: Rename wheel file with job OS
workingDirectory: $(Pipeline.Workspace) inputs:
targetType: inline targetType: inline
script: | workingDirectory: $(Agent.BuildDirectory)/s
whlFile=$(find "$(Build.ArtifactStagingDirectory)" -type f -name "*.whl" | head -n 1) script: |
if [ -n "$whlFile" ]; then wheelFile=$(find "$(Agent.BuildDirectory)/s/dist" -type f -name "*.whl" | head -n 1)
echo $(basename "$whlFile") >> pipelineArtifacts.txt newWheelFile="$(basename "$wheelFile" .whl)-${{ job.os }}.whl"
fi mv "$wheelFile" "$(dirname "$wheelFile")/$newWheelFile"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml parameters:
# parameters: sourceDir: $(Agent.BuildDirectory)/s/dist
# aptPackages: ${{ parameters.aptPackages }} contentsString: '*.whl'
# pipModules: ${{ parameters.pipModules }} targetDir: $(Build.ArtifactStagingDirectory)
clean: false
- task: PublishPipelineArtifact@1
displayName: 'wheel file Publish'
retryCountOnTaskFailure: 3
inputs:
targetPath: $(Build.ArtifactStagingDirectory)
- task: Bash@3
displayName: Save pipeline artifact file names
inputs:
workingDirectory: $(Pipeline.Workspace)
targetType: inline
script: |
whlFile=$(find "$(Build.ArtifactStagingDirectory)" -type f -name "*.whl" | head -n 1)
if [ -n "$whlFile" ]; then
echo $(basename "$whlFile") >> pipelineArtifacts.txt
fi
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters:
# aptPackages: ${{ parameters.aptPackages }}
# pipModules: ${{ parameters.pipModules }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: Tensile_test_${{ job.target }} - job: Tensile_test_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 180 timeoutInMinutes: 180
dependsOn: Tensile_build dependsOn: Tensile_build_${{ job.os }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -126,20 +167,24 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: 'Download Pipeline Wheel Files' displayName: 'Download Pipeline Wheel Files'
retryCountOnTaskFailure: 3
inputs: inputs:
itemPattern: '**/*.whl' itemPattern: '**/*${{ job.os }}*.whl'
targetPath: $(Agent.BuildDirectory) targetPath: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- task: Bash@3 - task: Bash@3
displayName: pip install displayName: pip install
@@ -164,7 +209,7 @@ jobs:
inputs: inputs:
targetType: inline targetType: inline
script: tox run -v -e ci -- -m pre_checkin script: tox run -v -e ci -- -m pre_checkin
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Agent.BuildDirectory)/s
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: amdsmi
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -31,7 +50,7 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: amdsmi_build_${{ job.os }} - job: ${{ parameters.componentName }}_build_${{ job.os }}
pool: pool:
${{ if eq(job.os, 'ubuntu2404') }}: ${{ if eq(job.os, 'ubuntu2404') }}:
vmImage: 'ubuntu-24.04' vmImage: 'ubuntu-24.04'
@@ -55,6 +74,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }} os: ${{ job.os }}
@@ -65,50 +85,54 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
os: ${{ job.os }} os: ${{ job.os }}
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
os: ${{ job.os }} os: ${{ job.os }}
componentName: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters: # parameters:
# aptPackages: ${{ parameters.aptPackages }} # aptPackages: ${{ parameters.aptPackages }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: amdsmi_test_${{ job.os }}_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: amdsmi_build_${{ job.os }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
packageManager: ${{ job.packageManager }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
os: ${{ job.os }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
runRocminfo: false parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml runRocminfo: false
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
componentName: amdsmi parameters:
testDir: '$(Agent.BuildDirectory)' componentName: ${{ parameters.componentName }}
testExecutable: './rocm/share/amd_smi/tests/amdsmitst' testDir: '$(Agent.BuildDirectory)'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes' testExecutable: 'sudo ./rocm/share/amd_smi/tests/amdsmitst'
os: ${{ job.os }} testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
environment: test aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,4 +1,7 @@
parameters: parameters:
- name: componentName
type: string
default: aomp
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
@@ -15,173 +18,187 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- bison
- ccache
- cmake - cmake
- python3-pip - flex
- ninja-build
- pkg-config
- libpci-dev
- libnuma-dev
- libffi-dev
- git
- libopenmpi-dev
- gawk - gawk
- git
- mesa-common-dev - mesa-common-dev
- libtool - ninja-build
- libbabeltrace-dev
- libbison-dev
- libdrm-amdgpu1 - libdrm-amdgpu1
- libdrm-dev - libdrm-dev
- libdw-dev - libdw-dev
- libgtest-dev - libffi-dev
- libsystemd-dev - libgmp-dev
- liblzma-dev
- libmpfr-dev
- libncurses5-dev
- libnuma-dev
- libopenmpi-dev
- libpci-dev
- libssl-dev - libssl-dev
- libstdc++-12-dev - libstdc++-12-dev
- ccache - libsystemd-dev
- libgmp-dev - libtool
- libmpfr-dev
- texinfo
- libbison-dev
- bison
- flex
- libbabeltrace-dev
- libncurses5-dev
- liblzma-dev
- python3-setuptools
- python3-dev
- libudev-dev - libudev-dev
- parallel - parallel
# Referencing comment snippet. - pkg-config
# - python3-dev
# snippet from https://github.com/ROCm/aomp/blob/aomp-dev/bin/build_aomp.sh#L131-L134 - python3-pip
# - python3-setuptools
# For ROCM build (AOMP_STANDALONE_BUILD=0) the components roct, rocr, - texinfo
# 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 - name: rocmDependencies
type: object type: object
default: default:
- amdsmi - llvm-project
- ROCR-Runtime
- name: rocmTestDependencies
type: object
default:
- clr - clr
- llvm-project - llvm-project
- ROCdbgapi
- ROCgdb
- rocm-cmake
- rocm-core - rocm-core
- rocminfo - rocminfo
- rocm_smi_lib
- rocprofiler
- rocprofiler-register
- rocprofiler-sdk
- ROCR-Runtime - ROCR-Runtime
- roctracer - rocprofiler-register
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- job: aomp - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: ${{ parameters.componentName }}_build_${{ job.os }}
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ variables.MEDIUM_BUILD_POOL }} - template: /.azuredevops/variables-global.yml
workspace: pool:
clean: all ${{ if eq(job.os, 'ubuntu2404') }}:
steps: name: rocm-ci_medium_build_pool_2404
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml ${{ else }}:
parameters: name: ${{ variables.MEDIUM_BUILD_POOL }}
aptPackages: ${{ parameters.aptPackages }} ${{ if eq(job.os, 'almalinux8') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml container:
# checkout the repos tied to openmp-extras, plus llvm-project image: rocmexternalcicd.azurecr.io/manylinux228:latest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml endpoint: ContainerService3
parameters: workspace:
checkoutRepo: ${{ parameters.checkoutRepo }} clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
checkoutRepo: aomp-extras_repo parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml aptPackages: ${{ parameters.aptPackages }}
parameters: packageManager: ${{ job.packageManager }}
checkoutRepo: flang_repo - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml # checkout the repos tied to openmp-extras, plus llvm-project
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
checkoutRepo: llvm-project_repo parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml checkoutRepo: ${{ parameters.checkoutRepo }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmDependencies }} checkoutRepo: aomp-extras_repo
aggregatePipeline: ${{ parameters.aggregatePipeline }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml parameters:
parameters: checkoutRepo: flang_repo
componentName: extras - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
cmakeBuildDir: '$(Build.SourcesDirectory)/aomp-extras/build' parameters:
cmakeSourceDir: '$(Build.SourcesDirectory)/aomp-extras' checkoutRepo: llvm-project_repo
installDir: '$(Build.BinariesDirectory)/llvm' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
extraBuildFlags: >- parameters:
-DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm dependencyList:
-DCMAKE_BUILD_TYPE=Release - gtest
-DAOMP_STANDALONE_BUILD=0 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
-DAOMP_VERSION_STRING=9.99.99 parameters:
-GNinja checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml dependencyList: ${{ parameters.rocmDependencies }}
parameters: os: ${{ job.os }}
componentName: openmp aggregatePipeline: ${{ parameters.aggregatePipeline }}
cmakeBuildDir: '$(Build.SourcesDirectory)/llvm-project/openmp/build' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
cmakeSourceDir: '$(Build.SourcesDirectory)/llvm-project/openmp' parameters:
installDir: '$(Build.BinariesDirectory)/llvm' os: ${{ job.os }}
extraBuildFlags: >- useAmdclang: false
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Build.BinariesDirectory)" componentName: extras
-DCMAKE_BUILD_TYPE=Release cmakeBuildDir: '$(Build.SourcesDirectory)/aomp-extras/build'
-DOPENMP_TEST_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++ cmakeSourceDir: '$(Build.SourcesDirectory)/aomp-extras'
-DOPENMP_TEST_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang installDir: '$(Build.BinariesDirectory)/llvm'
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++ extraBuildFlags: >-
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang -DLLVM_DIR=$(Agent.BuildDirectory)/rocm/llvm
-DOPENMP_ENABLE_LIBOMPTARGET=1 -DCMAKE_BUILD_TYPE=Release
-DLIBOMP_COPY_EXPORTS=OFF -DAOMP_STANDALONE_BUILD=0
-DLIBOMP_OMPT_SUPPORT=ON -DAOMP_VERSION_STRING=9.99.99
-DLIBOMP_OMPD_SUPPORT=ON -GNinja
-DCMAKE_SKIP_INSTALL_RPATH=TRUE - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-DLLVM_MAIN_INCLUDE_DIR=$(Build.SourcesDirectory)/llvm-project/llvm/include parameters:
-DLIBOMP_FORTRAN_MODULES_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/flang os: ${{ job.os }}
-DLIBOMP_MODULES_INSTALL_PATH=$(Build.BinariesDirectory)/llvm/include/flang/ componentName: openmp
-GNinja cmakeBuildDir: '$(Build.SourcesDirectory)/llvm-project/openmp/build'
- task: Bash@3 cmakeSourceDir: '$(Build.SourcesDirectory)/llvm-project/openmp'
displayName: 'ROCm symbolic link' installDir: '$(Build.BinariesDirectory)/llvm'
inputs: extraBuildFlags: >-
targetType: inline -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Build.BinariesDirectory)"
script: sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm -DCMAKE_BUILD_TYPE=Release
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml -DOPENMP_TEST_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
parameters: -DOPENMP_TEST_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
componentName: offload -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
cmakeBuildDir: '$(Build.SourcesDirectory)/llvm-project/offload/build' -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
cmakeSourceDir: '$(Build.SourcesDirectory)/llvm-project/offload' -DOPENMP_ENABLE_LIBOMPTARGET=1
installDir: '$(Build.BinariesDirectory)/llvm' -DLIBOMP_COPY_EXPORTS=OFF
extraBuildFlags: >- -DLIBOMP_OMPD_SUPPORT=ON
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Build.BinariesDirectory)" -DCMAKE_SKIP_INSTALL_RPATH=TRUE
-DCMAKE_BUILD_TYPE=Release -DLLVM_MAIN_INCLUDE_DIR=$(Build.SourcesDirectory)/llvm-project/llvm/include
-DOPENMP_TEST_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++ -DLIBOMP_FORTRAN_MODULES_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/flang
-DOPENMP_TEST_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang -DLIBOMP_MODULES_INSTALL_PATH=$(Build.BinariesDirectory)/llvm/include/flang/
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++ multithreadFlag: -- -j32
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang - task: Bash@3
-DCMAKE_SKIP_INSTALL_RPATH=TRUE displayName: 'ROCm symbolic link'
-DLLVM_MAIN_INCLUDE_DIR=$(Build.SourcesDirectory)/llvm-project/llvm/include inputs:
-DLIBOMPTARGET_LLVM_INCLUDE_DIRS=$(Build.SourcesDirectory)/llvm-project/llvm/include targetType: inline
-DCMAKE_EXE_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/llvm/lib" script: sudo ln -s $(Agent.BuildDirectory)/rocm /opt/rocm
-DCMAKE_SHARED_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/llvm/lib" - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-GNinja parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml componentName: offload
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml cmakeBuildDir: '$(Build.SourcesDirectory)/llvm-project/offload/build'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml cmakeSourceDir: '$(Build.SourcesDirectory)/llvm-project/offload'
parameters: installDir: '$(Build.BinariesDirectory)/llvm'
aptPackages: ${{ parameters.aptPackages }} extraBuildFlags: >-
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Build.BinariesDirectory)"
-DCMAKE_BUILD_TYPE=Release
-DOPENMP_TEST_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
-DOPENMP_TEST_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/clang
-DCMAKE_SKIP_INSTALL_RPATH=TRUE
-DLLVM_MAIN_INCLUDE_DIR=$(Build.SourcesDirectory)/llvm-project/llvm/include
-DLIBOMPTARGET_LLVM_INCLUDE_DIRS=$(Build.SourcesDirectory)/llvm-project/llvm/include
-DCMAKE_EXE_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/llvm/lib"
-DCMAKE_SHARED_LINKER_FLAGS="-L$(Agent.BuildDirectory)/rocm/llvm/lib"
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ if eq(job.os, 'ubuntu2204') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: aomp_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: aomp dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -198,12 +215,16 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
os: ${{ job.os }}
- task: Bash@3 - task: Bash@3
displayName: ROCm symbolic link displayName: ROCm symbolic link
inputs: inputs:
@@ -215,7 +236,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: aomp-extras_repo checkoutRepo: aomp-extras_repo
# these copy steps are from the aomp prototype script for test prep # these copy steps are from the aomp prototype script for test prep
- task: CopyFiles@2 - task: CopyFiles@2
displayName: 'Copy AOMP contents' displayName: 'Copy AOMP contents'
inputs: inputs:

View File

@@ -0,0 +1,174 @@
parameters:
- name: componentName
type: string
default: aqlprofile
- 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
- python3-pip
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- ROCR-Runtime
- name: rocmTestDependencies
type: object
default:
- clr
- llvm-project
- ROCR-Runtime
- rocprofiler-register
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx942 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a }
testJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx942 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a }
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_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
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 }}
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 }}
gpuTarget: ${{ job.target }}
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 }}
consolidateBuildAndInstall: true
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/aqlprofile/cmake_modules
-DAQLPROFILE_BUILD_TESTS=ON
-DGPU_TARGETS=${{ job.target }}
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ if eq(job.os, 'ubuntu2204') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }}
- ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
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
pool: ${{ job.target }}_test_pool
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters:
checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }}
os: ${{ job.os }}
${{ 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 }}
testDir: $(Agent.BuildDirectory)/rocm/share/hsa-amd-aqlprofile/
testExecutable: ./run_tests.sh
testParameters: ''
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -107,6 +107,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
# if this artifact name is changed, please also update $ARTIFACT_URL inside miopen-get-ck-build.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}

View File

@@ -1,36 +1,44 @@
parameters: parameters:
- name: checkoutRepo - name: jobMatrix
type: string type: object
default: 'self' default:
- name: checkoutRef copyJobs:
type: string - { os: ubuntu2204, backend: amd }
default: '' - { os: almalinux8, backend: amd }
- { os: ubuntu2204, backend: nvidia }
- { os: almalinux8, backend: nvidia }
# hip and clr are tightly-coupled # hip and clr are tightly-coupled
# run this same template for both repos # run this same template for both repos
# any changes for clr should just trigger HIP pipeline # any changes for clr should just trigger HIP pipeline
jobs: jobs:
- job: hip_clr_combined - ${{ each job in parameters.jobMatrix.copyJobs }}:
variables: - job: hip_clr_combined_${{ job.os }}_${{ job.backend }}
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: - template: /.azuredevops/variables-global.yml
vmImage: ${{ variables.BASE_BUILD_POOL }} pool:
workspace: vmImage: ${{ variables.BASE_BUILD_POOL }}
clean: all workspace:
steps: clean: all
# checkout nothing, just copy artifacts from triggering HIP job steps:
# and then publish for this clr job or for this hipother job to maintain latest # checkout nothing, just copy artifacts from triggering HIP job
- checkout: none # and then publish for this clr job or for this hipother job to maintain latest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-download.yml - checkout: none
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-download.yml
componentName: HIP parameters:
pipelineId: $(HIP_PIPELINE_ID) componentName: HIP
- task: Bash@3 pipelineId: $(HIP_PIPELINE_ID)
displayName: Copy HIP artifacts fileFilter: ${{ job.os }}*${{ job.backend }}
inputs: - task: Bash@3
targetType: inline displayName: Copy HIP artifacts
script: cp -a $(Agent.BuildDirectory)/rocm/* $(Build.BinariesDirectory)/ inputs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml script: cp -a $(Agent.BuildDirectory)/rocm/* $(Build.BinariesDirectory)/
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
inputs:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hip-tests
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -60,6 +79,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hip_tests_build_${{ job.target }} - job: hip_tests_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -76,15 +99,18 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
# compile hip-tests # compile hip-tests
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: hip-tests componentName: ${{ parameters.componentName }}
cmakeSourceDir: '../catch' cmakeSourceDir: '../catch'
customBuildTarget: build_tests customBuildTarget: build_tests
extraBuildFlags: >- extraBuildFlags: >-
@@ -96,9 +122,12 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -108,52 +137,56 @@ jobs:
extraEnvVars: extraEnvVars:
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hip_tests_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 240 - job: hip_tests_test_${{ job.target }}
dependsOn: hip_tests_build_${{ job.target }} timeoutInMinutes: 240
condition: dependsOn: hip_tests_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml gpuTarget: ${{ job.target }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
dependencyList: ${{ parameters.rocmTestDependencies }} parameters:
gpuTarget: ${{ job.target }} checkoutRef: ${{ parameters.checkoutRef }}
- task: Bash@3 dependencyList: ${{ parameters.rocmTestDependencies }}
displayName: Symlink rocm_agent_enumerator gpuTarget: ${{ job.target }}
inputs: ${{ if parameters.triggerDownstreamJobs }}:
targetType: inline downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
script: | - task: Bash@3
# Assuming that /opt is no longer persistent across runs, test environments are fully ephemeral displayName: Symlink rocm_agent_enumerator
sudo mkdir -p /opt/rocm/bin inputs:
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rocm_agent_enumerator /opt/rocm/bin/rocm_agent_enumerator targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml script: |
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml # Assuming that /opt is no longer persistent across runs, test environments are fully ephemeral
parameters: sudo mkdir -p /opt/rocm/bin
componentName: hip_tests sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rocm_agent_enumerator /opt/rocm/bin/rocm_agent_enumerator
testDir: $(Agent.BuildDirectory)/rocm/share/hip - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} componentName: ${{ parameters.componentName }}
environment: test testDir: $(Agent.BuildDirectory)/rocm/share/hip
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
optSymLink: true parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}
optSymLink: true

View File

@@ -33,19 +33,24 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- git - git
- ninja-build
- wget - wget
- python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr - clr
- llvm-project
- rocm-cmake
- rocminfo - rocminfo
- ROCR-Runtime
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
- name: downstreamComponentMatrix - name: downstreamComponentMatrix
type: object type: object
default: default:
@@ -54,57 +59,68 @@ parameters:
sparseCheckoutDir: projects/hipblaslt sparseCheckoutDir: projects/hipblaslt
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - hipBLAS_common_build
- hipBLAS_common
gfx90a:
- hipBLAS_common
jobs: jobs:
- job: hipBLAS_common - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: hipBLAS_common_build_${{ job.os }}
- group: common ${{ if parameters.buildDependsOn }}:
- name: ROCM_PATH dependsOn:
value: $(Agent.BuildDirectory)/rocm - ${{ each build in parameters.buildDependsOn }}:
- template: /.azuredevops/variables-global.yml - ${{ build }}_${{ job.os }}
pool: variables:
vmImage: ${{ variables.BASE_BUILD_POOL }} - group: common
workspace: - template: /.azuredevops/variables-global.yml
clean: all - name: ROCM_PATH
steps: value: $(Agent.BuildDirectory)/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml pool:
parameters: vmImage: ${{ variables.BASE_BUILD_POOL }}
aptPackages: ${{ parameters.aptPackages }} ${{ if eq(job.os, 'almalinux8') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml container:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml image: rocmexternalcicd.azurecr.io/manylinux228:latest
parameters: endpoint: ContainerService3
checkoutRepo: ${{ parameters.checkoutRepo }} workspace:
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmDependencies }} aptPackages: ${{ parameters.aptPackages }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} packageManager: ${{ job.packageManager }}
${{ if parameters.triggerDownstreamJobs }}: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml parameters:
parameters: checkoutRepo: ${{ parameters.checkoutRepo }}
extraBuildFlags: >- sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ parameters:
-GNinja checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml dependencyList: ${{ parameters.rocmDependencies }}
parameters: os: ${{ job.os }}
componentName: ${{ parameters.componentName }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} ${{ if parameters.triggerDownstreamJobs }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
componentName: ${{ parameters.componentName }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml os: ${{ job.os }}
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml extraBuildFlags: >-
# parameters: -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
# aptPackages: ${{ parameters.aptPackages }} -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
# extraEnvVars: -GNinja
# - ROCM_PATH:::/home/user/workspace/rocm - 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
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters:
# aptPackages: ${{ parameters.aptPackages }}
# extraEnvVars:
# - ROCM_PATH:::/home/user/workspace/rocm
- ${{ if parameters.triggerDownstreamJobs }}: - ${{ if parameters.triggerDownstreamJobs }}:
- ${{ each component in parameters.downstreamComponentMatrix }}: - ${{ each component in parameters.downstreamComponentMatrix }}:

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipBLAS
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -69,10 +88,30 @@ parameters:
target: gfx942 target: gfx942
- gfx90a: - gfx90a:
target: gfx90a target: gfx90a
# MIOpen depends on both rocRAND and hipBLAS
# for a unified build, hipBLAS will be the one to call MIOpen
- name: downstreamComponentMatrix
type: object
default:
- MIOpen:
name: MIOpen
sparseCheckoutDir: projects/miopen
skipUnifiedBuild: 'false'
buildDependsOn:
- hipBLAS_build
unifiedBuild:
downstreamAggregateNames: hipBLAS+rocRAND
buildDependsOn:
- hipBLAS_build
- rocRAND_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipBLAS_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -88,6 +127,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
@@ -95,6 +135,8 @@ jobs:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
@@ -109,9 +151,12 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -121,46 +166,67 @@ jobs:
installAOCL: true installAOCL: true
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hipBLAS_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: hipBLAS_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
pipModules: ${{ parameters.pipModules }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml pipModules: ${{ parameters.pipModules }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml preTargetFilter: ${{ parameters.componentName }}
parameters: gpuTarget: ${{ job.target }}
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
dependencyList: ${{ parameters.rocmTestDependencies }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml dependencyList: ${{ parameters.rocmTestDependencies }}
parameters: gpuTarget: ${{ job.target }}
componentName: hipBLAS ${{ if parameters.triggerDownstreamJobs }}:
testExecutable: $(Agent.BuildDirectory)/rocm/bin/hipblas-test downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
testParameters: '--yaml hipblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testDir: '$(Agent.BuildDirectory)/rocm/bin' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml parameters:
parameters: componentName: ${{ parameters.componentName }}
aptPackages: ${{ parameters.aptPackages }} testExecutable: $(Agent.BuildDirectory)/rocm/bin/hipblas-test
pipModules: ${{ parameters.pipModules }} testParameters: '--yaml hipblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes'
environment: test testDir: '$(Agent.BuildDirectory)/rocm/bin'
gpuTarget: ${{ job.target }} - 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 }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}
${{ if parameters.unifiedBuild }}:
buildDependsOn: ${{ component.unifiedBuild.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ component.unifiedBuild.downstreamAggregateNames }}
${{ else }}:
buildDependsOn: ${{ component.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}

View File

@@ -32,21 +32,30 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- ccache
- gfortran
- git - git
- libboost-filesystem-dev
- libboost-program-options-dev
- libdrm-dev - libdrm-dev
- liblapack-dev
- libmsgpack-dev - libmsgpack-dev
- libnuma-dev - libnuma-dev
- libopenblas-dev
- ninja-build - ninja-build
- python3-pip - python3-pip
- python3-venv - python3-venv
- gfortran
- libblas-dev
- ccache
- name: pipModules - name: pipModules
type: object type: object
default: default:
- joblib - joblib
- "packaging>=22.0" - "packaging>=22.0"
- pyyaml
- msgpack
- simplejson
- ujson
- orjson
- yappi
- --upgrade - --upgrade
- name: rocmDependencies - name: rocmDependencies
type: object type: object
@@ -68,6 +77,7 @@ parameters:
- clr - clr
- hipBLAS-common - hipBLAS-common
- llvm-project - llvm-project
- rocm-cmake
- rocminfo - rocminfo
- rocm_smi_lib - rocm_smi_lib
- rocprofiler-register - rocprofiler-register
@@ -78,15 +88,19 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { pool: rocm-ci_ultra_build_pool, os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx1100 }
#- { pool: rocm-ci_medium_build_pool, os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { pool: rocm-ci_ultra_build_pool, os: almalinux8, packageManager: dnf, target: gfx942 }
- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx90a }
- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx1201 }
- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx1100 }
#- { pool: rocm-ci_medium_build_pool, os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
- name: downstreamComponentMatrix - name: downstreamComponentMatrix
type: object type: object
default: default:
@@ -95,17 +109,16 @@ parameters:
sparseCheckoutDir: projects/rocblas sparseCheckoutDir: projects/rocblas
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - hipBLASLt_build
- hipBLASLt_build_gfx942
gfx90a:
- hipBLASLt_build_gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 300 timeoutInMinutes: 300
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -119,7 +132,11 @@ jobs:
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
- name: DAY_STRING - name: DAY_STRING
value: $[format('{0:ddMMyyyy}', pipeline.startTime)] value: $[format('{0:ddMMyyyy}', pipeline.startTime)]
pool: ${{ variables.ULTRA_BUILD_POOL }} pool: ${{ job.pool }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -127,16 +144,22 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml 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/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
@@ -148,22 +171,17 @@ jobs:
script: | script: |
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin" echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin" echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
# Build and install gtest, lapack, hipBLAS-common - task: Bash@3
# $(Pipeline.Workspace)/deps is a temporary folder for the build process displayName: Build and install LAPACK
# $(Pipeline.Workspace)/s/deps is part of the hipBLASLt repo inputs:
- script: mkdir $(Pipeline.Workspace)/deps targetType: inline
displayName: Create temp folder for external dependencies script: |
# hipBLASLt already has a CMake script for external deps, so we can just run that mkdir -p $(Agent.BuildDirectory)/temp-deps
# https://github.com/ROCm/hipBLASLt/blob/develop/deps/CMakeLists.txt cd $(Agent.BuildDirectory)/temp-deps
- script: cmake $(Pipeline.Workspace)/s/deps # position-independent LAPACK is required for almalinux8 builds
displayName: Configure hipBLASLt external dependencies cmake -DBUILD_GTEST=OFF -DBUILD_LAPACK=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON $(Agent.BuildDirectory)/sparse/projects/hipblaslt/deps
workingDirectory: $(Pipeline.Workspace)/deps make -j
- script: make sudo make install
displayName: Build hipBLASLt external dependencies
workingDirectory: $(Pipeline.Workspace)/deps
- script: sudo make install
displayName: Install hipBLASLt external dependencies
workingDirectory: $(Pipeline.Workspace)/deps
- script: | - script: |
mkdir -p $(CCACHE_DIR) mkdir -p $(CCACHE_DIR)
echo "##vso[task.prependpath]/usr/lib/ccache" echo "##vso[task.prependpath]/usr/lib/ccache"
@@ -171,58 +189,64 @@ jobs:
- task: Cache@2 - task: Cache@2
displayName: Ccache caching displayName: Ccache caching
inputs: inputs:
key: hipBLASLt | $(Agent.OS) | ${{ job.target }} | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ key: hipBLASLt | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
path: $(CCACHE_DIR) path: $(CCACHE_DIR)
restoreKeys: | restoreKeys: |
hipBLASLt | $(Agent.OS) | ${{ job.target }} | $(DAY_STRING) hipBLASLt | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING)
hipBLASLt | $(Agent.OS) | ${{ job.target }} hipBLASLt | ${{ job.os }} | ${{ job.target }}
hipBLASLt | $(Agent.OS) hipBLASLt | ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
cmakeSourceDir: $(Agent.BuildDirectory)/sparse/projects/hipblaslt
cmakeBuildDir: $(Agent.BuildDirectory)/sparse/projects/hipblaslt/build
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_INCLUDE_PATH=$(Agent.BuildDirectory)/rocm/llvm/include
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER_LAUNCHER=ccache
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-DTensile_LOGIC= -DGPU_TARGETS=${{ job.target }}
-DTensile_CPU_THREADS=
-DTensile_LIBRARY_FORMAT=msgpack
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
-DBUILD_CLIENTS_TESTS=ON -DBUILD_CLIENTS_TESTS=ON
-DHIPBLASLT_ENABLE_ROCROLLER=ON
-DHIPBLASLT_ENABLE_FETCH=ON
-DHIPBLASLT_ENABLE_BLIS=OFF
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} pipModules: ${{ parameters.pipModules }}
extraPaths: /home/user/workspace/rocm/llvm/bin:/home/user/workspace/rocm/bin gpuTarget: ${{ job.target }}
installLatestCMake: true extraPaths: /home/user/workspace/rocm/llvm/bin:/home/user/workspace/rocm/bin
extraEnvVars: installLatestCMake: true
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/amdclang - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler - TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/amdclang
- ROCM_PATH:::/home/user/workspace/rocm - TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler
extraCopyDirectories: - ROCM_PATH:::/home/user/workspace/rocm
- deps extraCopyDirectories:
- deps
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 300 timeoutInMinutes: 300
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -238,6 +262,7 @@ jobs:
workspace: workspace:
clean: all clean: all
steps: steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
@@ -246,12 +271,16 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
@@ -259,6 +288,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './hipblaslt-test' testExecutable: './hipblaslt-test'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*' testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*'

View File

@@ -33,9 +33,8 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- libgtest-dev
- git - git
- ninja-build
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
@@ -52,79 +51,102 @@ parameters:
- llvm-project - llvm-project
- rocminfo - rocminfo
- rocPRIM - rocPRIM
- ROCR-Runtime
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: ${{ variables.MEDIUM_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor"
-DBUILD_BENCHMARK=ON
-DBUILD_TEST=ON -DBUILD_TEST=ON
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-GNinja -GNinja
extraCxxFlags: -Wno-deprecated-declarations
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }}
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -142,17 +164,20 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
@@ -160,6 +185,7 @@ jobs:
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin/hipcub' testDir: '$(Agent.BuildDirectory)/rocm/bin/hipcub'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipFFT
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -61,7 +80,11 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipFFT_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -79,12 +102,15 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
@@ -102,9 +128,11 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -113,12 +141,12 @@ jobs:
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: hipFFT_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
dependsOn: hipFFT_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
eq(${{ parameters.aggregatePipeline }}, False) eq(${{ parameters.aggregatePipeline }}, False)
) )
variables: variables:
@@ -128,12 +156,14 @@ jobs:
workspace: workspace:
clean: all clean: all
steps: steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
@@ -141,10 +171,12 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: hipFFT componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './hipfft-test' testExecutable: './hipfft-test'
testParameters: '--test_prob 0.002 --gtest_output=xml:./test_output.xml --gtest_color=yes' testParameters: '--test_prob 0.002 --gtest_output=xml:./test_output.xml --gtest_color=yes'

View File

@@ -33,18 +33,18 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- googletest
- git - git
- ninja-build
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- llvm-project
- ROCR-Runtime
- clr - clr
- llvm-project
- rocm-cmake
- rocminfo - rocminfo
- rocRAND - rocRAND
- ROCR-Runtime
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
@@ -52,62 +52,88 @@ parameters:
- llvm-project - llvm-project
- rocminfo - rocminfo
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- rocRAND - rocRAND
- ROCR-Runtime
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- rocFFT:
name: rocFFT
sparseCheckoutDir: projects/rocfft
skipUnifiedBuild: 'false'
buildDependsOn:
- hipRAND_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: HIP_ROCCLR_HOME - name: HIP_ROCCLR_HOME
value: $(Build.BinariesDirectory)/rocm value: $(Build.BinariesDirectory)/rocm
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }} ${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DBUILD_TEST=ON -DBUILD_TEST=ON
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip -DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor"
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-GNinja -GNinja
@@ -116,22 +142,25 @@ jobs:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
# parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# aptPackages: ${{ parameters.aptPackages }} parameters:
# gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
# extraEnvVars: gpuTarget: ${{ job.target }}
# - HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -149,10 +178,12 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
@@ -160,6 +191,7 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
@@ -167,8 +199,21 @@ jobs:
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin/hipRAND' testDir: '$(Agent.BuildDirectory)/rocm/bin/hipRAND'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
environment: test environment: test
gpuTarget: ${{ job.target }} 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 }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipSOLVER
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -66,12 +85,15 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipSOLVER_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -82,18 +104,21 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
# build external gtest and lapack # build external gtest and lapack
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: external componentName: external
cmakeBuildDir: '$(Build.SourcesDirectory)/deps/build' cmakeBuildDir: '$(Agent.BuildDirectory)/s/deps/build'
cmakeSourceDir: '$(Build.SourcesDirectory)/deps' cmakeSourceDir: '$(Agent.BuildDirectory)/s/deps'
installDir: '$(Pipeline.Workspace)/deps-install' installDir: '$(Pipeline.Workspace)/deps-install'
extraBuildFlags: >- extraBuildFlags: >-
-DBUILD_BOOST=OFF -DBUILD_BOOST=OFF
@@ -112,8 +137,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -123,44 +150,49 @@ jobs:
# extraCopyDirectories: # extraCopyDirectories:
# - deps-install # - deps-install
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hipSOLVER_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: hipSOLVER_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml preTargetFilter: ${{ parameters.componentName }}
parameters: gpuTarget: ${{ job.target }}
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
dependencyList: ${{ parameters.rocmTestDependencies }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml dependencyList: ${{ parameters.rocmTestDependencies }}
parameters: gpuTarget: ${{ job.target }}
componentName: hipSOLVER ${{ if parameters.triggerDownstreamJobs }}:
testDir: '$(Agent.BuildDirectory)/rocm/bin' downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
testExecutable: './hipsolver-test' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml parameters:
parameters: componentName: ${{ parameters.componentName }}
aptPackages: ${{ parameters.aptPackages }} testDir: '$(Agent.BuildDirectory)/rocm/bin'
environment: test testExecutable: './hipsolver-test'
gpuTarget: ${{ job.target }} testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipSPARSE
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -14,13 +33,11 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- libboost-program-options-dev
- googletest
- libfftw3-dev
- git
- gfortran - gfortran
- libgtest-dev - git
- libboost-program-options-dev
- libfftw3-dev
- ninja-build
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
@@ -49,19 +66,31 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a #- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: ubuntu2204, packageManager: apt, target: gfx1100 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- hipSPARSELt:
name: hipSPARSELt
sparseCheckoutDir: projects/hipsparselt
skipUnifiedBuild: 'false'
buildDependsOn:
- hipSPARSE_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipSPARSE_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -73,42 +102,57 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} 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 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake/
-DBUILD_CLIENTS_TESTS=ON -DBUILD_CLIENTS_TESTS=ON
-DBUILD_CLIENTS_SAMPLES=OFF -DBUILD_CLIENTS_SAMPLES=OFF
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
artifactName: hipSPARSE componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
artifactName: hipSPARSE componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
publish: false publish: false
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
parameters: parameters:
sourceDir: $(Build.SourcesDirectory)/build/clients sourceDir: $(Agent.BuildDirectory)/s/build/clients
contentsString: matrices/** contentsString: matrices/**
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
artifactName: testMatrices artifactName: testMatrices
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters: # parameters:
@@ -116,44 +160,65 @@ jobs:
# environment: test # environment: test
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hipSPARSE_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: hipSPARSE_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: packageManager: ${{ job.packageManager }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters:
parameters: preTargetFilter: ${{ parameters.componentName }}
checkoutRef: ${{ parameters.checkoutRef }} gpuTarget: ${{ job.target }}
dependencyList: ${{ parameters.rocmTestDependencies }} os: ${{ job.os }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml parameters:
parameters: checkoutRef: ${{ parameters.checkoutRef }}
componentName: hipSPARSE dependencyList: ${{ parameters.rocmTestDependencies }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' gpuTarget: ${{ job.target }}
testExecutable: './hipsparse-test' os: ${{ job.os }}
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes' ${{ if parameters.triggerDownstreamJobs }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
environment: test parameters:
gpuTarget: ${{ job.target }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './hipsparse-test'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
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 }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipSPARSELt
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -21,10 +40,12 @@ parameters:
- gfortran - gfortran
- libgfortran5 - libgfortran5
- libopenblas-dev - libopenblas-dev
- liblapack-dev
- name: pipModules - name: pipModules
type: object type: object
default: default:
- joblib - joblib
- msgpack
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
@@ -33,6 +54,7 @@ parameters:
- hipSPARSE - hipSPARSE
- llvm-project - llvm-project
- rocBLAS - rocBLAS
- rocm-cmake
- rocm_smi_lib - rocm_smi_lib
- rocminfo - rocminfo
- rocprofiler-register - rocprofiler-register
@@ -46,6 +68,7 @@ parameters:
- llvm-project - llvm-project
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
- rocm-cmake
- rocBLAS - rocBLAS
- rocminfo - rocminfo
- rocprofiler-register - rocprofiler-register
@@ -56,15 +79,17 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipSPARSELt_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -86,25 +111,37 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml 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/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
# ignore sparse checkout for monorepo case, we want access to hipblaslt directory
# sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
# NOTE: content between `---` is for transition support between old/new build systems
# and should be removed once transition is complete.
# -----------------------------
# Build and install gtest and lapack # Build and install gtest and lapack
# $(Pipeline.Workspace)/deps is a temporary folder for the build process # $(Pipeline.Workspace)/deps is a temporary folder for the build process
# $(Pipeline.Workspace)/s/deps is part of the hipSPARSELt repo # $(Pipeline.Workspace)/s/deps is part of the hipSPARSELt repo
- script: mkdir $(Pipeline.Workspace)/deps - script: mkdir -p $(Pipeline.Workspace)/deps
displayName: Create temp folder for external dependencies displayName: Create temp folder for external dependencies
# hipSPARSELt already has a CMake script for external deps, so we can just run that # 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 # https://github.com/ROCm/hipSPARSELt/blob/develop/deps/CMakeLists.txt
- script: cmake $(Pipeline.Workspace)/s/deps - ${{ if ne(parameters.sparseCheckoutDir, '') }}:
script: cmake $(Pipeline.Workspace)/s/projects/hipsparselt/deps
${{ else }}:
script: cmake $(Pipeline.Workspace)/s/deps
displayName: Configure hipSPARSELt external dependencies displayName: Configure hipSPARSELt external dependencies
workingDirectory: $(Pipeline.Workspace)/deps workingDirectory: $(Pipeline.Workspace)/deps
- script: make - script: make
@@ -113,81 +150,115 @@ jobs:
- script: sudo make install - script: sudo make install
displayName: Install hipSPARSELt external dependencies displayName: Install hipSPARSELt external dependencies
workingDirectory: $(Pipeline.Workspace)/deps workingDirectory: $(Pipeline.Workspace)/deps
# -----------------------------
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
# NOTE: the following options are old build only
# and can be removed after full transition to new build
# -DAMDGPU_TARGETS=${{ job.target }}
# -DCMAKE_Fortran_COMPILER=f95
# -DTensile_LOGIC=
# -DTensile_CPU_THREADS=
# -DTensile_LIBRARY_FORMAT=msgpack
# -DROCM_PATH=$(Agent.BuildDirectory)/rocm
# -DBUILD_CLIENTS_TESTS=ON
# -DBUILD_USE_LOCAL_TENSILE=OFF
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_Fortran_COMPILER=f95 -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
-DGPU_TARGETS=${{ job.target }}
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-DCMAKE_Fortran_COMPILER=f95
-DTensile_LOGIC= -DTensile_LOGIC=
-DTensile_CPU_THREADS= -DTensile_CPU_THREADS=
-DTensile_LIBRARY_FORMAT=msgpack -DTensile_LIBRARY_FORMAT=msgpack
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DBUILD_CLIENTS_TESTS=ON -DBUILD_CLIENTS_TESTS=ON
-DBUILD_USE_LOCAL_TENSILE=OFF
-DHIPSPARSELT_ENABLE_FETCH=ON
-GNinja -GNinja
${{ if ne(parameters.sparseCheckoutDir, '') }}:
cmakeSourceDir: $(Build.SourcesDirectory)/projects/hipsparselt
cmakeBuildDir: $(Build.SourcesDirectory)/projects/hipsparselt
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} pipModules: ${{ parameters.pipModules }}
extraCopyDirectories: gpuTarget: ${{ job.target }}
- deps extraCopyDirectories:
extraPaths: /home/user/workspace/rocm/llvm/bin:/home/user/workspace/rocm/bin - deps
extraEnvVars: extraPaths: /home/user/workspace/rocm/llvm/bin:/home/user/workspace/rocm/bin
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- CMAKE_CXX_COMPILER:::/home/user/workspace/rocm/llvm/bin/hipcc - TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang
- TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler - CMAKE_CXX_COMPILER:::/home/user/workspace/rocm/llvm/bin/hipcc
installLatestCMake: true - TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler
installLatestCMake: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hipSPARSELt_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: hipSPARSELt_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
condition: timeoutInMinutes: 120
and(succeeded(), dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), condition:
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), and(succeeded(),
eq(${{ parameters.aggregatePipeline }}, False) eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
variables: eq(${{ parameters.aggregatePipeline }}, False)
- group: common )
- template: /.azuredevops/variables-global.yml variables:
pool: ${{ job.target }}_test_pool - group: common
workspace: - template: /.azuredevops/variables-global.yml
clean: all pool: ${{ job.target }}_test_pool
steps: workspace:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml clean: all
parameters: steps:
aptPackages: ${{ parameters.aptPackages }} - checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml parameters:
parameters: aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmTestDependencies }} preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
componentName: hipSPARSELt checkoutRef: ${{ parameters.checkoutRef }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' dependencyList: ${{ parameters.rocmTestDependencies }}
testExecutable: './hipsparselt-test' gpuTarget: ${{ job.target }}
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*' os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml ${{ if parameters.triggerDownstreamJobs }}:
parameters: downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
pipModules: ${{ parameters.pipModules }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
environment: test parameters:
gpuTarget: ${{ job.target }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './hipsparselt-test'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes --gtest_filter=*pre_checkin*'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: hipTensor
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -51,7 +70,7 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: hipTensor_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -66,17 +85,21 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/llvm -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/llvm
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DHIPTENSOR_BUILD_TESTS=ON -DHIPTENSOR_BUILD_TESTS=ON
@@ -84,9 +107,12 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -94,44 +120,47 @@ jobs:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: hipTensor_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 90 - job: ${{ parameters.componentName }}_test_${{ job.target }}
dependsOn: hipTensor_build_${{ job.target }} timeoutInMinutes: 90
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmTestDependencies }} checkoutRef: ${{ parameters.checkoutRef }}
gpuTarget: ${{ job.target }} dependencyList: ${{ parameters.rocmTestDependencies }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml ${{ if parameters.triggerDownstreamJobs }}:
parameters: downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
componentName: hipTensor - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testDir: '$(Agent.BuildDirectory)/rocm/bin/hiptensor' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testParameters: '-E ".*-extended" --output-on-failure --force-new-ctest-process --output-junit test_output.xml' parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml componentName: ${{ parameters.componentName }}
parameters: testDir: '$(Agent.BuildDirectory)/rocm/bin/hiptensor'
aptPackages: ${{ parameters.aptPackages }} testParameters: '-E ".*-extended" --extra-verbose --output-on-failure --force-new-ctest-process --output-junit test_output.xml'
environment: test - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
gpuTarget: ${{ job.target }} parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -71,7 +71,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:

View File

@@ -30,13 +30,17 @@ parameters:
default: default:
buildJobs: buildJobs:
- { os: ubuntu2204, packageManager: apt } - { os: ubuntu2204, packageManager: apt }
# - { os: ubuntu2404, packageManager: apt }
- { os: almalinux8, packageManager: dnf } - { os: almalinux8, packageManager: dnf }
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: llvm_project_${{ job.os }} - job: llvm_project_${{ job.os }}
pool: pool:
name: 'rocm-ci_ultra_build_pool' ${{ if eq(job.os, 'ubuntu2404') }}:
name: 'rocm-ci_high_build_pool_2404' #temporarily using 'high' pool while 'ultra' is down
${{ else }}:
name: 'rocm-ci_ultra_build_pool'
${{ if eq(job.os, 'almalinux8') }}: ${{ if eq(job.os, 'almalinux8') }}:
container: container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest image: rocmexternalcicd.azurecr.io/manylinux228:latest
@@ -63,7 +67,6 @@ jobs:
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
skipLlvmSymlink: true
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
@@ -104,6 +107,12 @@ jobs:
cmakeSourceDir: '$(Build.SourcesDirectory)/llvm' cmakeSourceDir: '$(Build.SourcesDirectory)/llvm'
installDir: '$(Build.BinariesDirectory)/llvm' installDir: '$(Build.BinariesDirectory)/llvm'
# use llvm-lit to run unit tests for llvm, clang, and lld # use llvm-lit to run unit tests for llvm, clang, and lld
- task: Bash@3
displayName: 'Copy llvm-lit to install directory'
inputs:
targetType: inline
script: |
cp $(Build.SourcesDirectory)/llvm/build/bin/llvm-lit $(Build.BinariesDirectory)/llvm/bin/
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: check-llvm componentName: check-llvm

View File

@@ -0,0 +1,308 @@
parameters:
- name: componentName
type: string
default: origami
- 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
- python3
- python3-dev
- python3-pip
- python3-venv
- libgtest-dev
- libboost-filesystem-dev
- libboost-program-options-dev
- name: pipModules
type: object
default:
- nanobind>=2.0.0
- pytest
- pytest-cov
- name: rocmDependencies
type: object
default:
- clr
- llvm-project
- rocm-cmake
- rocminfo
- ROCR-Runtime
- rocprofiler-register
- name: rocmTestDependencies
type: object
default:
- clr
- llvm-project
- rocm-cmake
- rocminfo
- ROCR-Runtime
- rocprofiler-register
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx90a }
# - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
# - { os: ubuntu2204, packageManager: apt, target: gfx1151 }
# - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
- name: downstreamComponentMatrix
type: object
default:
- hipBLASLt:
name: hipBLASLt
sparseCheckoutDir: projects/hipblaslt
skipUnifiedBuild: 'false'
buildDependsOn:
- origami_build
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: origami_build_${{ job.os }}
${{ 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/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- ${{ if ne(job.os, 'almalinux8') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- catch2
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- 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++
-DORIGAMI_BUILD_SHARED_LIBS=ON
-DORIGAMI_ENABLE_PYTHON=ON
-DORIGAMI_BUILD_TESTING=ON
-DORIGAMI_ENABLE_FETCH=ON
-GNinja
- ${{ if ne(job.os, 'almalinux8') }}:
- task: PublishPipelineArtifact@1
displayName: 'Publish Build Directory Artifact'
inputs:
targetPath: '$(Agent.BuildDirectory)/s/build'
artifact: '${{ parameters.componentName }}_${{ job.os }}_build_dir'
publishLocation: 'pipeline'
- task: PublishPipelineArtifact@1
displayName: 'Publish Python Source Artifact'
inputs:
targetPath: '$(Agent.BuildDirectory)/s/python'
artifact: '${{ parameters.componentName }}_${{ job.os }}_python_src'
publishLocation: 'pipeline'
- 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 eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}:
- job: origami_test_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 120
dependsOn: origami_build_${{ job.os }}
condition:
and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
eq(${{ parameters.aggregatePipeline }}, False)
)
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: ${{ job.target }}_test_pool
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:
- gtest
- ${{ if ne(job.os, 'almalinux8') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- catch2
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
preTargetFilter: ${{ parameters.componentName }}
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 }}
- task: CMake@1
displayName: 'Origami Test CMake Configuration'
inputs:
cmakeArgs: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DORIGAMI_BUILD_SHARED_LIBS=ON
-DORIGAMI_ENABLE_PYTHON=ON
-DORIGAMI_BUILD_TESTING=ON
-GNinja
$(Agent.BuildDirectory)/s
- task: Bash@3
displayName: 'Build Origami Tests and Python Bindings'
inputs:
targetType: inline
workingDirectory: build
script: |
cmake --build . --target origami-tests origami_python -- -j$(nproc)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
# Run tests using CTest (discovers and runs both C++ and Python tests)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: 'build'
testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml'
# Test pip install workflow
# - task: Bash@3
# displayName: 'Test Pip Install'
# inputs:
# targetType: inline
# script: |
# set -e
# echo "==================================================================="
# echo "Testing pip install workflow (pip install -e .)"
# echo "==================================================================="
# # Set environment variables for pip install CMake build
# export ROCM_PATH=$(Agent.BuildDirectory)/rocm
# export CMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm:$(Agent.BuildDirectory)/vendor
# export CMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
# echo "ROCM_PATH: $ROCM_PATH"
# echo "CMAKE_PREFIX_PATH: $CMAKE_PREFIX_PATH"
# echo "CMAKE_CXX_COMPILER: $CMAKE_CXX_COMPILER"
# echo ""
# # Install from source directory
# cd "$(Agent.BuildDirectory)/s/python"
# pip install -e .
# # Verify import works
# echo ""
# echo "Verifying origami can be imported..."
# python3 -c "import origami; print('✓ Successfully imported origami')"
# # Run pytest on installed package
# echo ""
# echo "Running pytest tests..."
# python3 -m pytest tests/ -v -m "not slow" --tb=short
# echo ""
# echo "==================================================================="
# echo "Pip install test completed successfully"
# echo "==================================================================="
- 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 }}

View File

@@ -1,10 +1,35 @@
parameters: parameters:
- name: componentName
type: string
default: rccl
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' default: ''
- name: systemsRepo
type: string
default: systems_repo
- name: systemsSparseCheckoutDir
type: string
default: 'projects/rocprofiler-sdk'
# 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -15,7 +40,6 @@ parameters:
default: default:
- cmake - cmake
- git - git
- googletest
- libboost-program-options-dev - libboost-program-options-dev
- libdrm-dev - libdrm-dev
- libfftw3-dev - libfftw3-dev
@@ -58,110 +82,161 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- rocprofiler-sdk:
name: rocprofiler-sdk
sparseCheckoutDir: ''
skipUnifiedBuild: 'false'
buildDependsOn:
- rccl_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rccl_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 90 ${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 120
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: HIP_ROCCLR_HOME - name: HIP_ROCCLR_HOME
value: $(Build.BinariesDirectory)/rocm value: $(Build.BinariesDirectory)/rocm
pool: ${{ variables.HIGH_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml 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/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
submoduleBehaviour: recursive submoduleBehaviour: recursive
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc
-DCMAKE_C_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 -DCMAKE_BUILD_TYPE=Release
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DBUILD_TESTS=ON -DBUILD_TESTS=ON
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake;$(Agent.BuildDirectory)/rocm/libexec/hipify -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/rocm/share/rocm/cmake;$(Agent.BuildDirectory)/rocm/libexec/hipify
-DAMDGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
extraEnvVars: gpuTarget: ${{ job.target }}
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
installLatestCMake: true - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
installLatestCMake: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rccl_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 120 - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: rccl_build_${{ job.target }} timeoutInMinutes: 120
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml preTargetFilter: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml os: ${{ job.os }}
parameters: gpuTarget: ${{ job.target }}
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
dependencyList: ${{ parameters.rocmTestDependencies }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml dependencyList: ${{ parameters.rocmTestDependencies }}
parameters: os: ${{ job.os }}
componentName: rccl gpuTarget: ${{ job.target }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' ${{ if parameters.triggerDownstreamJobs }}:
testExecutable: './rccl-UnitTests' downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} componentName: ${{ parameters.componentName }}
environment: test os: ${{ job.os }}
gpuTarget: ${{ job.target }} testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rccl-UnitTests'
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
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.systemsRepo }}
sparseCheckoutDir: ${{ parameters.systemsSparseCheckoutDir }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}
${{ if parameters.unifiedBuild }}:
buildDependsOn: ${{ component.unifiedBuild.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ component.unifiedBuild.downstreamAggregateNames }}
${{ else }}:
buildDependsOn: ${{ component.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rdc
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -33,6 +52,7 @@ parameters:
- clr - clr
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
- hipRAND
- llvm-project - llvm-project
- rocBLAS - rocBLAS
- rocm-cmake - rocm-cmake
@@ -43,6 +63,7 @@ parameters:
- rocprofiler - rocprofiler
- rocprofiler-register - rocprofiler-register
- rocprofiler-sdk - rocprofiler-sdk
- rocRAND
- ROCR-Runtime - ROCR-Runtime
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
@@ -74,7 +95,11 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rdc_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -85,16 +110,22 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
parameters:
cmakeVersion: '3.25.0'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
# Build grpc # Build grpc
- task: Bash@3 - task: Bash@3
displayName: 'git clone grpc' displayName: 'git clone grpc'
@@ -104,6 +135,7 @@ jobs:
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Build.SourcesDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
cmakeBuildDir: $(Build.SourcesDirectory)/grpc/build cmakeBuildDir: $(Build.SourcesDirectory)/grpc/build
cmakeSourceDir: $(Build.SourcesDirectory)/grpc cmakeSourceDir: $(Build.SourcesDirectory)/grpc
installDir: $(Build.SourcesDirectory)/bin installDir: $(Build.SourcesDirectory)/bin
@@ -117,6 +149,7 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DGRPC_ROOT="$(Build.SourcesDirectory)/bin" -DGRPC_ROOT="$(Build.SourcesDirectory)/bin"
@@ -126,9 +159,12 @@ jobs:
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -136,60 +172,64 @@ jobs:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rdc_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rdc_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: ROCM_PATH - template: /.azuredevops/variables-global.yml
value: $(Agent.BuildDirectory)/rocm - name: ROCM_PATH
- name: ROCM_DIR value: $(Agent.BuildDirectory)/rocm
value: $(Agent.BuildDirectory)/rocm - name: ROCM_DIR
pool: ${{ job.target }}_test_pool value: $(Agent.BuildDirectory)/rocm
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml gpuTarget: ${{ job.target }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
dependencyList: ${{ parameters.rocmTestDependencies }} parameters:
gpuTarget: ${{ job.target }} checkoutRef: ${{ parameters.checkoutRef }}
- task: Bash@3 dependencyList: ${{ parameters.rocmTestDependencies }}
displayName: Setup test environment gpuTarget: ${{ job.target }}
inputs: ${{ if parameters.triggerDownstreamJobs }}:
targetType: inline downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
script: | - task: Bash@3
sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rdcd /usr/sbin/rdcd displayName: Setup test environment
echo $(Agent.BuildDirectory)/rocm/lib/rdc/grpc/lib | sudo tee /etc/ld.so.conf.d/grpc.conf inputs:
sudo ldconfig -v targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml script: |
- task: Bash@3 sudo ln -s $(Agent.BuildDirectory)/rocm/bin/rdcd /usr/sbin/rdcd
displayName: Test rdc echo $(Agent.BuildDirectory)/rocm/lib/rdc/grpc/lib | sudo tee /etc/ld.so.conf.d/grpc.conf
inputs: sudo ldconfig -v
targetType: inline - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
script: >- - task: Bash@3
$(Agent.BuildDirectory)/rocm/share/rdc/rdctst_tests/rdctst displayName: Test rdc
--batch_mode inputs:
--start_rdcd targetType: inline
--unauth_comm script: >-
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml $(Agent.BuildDirectory)/rocm/share/rdc/rdctst_tests/rdctst
parameters: --batch_mode
aptPackages: ${{ parameters.aptPackages }} --start_rdcd
environment: test --unauth_comm
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
extraPaths: /home/user/workspace/rocm/bin parameters:
aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}
extraPaths: /home/user/workspace/rocm/bin

View File

@@ -86,8 +86,7 @@ jobs:
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:

View File

@@ -73,8 +73,7 @@ jobs:
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: HIP_ROCCLR_HOME - name: HIP_ROCCLR_HOME
value: $(Build.BinariesDirectory)/rocm value: $(Build.BinariesDirectory)/rocm
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:

View File

@@ -33,17 +33,15 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- python3-venv
- git - git
- libmsgpack-dev
- gfortran - gfortran
- libopenblas-dev
- googletest
- libgtest-dev
- wget
- python3-pip
- libdrm-dev - libdrm-dev
- libmsgpack-dev
- libopenblas-dev
- ninja-build
- python3-pip
- python3-venv
- wget
- name: pipModules - name: pipModules
type: object type: object
default: default:
@@ -52,18 +50,17 @@ parameters:
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr
- rocminfo
- rocprofiler-register
- rocm_smi_lib
- rocm-core
- aomp - aomp
- aomp-extras - clr
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
- llvm-project
- rocm-cmake
- rocm-core
- rocm_smi_lib
- rocminfo
- rocprofiler-register
- ROCR-Runtime
- roctracer - roctracer
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
@@ -73,6 +70,7 @@ parameters:
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
- llvm-project - llvm-project
- rocm-cmake
- rocminfo - rocminfo
- rocprofiler-register - rocprofiler-register
- rocm_smi_lib - rocm_smi_lib
@@ -83,44 +81,56 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
#- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
#- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
- name: downstreamComponentMatrix - name: downstreamComponentMatrix
type: object type: object
default: default:
# rocSOLVER depends on both rocBLAS and rocPRIM - rocSPARSE:
# for a unified build, rocBLAS will be the one to call rocSOLVER name: rocSPARSE
- rocSOLVER: sparseCheckoutDir: projects/rocsparse
name: rocSOLVER
sparseCheckoutDir: projects/rocsolver
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - rocBLAS_build
- rocBLAS_build_gfx942 # rocSOLVER depends on both rocBLAS and rocPRIM
gfx90a: # for a unified build, rocBLAS will be the one to call rocSOLVER
- rocBLAS_build_gfx90a # - rocSOLVER:
unifiedBuild: # name: rocSOLVER
downstreamAggregateNames: rocBLAS+rocPRIM # sparseCheckoutDir: projects/rocsolver
buildDependsOn: # skipUnifiedBuild: 'false'
gfx942: # buildDependsOn:
- rocBLAS_build_gfx942 # - rocBLAS_build
- rocPRIM_build_gfx942 # unifiedBuild:
gfx90a: # downstreamAggregateNames: rocBLAS+rocPRIM
- rocBLAS_build_gfx90a # buildDependsOn:
- rocPRIM_build_gfx90a # - rocBLAS_build
# - rocPRIM_build
# temporary rocblas->hipblas downstream path while the SOLVERs are disabled
- hipBLAS:
name: hipBLAS
sparseCheckoutDir: projects/hipblas
skipUnifiedBuild: 'false'
buildDependsOn:
- rocBLAS_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -133,6 +143,10 @@ jobs:
- name: ROCM_PATH - name: ROCM_PATH
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
pool: ${{ variables.MEDIUM_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -140,66 +154,72 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-latest.yml 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/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aocl.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
cmakeSourceDir: $(Agent.BuildDirectory)/sparse/projects/rocblas
cmakeBuildDir: $(Agent.BuildDirectory)/sparse/projects/rocblas/build
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_TOOLCHAIN_FILE=toolchain-linux.cmake -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm/llvm;$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.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_TESTS=ON
-DBUILD_CLIENTS_BENCHMARKS=OFF
-DBUILD_CLIENTS_SAMPLES=OFF
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
installAOCL: true pipModules: ${{ parameters.pipModules }}
gpuTarget: ${{ job.target }} installAOCL: true
extraEnvVars: gpuTarget: ${{ job.target }}
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler - TENSILE_ROCM_ASSEMBLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang
- ROCM_PATH:::/home/user/workspace/rocm - TENSILE_ROCM_OFFLOAD_BUNDLER_PATH:::/home/user/workspace/rocm/llvm/bin/clang-offload-bundler
- ROCM_PATH:::/home/user/workspace/rocm
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} timeoutInMinutes: 120
dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -213,6 +233,7 @@ jobs:
workspace: workspace:
clean: all clean: all
steps: steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
@@ -221,12 +242,16 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
@@ -234,6 +259,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rocblas-test' testExecutable: './rocblas-test'
testParameters: '--yaml rocblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes' testParameters: '--yaml rocblas_smoke.yaml --gtest_output=xml:./test_output.xml --gtest_color=yes'
@@ -251,11 +277,11 @@ jobs:
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ component.sparseCheckoutDir }} sparseCheckoutDir: ${{ component.sparseCheckoutDir }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}
${{ if parameters.unifiedBuild }}: ${{ if parameters.unifiedBuild }}:
buildDependsOn: ${{ component.unifiedBuild.buildDependsOn }} buildDependsOn: ${{ component.unifiedBuild.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ component.unifiedBuild.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ component.unifiedBuild.downstreamAggregateNames }}
${{ else }}: ${{ else }}:
buildDependsOn: ${{ component.buildDependsOn }} buildDependsOn: ${{ component.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}

View File

@@ -1,10 +1,32 @@
parameters: parameters:
- name: componentName
type: string
default: rocDecode
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' default: ''
- name: rocPyDecodeRepo
type: string
default: rocpydecode_repo
# 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -13,29 +35,28 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- python3-pip
- cmake - cmake
- ninja-build
- pkg-config
- ffmpeg - ffmpeg
- libavcodec-dev - libavcodec-dev
- libavformat-dev - libavformat-dev
- libavutil-dev - libavutil-dev
- libdrm-dev
- libstdc++-12-dev - libstdc++-12-dev
- libva-amdgpu-dev - libva-amdgpu-dev
- mesa-amdgpu-va-drivers - mesa-amdgpu-va-drivers
- libdrm-dev - ninja-build
- pkg-config
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr - clr
- rocminfo - llvm-project
- rocm-cmake
- rocm-core - rocm-core
- rocminfo
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
@@ -48,53 +69,86 @@ parameters:
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs:
- { os: ubuntu2204, packageManager: apt }
- { os: almalinux8, packageManager: dnf }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- rocPyDecode:
name: rocPyDecode
sparseCheckoutDir: ''
skipUnifiedBuild: 'false'
buildDependsOn:
- rocDecode_build
jobs: jobs:
- job: rocDecode_build - ${{ each job in parameters.jobMatrix.buildJobs }}:
variables: - job: ${{ parameters.componentName }}_build_${{ job.os }}
- group: common ${{ if parameters.buildDependsOn }}:
- template: /.azuredevops/variables-global.yml dependsOn:
- name: ROCM_PATH - ${{ each build in parameters.buildDependsOn }}:
value: $(Agent.BuildDirectory)/rocm - ${{ build }}_${{ job.os }}
pool: variables:
vmImage: ${{ variables.BASE_BUILD_POOL }} - group: common
workspace: - template: /.azuredevops/variables-global.yml
clean: all - name: ROCM_PATH
steps: value: $(Agent.BuildDirectory)/rocm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml pool:
parameters: vmImage: ${{ variables.BASE_BUILD_POOL }}
aptPackages: ${{ parameters.aptPackages }} ${{ if eq(job.os, 'almalinux8') }}:
registerROCmPackages: true container:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml image: rocmexternalcicd.azurecr.io/manylinux228:latest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml endpoint: ContainerService3
parameters: workspace:
checkoutRepo: ${{ parameters.checkoutRepo }} clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmDependencies }} aptPackages: ${{ parameters.aptPackages }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml registerROCmPackages: true
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
extraBuildFlags: >- - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
-DCMAKE_BUILD_TYPE=Release parameters:
-GNinja checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml parameters:
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml checkoutRef: ${{ parameters.checkoutRef }}
# parameters: dependencyList: ${{ parameters.rocmDependencies }}
# aptPackages: ${{ parameters.aptPackages }} os: ${{ job.os }}
# registerROCmPackages: true aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters:
# aptPackages: ${{ parameters.aptPackages }}
# registerROCmPackages: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: rocDecode_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: rocDecode_build dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -114,20 +168,27 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
registerROCmPackages: true registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- task: Bash@3 - task: Bash@3
displayName: Build rocDecode tests displayName: Build rocDecode tests
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
${{ iif(eq(job.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
mkdir rocDecode-tests mkdir rocDecode-tests
cd rocDecode-tests cd rocDecode-tests
cmake $(Agent.BuildDirectory)/rocm/share/rocdecode/test cmake $(Agent.BuildDirectory)/rocm/share/rocdecode/test
@@ -136,9 +197,22 @@ jobs:
parameters: parameters:
componentName: rocDecode componentName: rocDecode
testDir: 'rocDecode-tests' testDir: 'rocDecode-tests'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true registerROCmPackages: true
environment: test environment: test
gpuTarget: ${{ job.target }} 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.rocPyDecodeRepo }}
sparseCheckoutDir: ${{ component.sparseCheckoutDir }}
buildDependsOn: ${{ component.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocFFT
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -59,10 +78,23 @@ parameters:
target: gfx942 target: gfx942
- gfx90a: - gfx90a:
target: gfx90a target: gfx90a
- name: downstreamComponentMatrix
type: object
default:
- hipFFT:
name: hipFFT
sparseCheckoutDir: projects/hipfft
skipUnifiedBuild: 'false'
buildDependsOn:
- rocFFT_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocFFT_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_ubuntu2204_${{ job.target }} # todo: un-hardcode OS
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -79,12 +111,15 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
@@ -101,9 +136,11 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -114,12 +151,12 @@ jobs:
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: rocFFT_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_ubuntu2204_${{ job.target }}
dependsOn: rocFFT_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_ubuntu2204_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
eq(${{ parameters.aggregatePipeline }}, False) eq(${{ parameters.aggregatePipeline }}, False)
) )
variables: variables:
@@ -129,12 +166,14 @@ jobs:
workspace: workspace:
clean: all clean: all
steps: steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
@@ -142,10 +181,12 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: rocFFT componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rocfft-test' testExecutable: './rocfft-test'
testParameters: '--test_prob 0.004 --gtest_output=xml:./test_output.xml --gtest_color=yes' testParameters: '--test_prob 0.004 --gtest_output=xml:./test_output.xml --gtest_color=yes'
@@ -154,3 +195,15 @@ jobs:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
environment: test environment: test
gpuTarget: ${{ job.target }} 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 }}

View File

@@ -1,4 +1,7 @@
parameters: parameters:
- name: componentName
type: string
default: rocJPEG
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
@@ -44,32 +47,44 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocJPEG_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: ROCM_PATH - name: ROCM_PATH
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
pool: pool:
vmImage: ${{ variables.BASE_BUILD_POOL }} ${{ if eq(job.os, 'ubuntu2404') }}:
name: rocm-ci_medium_build_pool_2404
${{ else }}:
name: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
registerROCmPackages: true registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
@@ -80,17 +95,26 @@ jobs:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm"
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters: # parameters:
@@ -99,8 +123,8 @@ jobs:
# registerROCmPackages: true # registerROCmPackages: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: rocJPEG_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: rocJPEG_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -120,22 +144,28 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
registerROCmPackages: true registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- task: Bash@3 - task: Bash@3
displayName: Build rocJPEG tests displayName: Build rocJPEG tests
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
${{ iif(eq(job.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
mkdir rocJPEG-tests mkdir rocJPEG-tests
cd rocJPEG-tests cd rocJPEG-tests
cmake $(Agent.BuildDirectory)/rocm/share/rocjpeg/test cmake $(Agent.BuildDirectory)/rocm/share/rocjpeg/test
@@ -144,6 +174,7 @@ jobs:
parameters: parameters:
componentName: rocJPEG componentName: rocJPEG
testDir: 'rocJPEG-tests' testDir: 'rocJPEG-tests'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}

View File

@@ -27,6 +27,7 @@ parameters:
- numpy - numpy
- tomli - tomli
- scipy - scipy
- pybind11
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:

View File

@@ -68,8 +68,12 @@ parameters:
- { os: almalinux8, packageManager: dnf, target: gfx1100 } - { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 } - { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx942 } - { os: ubuntu2204, packageManager: apt, target: gfx942, shard: 1, shardCount: 3 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a } - { os: ubuntu2204, packageManager: apt, target: gfx942, shard: 2, shardCount: 3 }
- { os: ubuntu2204, packageManager: apt, target: gfx942, shard: 3, shardCount: 3 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a, shard: 1, shardCount: 3 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a, shard: 2, shardCount: 3 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a, shard: 3, shardCount: 3 }
- name: downstreamComponentMatrix - name: downstreamComponentMatrix
type: object type: object
default: default:
@@ -78,36 +82,29 @@ parameters:
sparseCheckoutDir: projects/rocthrust sparseCheckoutDir: projects/rocthrust
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - rocPRIM_build
- rocPRIM_build_gfx942
gfx90a:
- rocPRIM_build_gfx90a
- hipCUB: - hipCUB:
name: hipCUB name: hipCUB
sparseCheckoutDir: projects/hipcub sparseCheckoutDir: projects/hipcub
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - rocPRIM_build
- rocPRIM_build_gfx942
gfx90a:
- rocPRIM_build_gfx90a
# rocSOLVER depends on both rocBLAS and rocPRIM # rocSOLVER depends on both rocBLAS and rocPRIM
# for a unified build, rocBLAS will be the one to call rocSOLVER # for a unified build, rocBLAS will be the one to call rocSOLVER
- rocSOLVER: # - rocSOLVER:
name: rocSOLVER # name: rocSOLVER
sparseCheckoutDir: projects/rocsolver # sparseCheckoutDir: projects/rocsolver
skipUnifiedBuild: 'true' # skipUnifiedBuild: 'true'
buildDependsOn: # buildDependsOn:
gfx942: # - rocPRIM_build
- rocPRIM_build_gfx942
gfx90a:
- rocPRIM_build_gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -144,6 +141,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }} os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor" -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor"
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
@@ -172,7 +170,7 @@ jobs:
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}_shard_${{ job.shard }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
@@ -212,6 +210,7 @@ jobs:
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocprim' testDir: '$(Agent.BuildDirectory)/rocm/bin/rocprim'
extraTestParameters: '-I ${{ job.shard }},,${{ job.shardCount }}'
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:

View File

@@ -5,6 +5,22 @@ parameters:
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -36,6 +52,7 @@ parameters:
- clr - clr
- llvm-project - llvm-project
- rocDecode - rocDecode
- rocJPEG
- rocm-cmake - rocm-cmake
- rocm-core - rocm-core
- rocminfo - rocminfo
@@ -46,19 +63,19 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocPyDecode_build_${{ job.target }} - job: rocPyDecode_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -73,16 +90,20 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: Bash@3 - task: Bash@3
displayName: 'Save Python Package Paths' displayName: 'Save Python Package Paths'
inputs: inputs:
@@ -189,12 +210,13 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: 'Download Pipeline Wheel Files' displayName: 'Download Pipeline Wheel Files'
retryCountOnTaskFailure: 3
inputs: inputs:
itemPattern: '**/*.whl' itemPattern: '**/*.whl'
targetPath: $(Agent.BuildDirectory) targetPath: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
@@ -221,25 +243,17 @@ jobs:
- task: CMake@1 - task: CMake@1
displayName: 'rocPyDecode Test CMake Flags' displayName: 'rocPyDecode Test CMake Flags'
inputs: inputs:
workingDirectory: $(Agent.BuildDirectory)/rocm/share/rocpydecode/tests
cmakeArgs: >- cmakeArgs: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(PYTHON_USER_SITE)/pybind11;$(PYTHON_DIST_PACKAGES)/pybind11;$(PYBIND11_PATH) -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(PYTHON_USER_SITE)/pybind11;$(PYTHON_DIST_PACKAGES)/pybind11;$(PYBIND11_PATH)
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
.. .
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: rocPyDecode componentName: rocPyDecode
testDir: $(Build.SourcesDirectory)/build testDir: $(Agent.BuildDirectory)/rocm/share/rocpydecode/tests
# sudo required for pip install but screws up permissions for next pipeline run
- task: Bash@3
displayName: Clean up test environment
condition: always()
inputs:
targetType: inline
script: |
pip uninstall -y rocPyDecode
pip uninstall -y hip-python
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}

View File

@@ -78,16 +78,21 @@ parameters:
sparseCheckoutDir: projects/hiprand sparseCheckoutDir: projects/hiprand
skipUnifiedBuild: 'false' skipUnifiedBuild: 'false'
buildDependsOn: buildDependsOn:
gfx942: - rocRAND_build
- rocRAND_build_gfx942 - MIOpen:
gfx90a: name: MIOpen
- rocRAND_build_gfx90a sparseCheckoutDir: projects/miopen
skipUnifiedBuild: 'true'
buildDependsOn:
- rocRAND_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml

View File

@@ -33,13 +33,11 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- ninja-build
- libsuitesparse-dev
- gfortran - gfortran
- libfmt-dev
- git - git
- googletest - libfmt-dev
- libgtest-dev - libsuitesparse-dev
- ninja-build
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
@@ -72,31 +70,64 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
#- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
#- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- hipBLAS:
name: hipBLAS
sparseCheckoutDir: projects/hipblas
skipUnifiedBuild: 'false'
buildDependsOn:
- rocSOLVER_build
# hipSOLVER depends on both rocSOLVER and rocSPARSE
# for a unified build, rocSOLVER will be the one to call hipSOLVER
# - hipSOLVER:
# name: hipSOLVER
# sparseCheckoutDir: projects/hipsolver
# skipUnifiedBuild: 'false'
# buildDependsOn:
# - rocSOLVER_build
# unifiedBuild:
# downstreamAggregateNames: rocSOLVER+rocSPARSE
# buildDependsOn:
# - rocSOLVER_build
# - rocSPARSE_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: ${{ variables.MEDIUM_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
@@ -108,10 +139,15 @@ jobs:
targetType: inline targetType: inline
script: git clone --depth 1 --branch v3.9.1 https://github.com/Reference-LAPACK/lapack script: git clone --depth 1 --branch v3.9.1 https://github.com/Reference-LAPACK/lapack
workingDirectory: '$(Build.SourcesDirectory)' workingDirectory: '$(Build.SourcesDirectory)'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
@@ -119,8 +155,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: lapack componentName: lapack
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DCMAKE_Fortran_FLAGS=-fno-optimize-sibling-calls -DCMAKE_Fortran_FLAGS=-fno-optimize-sibling-calls
-DBUILD_TESTING=OFF -DBUILD_TESTING=OFF
-DCBLAS=ON -DCBLAS=ON
@@ -131,8 +169,9 @@ jobs:
installDir: '$(Pipeline.Workspace)/deps-install' installDir: '$(Pipeline.Workspace)/deps-install'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Pipeline.Workspace)/deps-install -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Pipeline.Workspace)/deps-install;$(Agent.BuildDirectory)/vendor
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
@@ -144,23 +183,26 @@ jobs:
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
extraCopyDirectories: gpuTarget: ${{ job.target }}
- deps-install extraCopyDirectories:
- deps-install
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -174,6 +216,7 @@ jobs:
workspace: workspace:
clean: all clean: all
steps: steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
@@ -181,12 +224,16 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
@@ -194,6 +241,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rocsolver-test' testExecutable: './rocsolver-test'
testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes' testParameters: '--gtest_filter="*checkin*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
@@ -202,3 +250,19 @@ jobs:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
environment: test environment: test
gpuTarget: ${{ job.target }} 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 }}
triggerDownstreamJobs: true
unifiedBuild: ${{ parameters.unifiedBuild }}
${{ if parameters.unifiedBuild }}:
buildDependsOn: ${{ component.unifiedBuild.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ component.unifiedBuild.downstreamAggregateNames }}
${{ else }}:
buildDependsOn: ${{ component.buildDependsOn }}
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}+${{ parameters.componentName }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocSPARSE
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -13,27 +32,25 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- python3-pip
- cmake - cmake
- ninja-build
- libboost-program-options-dev
- googletest
- libfftw3-dev
- git
- gfortran - gfortran
- libgtest-dev - git
- libboost-program-options-dev
- libdrm-dev - libdrm-dev
- libfftw3-dev
- ninja-build
- python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocm-cmake
- llvm-project
- ROCR-Runtime
- clr - clr
- llvm-project
- rocBLAS - rocBLAS
- rocm-cmake
- rocminfo - rocminfo
- rocPRIM - rocPRIM
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- roctracer - roctracer
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
@@ -52,19 +69,39 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
#- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - name: downstreamComponentMatrix
target: gfx90a type: object
default:
- hipSPARSE:
name: hipSPARSE
sparseCheckoutDir: projects/hipsparse
skipUnifiedBuild: 'false'
buildDependsOn:
- rocSPARSE_build
# hipSOLVER depends on both rocSOLVER and rocSPARSE
# for a unified build, rocSOLVER will be the one to call hipSOLVER
# - hipSOLVER:
# name: hipSOLVER
# sparseCheckoutDir: projects/hipsolver
# skipUnifiedBuild: 'true'
# buildDependsOn:
# - rocSPARSE_build
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocSPARSE_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -77,22 +114,32 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} 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 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/hipcc -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang++
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/bin/amdclang
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
@@ -103,68 +150,94 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
artifactName: rocSPARSE componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
artifactName: rocSPARSE componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
publish: false publish: false
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-prepare-package.yml
parameters: parameters:
sourceDir: $(Build.SourcesDirectory)/build/clients sourceDir: $(Agent.BuildDirectory)/s/build/clients
contentsString: matrices/** contentsString: matrices/**
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
artifactName: testMatrices artifactName: testMatrices
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
extraEnvVars: gpuTarget: ${{ job.target }}
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocSPARSE_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 90 - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: rocSPARSE_build_${{ job.target }} timeoutInMinutes: 120
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: packageManager: ${{ job.packageManager }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters:
parameters: preTargetFilter: ${{ parameters.componentName }}
checkoutRef: ${{ parameters.checkoutRef }} gpuTarget: ${{ job.target }}
dependencyList: ${{ parameters.rocmTestDependencies }} os: ${{ job.os }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml parameters:
parameters: checkoutRef: ${{ parameters.checkoutRef }}
componentName: rocSPARSE dependencyList: ${{ parameters.rocmTestDependencies }}
testDir: '$(Agent.BuildDirectory)/rocm/bin' gpuTarget: ${{ job.target }}
testExecutable: './rocsparse-test' os: ${{ job.os }}
testParameters: '--gtest_filter="*quick*" --gtest_output=xml:./test_output.xml --gtest_color=yes' ${{ if parameters.triggerDownstreamJobs }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
environment: test parameters:
gpuTarget: ${{ job.target }} componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)/rocm/bin'
testExecutable: './rocsparse-test'
testParameters: '--gtest_filter="*quick*" --gtest_output=xml:./test_output.xml --gtest_color=yes'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
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 }}

View File

@@ -33,17 +33,17 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- git
- ninja-build - ninja-build
- libboost-program-options-dev - libboost-program-options-dev
- googletest
- libfftw3-dev - libfftw3-dev
- git
- python3-pip - python3-pip
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- clr - clr
- llvm-project - llvm-project
- rocm-cmake
- rocminfo - rocminfo
- rocPRIM - rocPRIM
- ROCR-Runtime - ROCR-Runtime
@@ -54,58 +54,76 @@ parameters:
- llvm-project - llvm-project
- rocminfo - rocminfo
- rocPRIM - rocPRIM
- ROCR-Runtime
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}: ${{ if parameters.buildDependsOn }}:
dependsOn: ${{ parameters.buildDependsOn[job.target] }} dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: ${{ variables.MEDIUM_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- gtest
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
consolidateBuildAndInstall: true
extraBuildFlags: >- extraBuildFlags: >-
-GNinja -GNinja
-DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ -DCMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor"
-DAMDGPU_TARGETS=${{ job.target }} -DAMDGPU_TARGETS=${{ job.target }}
-DBUILD_TEST=ON -DBUILD_TEST=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
@@ -113,20 +131,23 @@ jobs:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }}
- ${{ if eq(parameters.unifiedBuild, False) }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ each job in parameters.jobMatrix.testJobs }}:
- job: ${{ parameters.componentName }}_test_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
dependsOn: ${{ parameters.componentName }}_build_${{ job.target }} dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
condition: condition:
and(succeeded(), and(succeeded(),
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
@@ -144,17 +165,20 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
parameters: parameters:
preTargetFilter: ${{ parameters.componentName }} preTargetFilter: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}: ${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }} downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
@@ -163,6 +187,7 @@ jobs:
componentName: ${{ parameters.componentName }} componentName: ${{ parameters.componentName }}
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocthrust' testDir: '$(Agent.BuildDirectory)/rocm/bin/rocthrust'
testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml --exclude-regex "scan.hip"' testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml --exclude-regex "scan.hip"'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocWMMA
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -66,11 +85,15 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocWMMA_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: ${{ variables.HIGH_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -81,6 +104,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
@@ -102,9 +126,12 @@ jobs:
# gfx1030 not supported in documentation # gfx1030 not supported in documentation
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -112,43 +139,45 @@ jobs:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocWMMA_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 270 - job: ${{ parameters.componentName }}_test_${{ job.target }}
dependsOn: rocWMMA_build_${{ job.target }} timeoutInMinutes: 350
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
gpuTarget: ${{ job.target }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml preTargetFilter: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml gpuTarget: ${{ job.target }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
dependencyList: ${{ parameters.rocmTestDependencies }} parameters:
gpuTarget: ${{ job.target }} checkoutRef: ${{ parameters.checkoutRef }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml dependencyList: ${{ parameters.rocmTestDependencies }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml gpuTarget: ${{ job.target }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
componentName: rocWMMA - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testDir: '$(Agent.BuildDirectory)/rocm/bin/rocwmma' parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml componentName: ${{ parameters.componentName }}
parameters: testDir: '$(Agent.BuildDirectory)/rocm/bin/rocwmma'
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
environment: test parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -81,7 +81,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: rocm-cmake componentName: rocm-cmake
testParameters: '-E "pass-version-parent" --output-on-failure --force-new-ctest-process --output-junit test_output.xml' testParameters: '-E "pass-version-parent" --extra-verbose --output-on-failure --force-new-ctest-process --output-junit test_output.xml'
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocm-core
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -27,6 +46,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocm_core_${{ job.os }} - job: rocm_core_${{ job.os }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
pool: pool:
${{ if eq(job.os, 'ubuntu2404') }}: ${{ if eq(job.os, 'ubuntu2404') }}:
vmImage: 'ubuntu-24.04' vmImage: 'ubuntu-24.04'
@@ -50,8 +73,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
@@ -65,9 +90,12 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml

View File

@@ -14,16 +14,42 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- libdw-dev
- libglfw3-dev - libglfw3-dev
- libmsgpack-dev - libmsgpack-dev
- libopencv-dev
- libtbb-dev - libtbb-dev
- libtiff-dev
- libva-amdgpu-dev
- libva2-amdgpu
- mesa-amdgpu-va-drivers
- libavcodec-dev
- libavformat-dev
- libavutil-dev
- ninja-build - ninja-build
- python3-pip - python3-pip
- protobuf-compiler
- libprotoc-dev
- libopencv-dev
- name: pipModules
type: object
default:
- future==1.0.0
- pytz==2022.1
- numpy==1.23
- google==3.0.0
- protobuf==3.12.4
- onnx==1.12.0
- nnef==1.0.7
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- AMDMIGraphX - AMDMIGraphX
- aomp
- aomp-extras
- clr - clr
- half
- composable_kernel
- hipBLAS - hipBLAS
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
@@ -33,21 +59,37 @@ parameters:
- hipRAND - hipRAND
- hipSOLVER - hipSOLVER
- hipSPARSE - hipSPARSE
- hipTensor
- llvm-project - llvm-project
- MIOpen
- MIVisionX
- rocm_smi_lib
- rccl
- rocAL
- rocALUTION
- rocBLAS - rocBLAS
- rocDecode
- rocFFT - rocFFT
- rocJPEG
- rocPRIM - rocPRIM
- rocprofiler-register - rocprofiler-register
- rocprofiler-sdk
- ROCR-Runtime - ROCR-Runtime
- rocRAND - rocRAND
- rocSOLVER - rocSOLVER
- rocSPARSE - rocSPARSE
- rocThrust - rocThrust
- rocWMMA
- rpp
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
- AMDMIGraphX - AMDMIGraphX
- aomp
- aomp-extras
- clr - clr
- half
- composable_kernel
- hipBLAS - hipBLAS
- hipBLAS-common - hipBLAS-common
- hipBLASLt - hipBLASLt
@@ -57,18 +99,30 @@ parameters:
- hipRAND - hipRAND
- hipSOLVER - hipSOLVER
- hipSPARSE - hipSPARSE
- hipTensor
- llvm-project - llvm-project
- MIOpen
- MIVisionX
- rocm_smi_lib
- rccl
- rocAL
- rocALUTION
- rocBLAS - rocBLAS
- rocDecode
- rocFFT - rocFFT
- rocminfo - rocminfo
- rocPRIM - rocPRIM
- rocJPEG
- rocprofiler-register - rocprofiler-register
- rocprofiler-sdk
- ROCR-Runtime - ROCR-Runtime
- rocRAND - rocRAND
- rocSOLVER - rocSOLVER
- rocSPARSE - rocSPARSE
- rocThrust - rocThrust
- roctracer - roctracer
- rocWMMA
- rpp
- name: jobMatrix - name: jobMatrix
type: object type: object
@@ -97,6 +151,11 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
parameters:
cmakeVersion: '3.25.0'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
@@ -158,6 +217,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-cmake-custom.yml
parameters:
cmakeVersion: '3.25.0'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
@@ -184,9 +247,10 @@ jobs:
parameters: parameters:
componentName: rocm-examples componentName: rocm-examples
testDir: $(Build.SourcesDirectory)/build testDir: $(Build.SourcesDirectory)/build
testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml --exclude-regex "rocfft_callback"' testParameters: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test environment: test
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}

View File

@@ -0,0 +1,193 @@
parameters:
- name: componentName
type: string
default: rocm_libraries
- 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
- libdrm-dev
- liblapack-dev
- libmsgpack-dev
- libnuma-dev
- libopenblas-dev
- ninja-build
- python3-pip
- python3-venv
- googletest
- libgtest-dev
- libgmock-dev
- libboost-filesystem-dev
- name: pipModules
type: object
default:
- msgpack
- joblib
- "packaging>=22.0"
- pytest
- pytest-cmake
- --upgrade
- name: rocmDependencies
type: object
default:
- aomp
- clr
- llvm-project
- rocminfo
- rocm-cmake
- rocm_smi_lib
- rocprofiler-register
- ROCR-Runtime
- roctracer
- 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 }
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 300
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: DAY_STRING
value: $[format('{0:ddMMyyyy}', pipeline.startTime)]
pool: ${{ job.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-cmake-custom.yml
- 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/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters:
checkoutRepo: ${{ parameters.checkoutRepo }}
- 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 }}
gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- 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: rocm-libraries | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING) | $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
path: $(CCACHE_DIR)
restoreKeys: |
rocm-libraries | ${{ job.os }} | ${{ job.target }} | $(DAY_STRING)
rocm-libraries | ${{ job.os }} | ${{ job.target }}
rocm-libraries | ${{ 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
- task: Bash@3
displayName: Add ROCm binaries to PATH
inputs:
targetType: inline
script: |
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
extraBuildFlags: >-
-D CMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor;$(PytestCmakePath)
-D CMAKE_INCLUDE_PATH=$(Agent.BuildDirectory)/rocm/llvm/include
-D CMAKE_CXX_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
-D CMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-D CMAKE_CXX_COMPILER_LAUNCHER=ccache
-D CMAKE_C_COMPILER_LAUNCHER=ccache
-G Ninja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ if eq(job.os, 'ubuntu2204') }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
gpuTarget: ${{ job.target }}
extraPaths: /home/user/workspace/rocm/llvm/bin:/home/user/workspace/rocm/bin
installLatestCMake: true
extraCopyDirectories:
- deps

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocm_smi_lib
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -32,6 +51,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocm_smi_lib_build_${{ job.os }} - job: rocm_smi_lib_build_${{ job.os }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
pool: pool:
${{ if eq(job.os, 'ubuntu2404') }}: ${{ if eq(job.os, 'ubuntu2404') }}:
vmImage: 'ubuntu-24.04' vmImage: 'ubuntu-24.04'
@@ -55,8 +78,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
@@ -65,51 +90,56 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
# parameters: # parameters:
# aptPackages: ${{ parameters.aptPackages }} # aptPackages: ${{ parameters.aptPackages }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocm_smi_lib_test_${{ job.os }}_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rocm_smi_lib_build_${{ job.os }} - job: rocm_smi_lib_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: rocm_smi_lib_build_${{ job.os }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
packageManager: ${{ job.packageManager }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml packageManager: ${{ job.packageManager }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
os: ${{ job.os }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml parameters:
parameters: os: ${{ job.os }}
runRocminfo: false - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml parameters:
parameters: runRocminfo: false
componentName: rocm_smi_lib - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testDir: '$(Agent.BuildDirectory)' parameters:
testExecutable: './rocm/share/rocm_smi/rsmitst_tests/rsmitst' componentName: ${{ parameters.componentName }}
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes' testDir: '$(Agent.BuildDirectory)'
os: ${{ job.os }} testExecutable: 'sudo ./rocm/share/rocm_smi/rsmitst_tests/rsmitst'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
parameters: os: ${{ job.os }}
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
environment: test parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocminfo
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -40,7 +59,11 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocminfo_build_${{ job.os }} - job: ${{ parameters.componentName }}_build_${{ job.os }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
pool: pool:
vmImage: 'ubuntu-22.04' vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}: ${{ if eq(job.os, 'almalinux8') }}:
@@ -62,15 +85,18 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
skipLlvmSymlink: true
os: ${{ job.os }} os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
@@ -79,65 +105,71 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocminfo_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rocminfo_build_${{ job.os }} - job: rocminfo_test_${{ job.target }}
condition: dependsOn: rocminfo_build_${{ job.os }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
packageManager: ${{ job.packageManager }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
os: ${{ job.os }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmTestDependencies }} checkoutRef: ${{ parameters.checkoutRef }}
gpuTarget: ${{ job.target }} dependencyList: ${{ parameters.rocmTestDependencies }}
os: ${{ job.os }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml os: ${{ job.os }}
parameters: ${{ if parameters.triggerDownstreamJobs }}:
runRocminfo: false downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
parameters: parameters:
componentName: rocminfo runRocminfo: false
testDir: '$(Agent.BuildDirectory)' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testExecutable: './rocm/bin/rocminfo' parameters:
testParameters: '' componentName: ${{ parameters.componentName }}
testPublishResults: false testDir: '$(Agent.BuildDirectory)'
os: ${{ job.os }} testExecutable: './rocm/bin/rocminfo'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml testParameters: ''
parameters: testPublishResults: false
componentName: rocm_agent_enumerator os: ${{ job.os }}
testDir: '$(Agent.BuildDirectory)' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testExecutable: './rocm/bin/rocm_agent_enumerator' parameters:
testParameters: '' componentName: rocm_agent_enumerator
testPublishResults: false testDir: '$(Agent.BuildDirectory)'
os: ${{ job.os }} testExecutable: './rocm/bin/rocm_agent_enumerator'
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml testParameters: ''
parameters: testPublishResults: false
aptPackages: ${{ parameters.aptPackages }} os: ${{ job.os }}
registerROCmPackages: true - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
environment: test parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocprofiler-compute
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -24,24 +43,36 @@ parameters:
default: default:
- astunparse==1.6.2 - astunparse==1.6.2
- colorlover - colorlover
- "dash>=1.12.0" - dash-bootstrap-components
- dash-svg
- "dash>=3.0.0"
- kaleido==0.2.1
- matplotlib - matplotlib
- "numpy>=1.17.5" - "numpy>=1.17.5"
- "pandas>=1.4.3" - "pandas>=1.4.3"
- plotext
- plotille
- pymongo - pymongo
- pyyaml - pyyaml
- tabulate
- tqdm
- dash-svg
- dash-bootstrap-components
- kaleido
- setuptools - setuptools
- plotille - sqlalchemy
- tabulate
- textual
- textual_plotext
- textual-fspicker
- tqdm
- mock - mock
- pytest - pytest
- pytest-cov - pytest-cov
- pytest-xdist - pytest-xdist
- name: rocmDependencies - name: rocmDependencies
type: object
default:
- clr
- llvm-project
- ROCR-Runtime
- rocprofiler-sdk
- name: rocmTestDependencies
type: object type: object
default: default:
- amdsmi - amdsmi
@@ -61,46 +92,28 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942-staging: - gfx942:
name: gfx942_staging
target: gfx942 target: gfx942
dependencySource: staging - gfx90a:
- gfx942-mainline:
name: gfx942_mainline
target: gfx942
dependencySource: mainline
- gfx90a-staging:
name: gfx90a_staging
target: gfx90a target: gfx90a
dependencySource: staging
- gfx90a-mainline:
name: gfx90a_mainline
target: gfx90a
dependencySource: mainline
testJobs: testJobs:
- gfx942-staging: - gfx942:
name: gfx942_staging
target: gfx942 target: gfx942
dependencySource: staging - gfx90a:
- gfx942-mainline:
name: gfx942_mainline
target: gfx942
dependencySource: mainline
- gfx90a-staging:
name: gfx90a_staging
target: gfx90a target: gfx90a
dependencySource: staging
- gfx90a-mainline:
name: gfx90a_mainline
target: gfx90a
dependencySource: mainline
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocprofiler_compute_build_${{ job.name }} - job: rocprofiler_compute_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
- name: ROCM_PATH
value: $(Agent.BuildDirectory)/rocm
pool: pool:
vmImage: ${{ variables.BASE_BUILD_POOL }} vmImage: ${{ variables.BASE_BUILD_POOL }}
workspace: workspace:
@@ -114,25 +127,27 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
dependencySource: ${{ job.dependencySource }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
extraBuildFlags: >- extraBuildFlags: >-
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
artifactName: ${{ job.dependencySource }} componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
artifactName: ${{ job.dependencySource }} componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -141,80 +156,83 @@ jobs:
# pipModules: ${{ parameters.pipModules }} # pipModules: ${{ parameters.pipModules }}
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocprofiler_compute_test_${{ job.name }} - ${{ each job in parameters.jobMatrix.testJobs }}:
timeoutInMinutes: 120 - job: rocprofiler_compute_test_${{ job.target }}
dependsOn: rocprofiler_compute_build_${{ job.name }} timeoutInMinutes: 120
condition: dependsOn: rocprofiler_compute_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: PYTHON_VERSION - template: /.azuredevops/variables-global.yml
value: 3.10 - name: PYTHON_VERSION
pool: ${{ job.target }}_test_pool value: 3.10
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml pipModules: ${{ parameters.pipModules }}
- task: Bash@3 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
displayName: Add en_US.UTF-8 locale - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
inputs: parameters:
targetType: inline checkoutRepo: ${{ parameters.checkoutRepo }}
script: | sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
sudo locale-gen en_US.UTF-8 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
sudo update-locale parameters:
locale -a preTargetFilter: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml gpuTarget: ${{ job.target }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
checkoutRepo: ${{ parameters.checkoutRepo }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml parameters:
parameters: checkoutRef: ${{ parameters.checkoutRef }}
postTargetFilter: ${{ job.dependencySource }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml ${{ if parameters.triggerDownstreamJobs }}:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
parameters: - task: Bash@3
checkoutRef: ${{ parameters.checkoutRef }} displayName: Add en_US.UTF-8 locale
dependencyList: ${{ parameters.rocmDependencies }} inputs:
dependencySource: ${{ job.dependencySource }} targetType: inline
gpuTarget: ${{ job.target }} script: |
- task: Bash@3 sudo locale-gen en_US.UTF-8
displayName: Add ROCm binaries to PATH sudo update-locale
inputs: locale -a
targetType: inline - task: Bash@3
script: | displayName: Add ROCm binaries to PATH
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin" inputs:
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin" targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml script: |
parameters: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
extraBuildFlags: >- echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
-DCMAKE_HIP_ARCHITECTURES=${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang parameters:
-DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_HIP_ARCHITECTURES=${{ job.target }}
-DROCM_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_C_COMPILER=$(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
-DCMAKE_BUILD_TYPE=Release -DCMAKE_MODULE_PATH=$(Agent.BuildDirectory)/rocm/lib/cmake/hip
-DENABLE_TESTS=ON -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DINSTALL_TESTS=ON -DROCM_PATH=$(Agent.BuildDirectory)/rocm
-GNinja -DCMAKE_BUILD_TYPE=Release
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml -DENABLE_TESTS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml -DINSTALL_TESTS=ON
parameters: -GNinja
componentName: rocprofiler-compute - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testDir: $(Build.BinariesDirectory)/libexec/rocprofiler-compute - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testExecutable: ROCM_PATH=$(Agent.BuildDirectory)/rocm ctest parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml componentName: ${{ parameters.componentName }}
parameters: testDir: $(Build.BinariesDirectory)/libexec/rocprofiler-compute
aptPackages: ${{ parameters.aptPackages }} testExecutable: ROCM_PATH=$(Agent.BuildDirectory)/rocm ctest
pipModules: ${{ parameters.pipModules }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
environment: test parameters:
gpuTarget: ${{ job.target }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocprofiler-register
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -27,6 +46,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocprofiler_register_${{ job.os }} - job: rocprofiler_register_${{ job.os }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
pool: pool:
${{ if eq(job.os, 'ubuntu2404') }}: ${{ if eq(job.os, 'ubuntu2404') }}:
vmImage: 'ubuntu-24.04' vmImage: 'ubuntu-24.04'
@@ -50,9 +73,10 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: rocprofiler-register componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
useAmdclang: false useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
@@ -62,12 +86,16 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
componentName: rocprofiler-register componentName: ${{ parameters.componentName }}
testDir: $(Agent.BuildDirectory)/s/build
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocprofiler-sdk
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -14,10 +33,12 @@ parameters:
type: object type: object
default: default:
- build-essential - build-essential
- cmake
- libdrm-amdgpu-dev - libdrm-amdgpu-dev
- libdrm-dev - libdrm-dev
- libdw-dev - libdw-dev
- libelf-dev - libelf-dev
- libsqlite3-dev
- libva-dev - libva-dev
- ninja-build - ninja-build
- pkg-config - pkg-config
@@ -58,24 +79,27 @@ parameters:
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocprofiler_sdk_build_${{ job.target }} - job: rocprofiler_sdk_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os}}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
pool: pool: ${{ variables.MEDIUM_BUILD_POOL }}
vmImage: ${{ variables.BASE_BUILD_POOL }} ${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -83,18 +107,23 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }}
registerROCmPackages: true registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- task: Bash@3 - task: Bash@3
displayName: Add Python site-packages binaries to path displayName: Add Python site-packages binaries to path
inputs: inputs:
@@ -104,6 +133,8 @@ jobs:
echo "##vso[task.prependpath]$USER_BASE/bin" echo "##vso[task.prependpath]$USER_BASE/bin"
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
-DROCPROFILER_BUILD_TESTS=ON -DROCPROFILER_BUILD_TESTS=ON
@@ -113,9 +144,13 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
# - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml # - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
@@ -125,62 +160,72 @@ jobs:
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
# registerROCmPackages: true # registerROCmPackages: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocprofiler_sdk_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rocprofiler_sdk_build_${{ job.target }} - job: rocprofiler_sdk_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: rocprofiler_sdk_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml registerROCmPackages: true
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
checkoutRepo: ${{ parameters.checkoutRepo }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
parameters: checkoutRepo: ${{ parameters.checkoutRepo }}
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
dependencyList: ${{ parameters.rocmDependencies }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
gpuTarget: ${{ job.target }} parameters:
- task: Bash@3 checkoutRef: ${{ parameters.checkoutRef }}
displayName: Add Python and ROCm binaries to path dependencyList: ${{ parameters.rocmDependencies }}
inputs: os: ${{ job.os }}
targetType: inline gpuTarget: ${{ job.target }}
script: | ${{ if parameters.triggerDownstreamJobs }}:
USER_BASE=$(python3 -m site --user-base) downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
echo "##vso[task.prependpath]$USER_BASE/bin" - task: Bash@3
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin" displayName: Add Python and ROCm binaries to path
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml inputs:
parameters: targetType: inline
extraBuildFlags: >- script: |
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm USER_BASE=$(python3 -m site --user-base)
-DROCPROFILER_BUILD_TESTS=ON echo "##vso[task.prependpath]$USER_BASE/bin"
-DROCPROFILER_BUILD_SAMPLES=ON echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
-DROCPROFILER_BUILD_RELEASE=ON - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-DGPU_TARGETS=${{ job.target }} parameters:
-GNinja componentName: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH}}/steps/gpu-diagnostics.yml os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml extraBuildFlags: >-
parameters: -DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
componentName: rocprofiler-sdk -DROCPROFILER_BUILD_TESTS=ON
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml -DROCPROFILER_BUILD_SAMPLES=ON
parameters: -DROCPROFILER_BUILD_RELEASE=ON
aptPackages: ${{ parameters.aptPackages }} -DGPU_TARGETS=${{ job.target }}
pipModules: ${{ parameters.pipModules }} -GNinja
environment: test - template: ${{ variables.CI_TEMPLATE_PATH}}/steps/gpu-diagnostics.yml
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
registerROCmPackages: true parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }}
testDir: $(Agent.BuildDirectory)/build
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
gpuTarget: ${{ job.target }}
registerROCmPackages: true

View File

@@ -6,6 +6,25 @@ parameters:
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' default: ''
# monorepo related parameters
- name: componentName
type: string
default: rocprofiler-systems
- 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -37,6 +56,7 @@ parameters:
- libpfm4-dev - libpfm4-dev
- libtool - libtool
- libopenmpi-dev - libopenmpi-dev
- libsqlite3-dev
- m4 - m4
- ninja-build - ninja-build
- openmpi-bin - openmpi-bin
@@ -86,6 +106,10 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocprofiler_systems_build_${{ job.target }} - job: rocprofiler_systems_build_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -104,6 +128,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
@@ -135,12 +160,16 @@ jobs:
-DCMAKE_CXX_FLAGS=-I$(Agent.BuildDirectory)/rocm/include/rocjpeg -DCMAKE_CXX_FLAGS=-I$(Agent.BuildDirectory)/rocm/include/rocjpeg
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-GNinja -GNinja
componentName: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
componentName: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters: parameters:
@@ -150,85 +179,93 @@ jobs:
registerROCmPackages: true registerROCmPackages: true
extraPaths: /home/user/workspace/rocm/bin:/home/user/workspace/rocm/llvm/bin extraPaths: /home/user/workspace/rocm/bin:/home/user/workspace/rocm/llvm/bin
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocprofiler_systems_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rocprofiler_systems_build_${{ job.target }} - job: rocprofiler_systems_test_${{ job.target }}
condition: dependsOn: rocprofiler_systems_build_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
timeoutInMinutes: 180 )
variables: timeoutInMinutes: 180
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: ROCM_PATH - template: /.azuredevops/variables-global.yml
value: $(Agent.BuildDirectory)/rocm - name: ROCM_PATH
pool: value: $(Agent.BuildDirectory)/rocm
name: ${{ job.target }}_test_pool pool:
workspace: name: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
registerROCmPackages: true pipModules: ${{ parameters.pipModules }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
checkoutRepo: ${{ parameters.checkoutRepo }} parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml checkoutRepo: ${{ parameters.checkoutRepo }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
checkoutRef: ${{ parameters.checkoutRef }} parameters:
dependencyList: ${{ parameters.rocmDependencies }} checkoutRef: ${{ parameters.checkoutRef }}
gpuTarget: ${{ job.target }} dependencyList: ${{ parameters.rocmDependencies }}
- task: Bash@3 gpuTarget: ${{ job.target }}
displayName: Add ROCm binaries to PATH ${{ if parameters.triggerDownstreamJobs }}:
inputs: downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
targetType: inline - task: Bash@3
script: | displayName: Add ROCm binaries to PATH
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin" inputs:
echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin" targetType: inline
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml script: |
parameters: echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/bin"
# build flags reference: https://rocm.docs.amd.com/projects/omnitrace/en/latest/install/install.html echo "##vso[task.prependpath]$(Agent.BuildDirectory)/rocm/llvm/bin"
extraBuildFlags: >- - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
-DROCPROFSYS_BUILD_TESTING=ON parameters:
-DROCPROFSYS_BUILD_DYNINST=ON cmakeSourceDir: $(Agent.BuildDirectory)/s/projects/rocprofiler-systems
-DROCPROFSYS_BUILD_LIBUNWIND=ON # build flags reference: https://rocm.docs.amd.com/projects/omnitrace/en/latest/install/install.html
-DROCPROFSYS_DISABLE_EXAMPLES="openmp-target" extraBuildFlags: >-
-DDYNINST_BUILD_TBB=ON -DCMAKE_INSTALL_PREFIX=$(Agent.BuildDirectory)/rocprofiler-systems
-DDYNINST_BUILD_ELFUTILS=ON -DROCPROFSYS_USE_PYTHON=ON
-DDYNINST_BUILD_LIBIBERTY=ON -DROCPROFSYS_BUILD_TESTING=ON
-DDYNINST_BUILD_BOOST=ON -DROCPROFSYS_BUILD_DYNINST=ON
-DROCPROFSYS_USE_PAPI=ON -DROCPROFSYS_BUILD_LIBUNWIND=ON
-DROCPROFSYS_USE_MPI=ON -DROCPROFSYS_DISABLE_EXAMPLES="openmp-target"
-DCMAKE_CXX_FLAGS=-I$(Agent.BuildDirectory)/rocm/include/rocjpeg -DDYNINST_BUILD_TBB=ON
-DGPU_TARGETS=${{ job.target }} -DDYNINST_BUILD_ELFUTILS=ON
-GNinja -DDYNINST_BUILD_LIBIBERTY=ON
- task: Bash@3 -DDYNINST_BUILD_BOOST=ON
displayName: Set up rocprofiler-systems env -DROCPROFSYS_USE_PAPI=ON
inputs: -DROCPROFSYS_USE_MPI=ON
targetType: inline -DCMAKE_CXX_FLAGS=-I$(Agent.BuildDirectory)/rocm/include/rocjpeg
script: source share/rocprofiler-systems/setup-env.sh -DGPU_TARGETS=${{ job.target }}
workingDirectory: build -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml - task: Bash@3
parameters: displayName: Set up rocprofiler-systems env
componentName: rocprofiler-systems inputs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml targetType: inline
parameters: script: source $(Agent.BuildDirectory)/rocprofiler-systems/share/rocprofiler-systems/setup-env.sh
gpuTarget: ${{ job.target }} workingDirectory: $(Agent.BuildDirectory)/rocprofiler-systems/share/rocprofiler-systems
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters: parameters:
gpuTarget: ${{ job.target }} componentName: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml testDir: $(Agent.BuildDirectory)/s/build/tests/
parameters: testParameters: '--output-on-failure'
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
pipModules: ${{ parameters.pipModules }} parameters:
environment: test gpuTarget: ${{ job.target }}
registerROCmPackages: true - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
gpuTarget: ${{ job.target }} parameters:
extraPaths: /home/user/workspace/rocm/bin:/home/user/workspace/rocm/llvm/bin gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
registerROCmPackages: true
gpuTarget: ${{ job.target }}
extraPaths: /home/user/workspace/rocm/bin:/home/user/workspace/rocm/llvm/bin

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: rocprofiler
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -15,7 +34,6 @@ parameters:
type: object type: object
default: default:
- cmake - cmake
- libgtest-dev
- libdrm-dev - libdrm-dev
- libdw-dev - libdw-dev
- libsystemd-dev - libsystemd-dev
@@ -26,13 +44,13 @@ parameters:
- name: pipModules - name: pipModules
type: object type: object
default: default:
- pyyaml==5.3.1
- Cppheaderparser
- websockets
- matplotlib
- lxml
- barectf - barectf
- Cppheaderparser
- lxml
- matplotlib
- pandas - pandas
- pyyaml==5.3.1
- websockets
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
@@ -41,29 +59,37 @@ parameters:
- ROCdbgapi - ROCdbgapi
- rocm-cmake - rocm-cmake
- rocm-core - rocm-core
- rocm_smi_lib
- rocminfo - rocminfo
- ROCR-Runtime - rocm_smi_lib
- rocprofiler-register - rocprofiler-register
- ROCR-Runtime
- roctracer - roctracer
- name: jobMatrix - name: jobMatrix
type: object type: object
default: default:
buildJobs: buildJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a: - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
- gfx942: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- gfx90a:
target: gfx90a
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: rocprofiler_build_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -72,6 +98,10 @@ jobs:
- name: ROCM_PATH - name: ROCM_PATH
value: $(Agent.BuildDirectory)/rocm value: $(Agent.BuildDirectory)/rocm
pool: ${{ variables.MEDIUM_BUILD_POOL }} pool: ${{ variables.MEDIUM_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -79,93 +109,125 @@ jobs:
parameters: parameters:
aptPackages: ${{ parameters.aptPackages }} aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }} pipModules: ${{ parameters.pipModules }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} 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-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
os: ${{ job.os }}
useAmdclang: false
extraBuildFlags: >- extraBuildFlags: >-
-DCMAKE_MODULE_PATH=$(Build.SourcesDirectory)/cmake_modules;$(Agent.BuildDirectory)/rocm/lib/cmake;$(Agent.BuildDirectory)/rocm/lib/cmake/hip -DCMAKE_MODULE_PATH=$(Build.SourcesDirectory)/cmake_modules;$(Agent.BuildDirectory)/rocm/lib/cmake;$(Agent.BuildDirectory)/rocm/lib/cmake/hip;$(Agent.BuildDirectory)/rocm/lib64/cmake;$(Agent.BuildDirectory)/rocm/lib64/cmake/hip
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm -DCMAKE_PREFIX_PATH="$(Agent.BuildDirectory)/rocm;$(Agent.BuildDirectory)/vendor"
-DROCM_PATH=$(Agent.BuildDirectory)/rocm
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DENABLE_LDCONFIG=OFF -DENABLE_LDCONFIG=OFF
-DUSE_PROF_API=1 -DUSE_PROF_API=1
-DGPU_TARGETS=${{ job.target }} -DGPU_TARGETS=${{ job.target }}
-DAMDGPU_TARGETS=${{ job.target }}
multithreadFlag: -- -j32 multithreadFlag: -- -j32
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml - ${{ if eq(job.os, 'ubuntu2204') }}:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
gpuTarget: ${{ job.target }} pipModules: ${{ parameters.pipModules }}
extraEnvVars: gpuTarget: ${{ job.target }}
- HIP_ROCCLR_HOME:::/home/user/workspace/rocm extraEnvVars:
- ROCM_PATH:::/home/user/workspace/rocm - HIP_ROCCLR_HOME:::/home/user/workspace/rocm
- ROCM_PATH:::/home/user/workspace/rocm
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: rocprofiler_test_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: rocprofiler_build_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
- name: ROCM_PATH - template: /.azuredevops/variables-global.yml
value: $(Agent.BuildDirectory)/rocm - name: ROCM_PATH
- name: LD_LIBRARY_PATH value: $(Agent.BuildDirectory)/rocm
value: $(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1/test:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests - name: LD_LIBRARY_PATH
pool: ${{ job.target }}_test_pool value: $(Agent.BuildDirectory)/rocm/lib/rocprofiler:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1/test:$(Agent.BuildDirectory)/rocm/share/rocprofiler/tests
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - checkout: none
aptPackages: ${{ parameters.aptPackages }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml aptPackages: ${{ parameters.aptPackages }}
parameters: packageManager: ${{ job.packageManager }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml parameters:
parameters: preTargetFilter: ${{ parameters.componentName }}
checkoutRef: ${{ parameters.checkoutRef }} gpuTarget: ${{ job.target }}
dependencyList: ${{ parameters.rocmDependencies }} os: ${{ job.os }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml parameters:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
componentName: rocprofilerV1 parameters:
testDir: $(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1 checkoutRef: ${{ parameters.checkoutRef }}
testExecutable: ./run.sh dependencyList: ${{ parameters.rocmDependencies }}
testParameters: '' gpuTarget: ${{ job.target }}
testPublishResults: false os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml ${{ if parameters.triggerDownstreamJobs }}:
parameters: downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
componentName: rocprofilerV2 - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testDir: $(Agent.BuildDirectory)/rocm - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testExecutable: share/rocprofiler/tests/runUnitTests parameters:
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes' componentName: rocprofilerV1
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml testDir: $(Agent.BuildDirectory)/rocm/share/rocprofiler/tests-v1
parameters: testExecutable: ./run.sh
aptPackages: ${{ parameters.aptPackages }} testParameters: ''
pipModules: ${{ parameters.pipModules }} testPublishResults: false
environment: test os: ${{ job.os }}
gpuTarget: ${{ job.target }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
parameters:
componentName: rocprofilerV2
testDir: $(Agent.BuildDirectory)/rocm
testExecutable: share/rocprofiler/tests/runUnitTests
testParameters: '--gtest_output=xml:./test_output.xml --gtest_color=yes'
os: ${{ job.os }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
gpuTarget: ${{ job.target }}

View File

@@ -1,10 +1,29 @@
parameters: parameters:
- name: componentName
type: string
default: roctracer
- name: checkoutRepo - name: checkoutRepo
type: string type: string
default: 'self' default: 'self'
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' 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 # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -47,10 +66,12 @@ parameters:
buildJobs: buildJobs:
- { os: ubuntu2204, packageManager: apt, target: gfx942 } - { os: ubuntu2204, packageManager: apt, target: gfx942 }
- { os: ubuntu2204, packageManager: apt, target: gfx90a } - { os: ubuntu2204, packageManager: apt, target: gfx90a }
- { os: ubuntu2204, packageManager: apt, target: gfx1201 }
- { os: ubuntu2204, packageManager: apt, target: gfx1100 } - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
- { os: ubuntu2204, packageManager: apt, target: gfx1030 } - { os: ubuntu2204, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 } - { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a } - { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 } - { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 } - { os: almalinux8, packageManager: dnf, target: gfx1030 }
testJobs: testJobs:
@@ -59,18 +80,20 @@ parameters:
jobs: jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}: - ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: roctracer_build_${{ job.os }}_${{ job.target }} - job: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
${{ if parameters.buildDependsOn }}:
dependsOn:
- ${{ each build in parameters.buildDependsOn }}:
- ${{ build }}_${{ job.os }}_${{ job.target }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool: pool:
vmImage: 'ubuntu-22.04' vmImage: ${{ variables.BASE_BUILD_POOL }}
${{ if eq(job.os, 'almalinux8') }}: ${{ if eq(job.os, 'almalinux8') }}:
container: container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3 endpoint: ContainerService3
variables:
- group: common
- template: /.azuredevops/variables-global.yml
- name: HIP_ROCCLR_HOME
value: $(Build.BinariesDirectory)/rocm
workspace: workspace:
clean: all clean: all
steps: steps:
@@ -84,6 +107,7 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/checkout.yml
parameters: parameters:
checkoutRepo: ${{ parameters.checkoutRepo }} checkoutRepo: ${{ parameters.checkoutRepo }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
checkoutRef: ${{ parameters.checkoutRef }} checkoutRef: ${{ parameters.checkoutRef }}
@@ -91,6 +115,8 @@ jobs:
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
os: ${{ job.os }} os: ${{ job.os }}
${{ if parameters.triggerDownstreamJobs }}:
downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
# the linker flags will not affect ubuntu2204 builds as the paths do not exist # the linker flags will not affect ubuntu2204 builds as the paths do not exist
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters: parameters:
@@ -106,10 +132,13 @@ jobs:
-GNinja -GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/manifest.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
sparseCheckoutDir: ${{ parameters.sparseCheckoutDir }}
os: ${{ job.os }} os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters: parameters:
componentName: ${{ parameters.componentName }}
os: ${{ job.os }} os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
@@ -120,53 +149,57 @@ jobs:
# gpuTarget: ${{ job.target }} # gpuTarget: ${{ job.target }}
# registerROCmPackages: true # registerROCmPackages: true
- ${{ each job in parameters.jobMatrix.testJobs }}: - ${{ if eq(parameters.unifiedBuild, False) }}:
- job: roctracer_test_${{ job.os }}_${{ job.target }} - ${{ each job in parameters.jobMatrix.testJobs }}:
dependsOn: roctracer_build_${{ job.os }}_${{ job.target }} - job: ${{ parameters.componentName }}_test_${{ job.os }}_${{ job.target }}
condition: dependsOn: ${{ parameters.componentName }}_build_${{ job.os }}_${{ job.target }}
and(succeeded(), condition:
eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'), and(succeeded(),
not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), variables['Build.DefinitionName'])), eq(variables['ENABLE_${{ upper(job.target) }}_TESTS'], 'true'),
eq(${{ parameters.aggregatePipeline }}, False) not(containsValue(split(variables['DISABLED_${{ upper(job.target) }}_TESTS'], ','), '${{ parameters.componentName }}')),
) eq(${{ parameters.aggregatePipeline }}, False)
variables: )
- group: common variables:
- template: /.azuredevops/variables-global.yml - group: common
pool: ${{ job.target }}_test_pool - template: /.azuredevops/variables-global.yml
workspace: pool: ${{ job.target }}_test_pool
clean: all workspace:
steps: clean: all
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml steps:
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
aptPackages: ${{ parameters.aptPackages }} parameters:
pipModules: ${{ parameters.pipModules }} aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }} pipModules: ${{ parameters.pipModules }}
registerROCmPackages: true packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml registerROCmPackages: true
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/local-artifact-download.yml
gpuTarget: ${{ job.target }} parameters:
os: ${{ job.os }} preTargetFilter: ${{ parameters.componentName }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml os: ${{ job.os }}
parameters: - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
dependencyList: ${{ parameters.rocmTestDependencies }} parameters:
gpuTarget: ${{ job.target }} checkoutRef: ${{ parameters.checkoutRef }}
os: ${{ job.os }} dependencyList: ${{ parameters.rocmTestDependencies }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml gpuTarget: ${{ job.target }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml os: ${{ job.os }}
parameters: ${{ if parameters.triggerDownstreamJobs }}:
componentName: roctracer downstreamAggregateNames: ${{ parameters.downstreamAggregateNames }}
testExecutable: $(Agent.BuildDirectory)/rocm/share/roctracer/run_tests.sh - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/gpu-diagnostics.yml
testParameters: '' - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/test.yml
testDir: $(Agent.BuildDirectory) parameters:
testPublishResults: false componentName: ${{ parameters.componentName }}
os: ${{ job.os }} testExecutable: $(Agent.BuildDirectory)/rocm/share/roctracer/run_tests.sh
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml testParameters: ''
parameters: testDir: $(Agent.BuildDirectory)
aptPackages: ${{ parameters.aptPackages }} testPublishResults: false
pipModules: ${{ parameters.pipModules }} os: ${{ job.os }}
environment: test - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/docker-container.yml
gpuTarget: ${{ job.target }} parameters:
registerROCmPackages: true aptPackages: ${{ parameters.aptPackages }}
pipModules: ${{ parameters.pipModules }}
environment: test
gpuTarget: ${{ job.target }}
registerROCmPackages: true

View File

@@ -40,7 +40,6 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
dependencySource: staging
- task: Bash@3 - task: Bash@3
displayName: Add ROCm binaries to PATH displayName: Add ROCm binaries to PATH
inputs: inputs:

View File

@@ -0,0 +1,63 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: catch2Version
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: catch2_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: Bash@3
displayName: Clone catch2 ${{ parameters.catch2Version }}
inputs:
targetType: inline
script: git clone https://github.com/catchorg/Catch2.git -b ${{ parameters.catch2Version }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/Catch2/build
cmakeSourceDir: $(Agent.BuildDirectory)/Catch2
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -0,0 +1,63 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: cli11Version
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: cli11_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: Bash@3
displayName: Clone cli11 ${{ parameters.cli11Version }}
inputs:
targetType: inline
script: git clone https://github.com/CLIUtils/CLI11.git -b ${{ parameters.cli11Version }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/CLI11/build
cmakeSourceDir: $(Agent.BuildDirectory)/CLI11
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -0,0 +1,67 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: fmtlibVersion
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- libfmt-dev
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: fmtlib_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: Bash@3
displayName: Clone fmtlib ${{ parameters.fmtlibVersion }}
inputs:
targetType: inline
script: git clone https://github.com/fmtlib/fmt.git -b ${{ parameters.fmtlibVersion }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/fmt/build
cmakeSourceDir: $(Agent.BuildDirectory)/fmt
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-DFMT_SYSTEM_HEADERS=ON
-DFMT_INSTALL=ON
-DFMT_TEST=OFF
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -0,0 +1,64 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: libdivideVersion
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: libdivide_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: Bash@3
displayName: Clone libdivide ${{ parameters.libdivideVersion }}
inputs:
targetType: inline
script: git clone https://github.com/ridiculousfish/libdivide.git -b ${{ parameters.libdivideVersion }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/libdivide/build
cmakeSourceDir: $(Agent.BuildDirectory)/libdivide
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-DLIBDIVIDE_BUILD_TESTS=OFF
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -0,0 +1,71 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: spdlogVersion
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: spdlog_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-vendor.yml
parameters:
dependencyList:
- fmtlib
- task: Bash@3
displayName: Clone spdlog ${{ parameters.spdlogVersion }}
inputs:
targetType: inline
script: git clone https://github.com/gabime/spdlog.git -b ${{ parameters.spdlogVersion }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/spdlog/build
cmakeSourceDir: $(Agent.BuildDirectory)/spdlog
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/vendor
-DCMAKE_BUILD_TYPE=Release
-DSPDLOG_USE_STD_FORMAT=OFF
-DSPDLOG_FMT_EXTERNAL_HO=ON
-DSPDLOG_INSTALL=ON
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -0,0 +1,66 @@
parameters:
- name: checkoutRepo
type: string
default: 'self'
- name: checkoutRef
type: string
default: ''
- name: yamlcppVersion
type: string
default: ''
- name: aptPackages
type: object
default:
- cmake
- git
- ninja-build
- name: jobMatrix
type: object
default:
buildJobs:
- { os: ubuntu2204, packageManager: apt}
- { os: almalinux8, packageManager: dnf}
jobs:
- ${{ each job in parameters.jobMatrix.buildJobs }}:
- job: yamlcpp_${{ job.os }}
variables:
- group: common
- template: /.azuredevops/variables-global.yml
pool:
vmImage: 'ubuntu-22.04'
${{ if eq(job.os, 'almalinux8') }}:
container:
image: rocmexternalcicd.azurecr.io/manylinux228:latest
endpoint: ContainerService3
workspace:
clean: all
steps:
- checkout: none
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-other.yml
parameters:
aptPackages: ${{ parameters.aptPackages }}
packageManager: ${{ job.packageManager }}
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: Bash@3
displayName: Clone yaml-cpp ${{ parameters.yamlcppVersion }}
inputs:
targetType: inline
script: git clone https://github.com/jbeder/yaml-cpp.git -b ${{ parameters.yamlcppVersion }}
workingDirectory: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/build-cmake.yml
parameters:
os: ${{ job.os }}
cmakeBuildDir: $(Agent.BuildDirectory)/yaml-cpp/build
cmakeSourceDir: $(Agent.BuildDirectory)/yaml-cpp
useAmdclang: false
extraBuildFlags: >-
-DCMAKE_BUILD_TYPE=Release
-DYAML_CPP_BUILD_TOOLS=OFF
-DYAML_BUILD_SHARED_LIBS=OFF
-DYAML_CPP_INSTALL=ON
-GNinja
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-upload.yml
parameters:
os: ${{ job.os }}

View File

@@ -4,71 +4,71 @@ parameters:
- name: aptPackages - name: aptPackages
type: object type: object
default: default:
- build-essential - autoconf
- git
- ninja-build
- openjdk-8-jdk
- ca-certificates
- bc - bc
- bridge-utils - bridge-utils
- build-essential
- ca-certificates
- ccache
- devscripts - devscripts
- dkms - dkms
- doxygen - doxygen
- fakeroot
- ffmpeg
- gfortran
- git
- gnutls-bin
- libamd2
- libavformat-dev
- libblas3
- libcamd2
- libccolamd2
- libcholmod3
- libcolamd2
- libdpkg-dev - libdpkg-dev
- libdpkg-perl - libdpkg-perl
- libdrm-amdgpu1
- libdrm-dev
- libelf-dev - libelf-dev
- libfreetype-dev
- libgfortran5
- libgomp1
- libjpeg-dev
- libjpeg-turbo-official
- liblapack-dev
- liblapack3
- libmetis5
- libncurses-dev
- libnuma-dev
- libopenblas-dev
- libpth-dev
- libquadmath0
- libssh-dev
- libstdc++-12-dev
- libsuitesparseconfig5
- libswscale-dev
- libtinfo-dev
- libunwind-dev
- libwebp-dev
- llvm-dev
- ncurses-base
- ninja-build
- numactl
- openjdk-8-jdk
- python-is-python3
- python3-dev - python3-dev
- python3-pip - python3-pip
- python3-venv - python3-venv
- wget
- ncurses-base
- libncurses-dev
- numactl
- libnuma-dev
- libssh-dev
- libunwind-dev
- llvm-dev
- libpth-dev
- qemu-kvm - qemu-kvm
- re2c - re2c
- subversion - subversion
- fakeroot - wget
- 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 - zip
- libjpeg-turbo-official
- libjpeg-dev
- libwebp-dev
- libfreetype-dev
- gnutls-bin
- ffmpeg
- libopenblas-dev
- liblapack-dev
- libswscale-dev
- libavformat-dev
- name: pipModules - name: pipModules
type: object type: object
default: default:
- cmake
- astunparse - astunparse
- "expecttest>=0.2.1" - "expecttest>=0.3.0"
- hypothesis - hypothesis
- numpy - numpy
- psutil - psutil
@@ -76,8 +76,8 @@ parameters:
- requests - requests
- setuptools==75.8.0 - setuptools==75.8.0
- types-dataclasses - types-dataclasses
- "typing-extensions>=4.8.0" - "typing-extensions>=4.10.0"
- "sympy>=1.13.0" - "sympy>=1.13.3"
- filelock - filelock
- networkx - networkx
- jinja2 - jinja2
@@ -97,36 +97,39 @@ parameters:
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
- rocminfo
- MIOpen
- clr - clr
- hipBLAS - hipBLAS
- hipBLASLt
- hipFFT - hipFFT
- hipRAND - hipRAND
- hipSOLVER - hipSOLVER
- hipSPARSE - hipSPARSE
- ROCR-Runtime - hipSPARSELt
- llvm-project - llvm-project
- MIOpen
- rccl - rccl
- rocBLAS - rocBLAS
- rocFFT - rocFFT
- rocm-core
- rocminfo
- rocm_smi_lib - rocm_smi_lib
- rocPRIM
- rocprofiler-register
- rocRAND - rocRAND
- ROCR-Runtime
- rocSOLVER - rocSOLVER
- rocSPARSE - rocSPARSE
- roctracer - roctracer
- hipBLASLt
- rocprofiler-register
- rocm-core
- rocPRIM
# below are additional dependencies not called out by build script, but throw errors during cmake # below are additional dependencies not called out by build script, but throw errors during cmake
- composable_kernel
- hipBLAS-common
- hipCUB - hipCUB
- rocThrust - rocThrust
- hipBLAS-common
- composable_kernel
- name: rocmTestDependencies - name: rocmTestDependencies
type: object type: object
default: default:
# rocroller.so needed and is not included in the wheel
- hipBLASLt
- rocminfo - rocminfo
# Reference on what tests to run for torchvision found in private repo: # 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 # https://github.com/ROCm/rocAutomation/blob/jenkins-pipelines/pytorch/pytorch_ci/test_pytorch_test1.sh#L54
@@ -216,7 +219,6 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
dependencySource: staging
gpuTarget: $(JOB_GPU_TARGET) gpuTarget: $(JOB_GPU_TARGET)
setupHIPLibrarySymlinks: true setupHIPLibrarySymlinks: true
- task: Bash@3 - task: Bash@3
@@ -240,12 +242,6 @@ jobs:
git clone https://github.com/pytorch/builder.git --depth=1 --recurse-submodules git clone https://github.com/pytorch/builder.git --depth=1 --recurse-submodules
sudo ln -s $(Build.SourcesDirectory)/builder /builder sudo ln -s $(Build.SourcesDirectory)/builder /builder
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: Temporarily Patch CK Submodule
inputs:
targetType: inline
script: git pull origin develop
workingDirectory: $(Build.SourcesDirectory)/pytorch/third_party/composable_kernel
- task: Bash@3 - task: Bash@3
displayName: Install patchelf displayName: Install patchelf
inputs: inputs:
@@ -267,6 +263,11 @@ jobs:
script: | script: |
sudo bash pytorch/.ci/docker/common/install_rocm_magma.sh $(MAGMA_ROCM) sudo bash pytorch/.ci/docker/common/install_rocm_magma.sh $(MAGMA_ROCM)
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Build.SourcesDirectory)
- task: Bash@3
displayName: Install targeted typing_extensions for build
inputs:
targetType: inline
script: pip install --target=$(Build.SourcesDirectory)/pytorch/torch/.. typing_extensions
- task: Bash@3 - task: Bash@3
displayName: Run ROCm Build Script displayName: Run ROCm Build Script
inputs: inputs:
@@ -281,7 +282,6 @@ jobs:
PYTORCH_ROOT=$(PYTORCH_ROOT) PYTORCH_ROOT=$(PYTORCH_ROOT)
CMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm CMAKE_PREFIX_PATH=$(Agent.BuildDirectory)/rocm
DESIRED_DEVTOOLSET=$(DESIRED_DEVTOOLSET) 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_VERSION=$(cat $(Build.SourcesDirectory)/pytorch/version.txt | cut -da -f1)
PYTORCH_BUILD_NUMBER=$(date -u +%Y%m%d) PYTORCH_BUILD_NUMBER=$(date -u +%Y%m%d)
SKIP_ALL_TESTS=1 SKIP_ALL_TESTS=1
@@ -322,8 +322,6 @@ jobs:
inputs: inputs:
targetType: inline targetType: inline
script: >- 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) 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) BUILD_VERSION=$(cat $(Build.SourcesDirectory)/vision/version.txt | cut -da -f1)post$(date -u +%Y%m%d)
python3 setup.py bdist_wheel python3 setup.py bdist_wheel
@@ -399,18 +397,15 @@ jobs:
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/preamble.yml
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: 'Download Pipeline Wheel Files' displayName: 'Download Pipeline Wheel Files'
retryCountOnTaskFailure: 3
inputs: inputs:
itemPattern: '**/*$(JOB_GPU_TARGET)*.whl' itemPattern: '**/*.whl'
targetPath: $(Agent.BuildDirectory) targetPath: $(Agent.BuildDirectory)
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-aqlprofile.yml
parameters:
dependencySource: staging
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
dependencyList: ${{ parameters.rocmTestDependencies }} dependencyList: ${{ parameters.rocmTestDependencies }}
gpuTarget: $(JOB_GPU_TARGET) gpuTarget: $(JOB_GPU_TARGET)
dependencySource: staging
skipLlvmSymlink: true
# get sources to run test scripts # get sources to run test scripts
- task: Bash@3 - task: Bash@3
displayName: git clone upstream pytorch displayName: git clone upstream pytorch

View File

@@ -3,12 +3,21 @@ parameters:
- name: jobList - name: jobList
type: object type: object
default: default:
- gfx942-staging: - { os: ubuntu2204, packageManager: apt, target: gfx942 }
target: gfx942 - { os: ubuntu2204, packageManager: apt, target: gfx90a }
source: staging - { os: ubuntu2204, packageManager: apt, target: gfx1201 }
- gfx90a-staging: - { os: ubuntu2204, packageManager: apt, target: gfx1100 }
target: gfx90a - { os: ubuntu2204, packageManager: apt, target: gfx1030 }
source: staging - { os: ubuntu2404, packageManager: apt, target: gfx942 }
- { os: ubuntu2404, packageManager: apt, target: gfx90a }
- { os: ubuntu2404, packageManager: apt, target: gfx1201 }
- { os: ubuntu2404, packageManager: apt, target: gfx1100 }
- { os: ubuntu2404, packageManager: apt, target: gfx1030 }
- { os: almalinux8, packageManager: dnf, target: gfx942 }
- { os: almalinux8, packageManager: dnf, target: gfx90a }
- { os: almalinux8, packageManager: dnf, target: gfx1201 }
- { os: almalinux8, packageManager: dnf, target: gfx1100 }
- { os: almalinux8, packageManager: dnf, target: gfx1030 }
- name: rocmDependencies - name: rocmDependencies
type: object type: object
default: default:
@@ -16,9 +25,9 @@ parameters:
- amdsmi - amdsmi
- aomp-extras - aomp-extras
- aomp - aomp
- clr
- composable_kernel - composable_kernel
- half - half
- HIP
- hip-tests - hip-tests
- hipBLAS - hipBLAS
- hipBLAS-common - hipBLAS-common
@@ -83,7 +92,8 @@ schedules:
jobs: jobs:
- ${{ each job in parameters.jobList }}: - ${{ each job in parameters.jobList }}:
- job: rocm_nightly_${{ job.target }}_${{ job.source }} - job: nightly_${{ job.os }}_${{ job.target }}
timeoutInMinutes: 120
variables: variables:
- group: common - group: common
- template: /.azuredevops/variables-global.yml - template: /.azuredevops/variables-global.yml
@@ -106,11 +116,9 @@ jobs:
displayName: System disk space before ROCm displayName: System disk space before ROCm
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/dependencies-rocm.yml
parameters: parameters:
dependencySource: ${{ job.source }}
dependencyList: ${{ parameters.rocmDependencies }} dependencyList: ${{ parameters.rocmDependencies }}
os: ${{ job.os }}
gpuTarget: ${{ job.target }} gpuTarget: ${{ job.target }}
skipLibraryLinking: true
skipLlvmSymlink: true
- script: df -h - script: df -h
displayName: System disk space after ROCm displayName: System disk space after ROCm
- script: du -sh $(Agent.BuildDirectory)/rocm - script: du -sh $(Agent.BuildDirectory)/rocm
@@ -123,7 +131,7 @@ jobs:
includeRootFolder: false includeRootFolder: false
archiveType: tar archiveType: tar
tarCompression: gz tarCompression: gz
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.DefinitionName)_$(Build.BuildNumber)_ubuntu2204_${{ job.target }}.tar.gz archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.DefinitionName)_$(Build.BuildNumber)_${{ job.os }}_${{ job.target }}.tar.gz
- script: du -sh $(Build.ArtifactStagingDirectory) - script: du -sh $(Build.ArtifactStagingDirectory)
displayName: Compressed ROCm size displayName: Compressed ROCm size
- task: PublishPipelineArtifact@1 - task: PublishPipelineArtifact@1
@@ -136,5 +144,96 @@ jobs:
inputs: inputs:
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
targetType: inline targetType: inline
script: echo "$(Build.DefinitionName)_$(Build.BuildNumber)_ubuntu2204_${{ job.target }}.tar.gz" >> pipelineArtifacts.txt script: echo "$(Build.DefinitionName)_$(Build.BuildNumber)_${{ job.os }}_${{ job.target }}.tar.gz" >> pipelineArtifacts.txt
- template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml - template: ${{ variables.CI_TEMPLATE_PATH }}/steps/artifact-links.yml
- ${{ if eq(job.packageManager, 'apt') }}:
- task: Bash@3
displayName: Create Dockerfile
inputs:
workingDirectory: $(Agent.BuildDirectory)
targetType: inline
script: |
cat <<'EOF' > Dockerfile
${{ iif(eq(job.os, 'ubuntu2204'), 'FROM ubuntu:22.04', '') }}
${{ iif(eq(job.os, 'ubuntu2404'), 'FROM ubuntu:24.04', '') }}
WORKDIR /root
RUN mkdir rocm
RUN apt update \
&& apt upgrade -y \
&& apt install -y cmake curl git gcc g++ gpg lsb-release lsof ninja-build pkg-config python3 python3-pip wget zip libdrm-dev libelf-dev libgtest-dev libhsakmt-dev libhwloc-dev libnuma-dev libstdc++-12-dev libtbb-dev jq \
&& apt clean all
RUN PACKAGE_NAME=$(curl -s https://repo.radeon.com/rocm/apt/latest/pool/main/h/hsa-amd-aqlprofile/ | grep -oP "href=\"\K[^\"]*$(lsb_release -rs)[^\"]*\.deb") \
&& wget -nv --retry-connrefused https://repo.radeon.com/rocm/apt/latest/pool/main/h/hsa-amd-aqlprofile/$PACKAGE_NAME \
&& mkdir hsa-amd-aqlprofile \
&& dpkg-deb -R $PACKAGE_NAME hsa-amd-aqlprofile \
&& cp -R hsa-amd-aqlprofile/opt/rocm-*/* rocm
RUN ARTIFACT_URL="https://dev.azure.com/ROCm-CI/ROCm-CI/_apis/build/builds/$(Build.BuildId)/artifacts?artifactName=nightly${{ job.os }}${{ job.target }}&api-version=7.1" \
&& DOWNLOAD_URL=$(curl -s $ARTIFACT_URL | jq ".resource.downloadUrl" | tr -d '"') \
&& wget -nv --retry-connrefused $DOWNLOAD_URL -O nightly.zip \
&& unzip nightly.zip \
&& tar -xf nightly${{ job.os }}${{ job.target }}/rocm-nightly*${{ job.os }}*${{ job.target }}*.tar.gz -C rocm
RUN echo /root/rocm/lib | tee /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/llvm/lib | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/lib64 | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/llvm/lib64 | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN ldconfig -v
ENV PATH="$PATH:/root/rocm/bin"
ENTRYPOINT ["/bin/bash"]
EOF
cat Dockerfile
- ${{ elseif eq(job.packageManager, 'dnf') }}:
- task: Bash@3
displayName: Create Dockerfile
inputs:
workingDirectory: $(Agent.BuildDirectory)
targetType: inline
script: |
cat <<'EOF' > Dockerfile
${{ iif(eq(job.os, 'almalinux8'), 'FROM almalinux:8', '') }}
WORKDIR /root
RUN mkdir rocm
RUN dnf install -y cmake curl git gcc gcc-c++ gnupg2 redhat-lsb-core lsof pkgconf python3 python3-pip wget zip libdrm-devel elfutils-libelf-devel numactl-devel libstdc++-devel tbb-devel jq \
&& dnf clean all
RUN PACKAGE_NAME=$(curl -s https://repo.radeon.com/rocm/rhel8/$(REPO_RADEON_VERSION)/main/ | grep -oP "hsa-amd-aqlprofile-[^\"]+\.rpm" | head -n1) \
&& wget -nv --retry-connrefused https://repo.radeon.com/rocm/rhel8/$(REPO_RADEON_VERSION)/main/$PACKAGE_NAME \
&& mkdir hsa-amd-aqlprofile \
&& dnf -y install rpm-build cpio \
&& rpm2cpio $PACKAGE_NAME | (cd hsa-amd-aqlprofile && cpio -idmv) \
&& cp -R hsa-amd-aqlprofile/opt/rocm-*/* rocm
RUN ARTIFACT_URL="https://dev.azure.com/ROCm-CI/ROCm-CI/_apis/build/builds/$(Build.BuildId)/artifacts?artifactName=nightly${{ job.os }}${{ job.target }}&api-version=7.1" \
&& DOWNLOAD_URL=$(curl -s $ARTIFACT_URL | jq ".resource.downloadUrl" | tr -d '"') \
&& wget -nv --retry-connrefused $DOWNLOAD_URL -O nightly.zip \
&& UNZIP_DISABLE_ZIPBOMB_DETECTION=TRUE unzip nightly.zip \
&& tar -xf nightly${{ job.os }}${{ job.target }}/rocm-nightly*${{ job.os }}*${{ job.target }}*.tar.gz -C rocm
RUN echo /root/rocm/lib | tee /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/llvm/lib | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/lib64 | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN echo /root/rocm/llvm/lib64 | tee -a /etc/ld.so.conf.d/rocm-ci.conf
RUN ldconfig -v
ENV PATH="$PATH:/root/rocm/bin"
ENTRYPOINT ["/bin/bash"]
EOF
cat Dockerfile
- task: Docker@2
displayName: Build and upload Docker image
retryCountOnTaskFailure: 3
inputs:
containerRegistry: ContainerService3
repository: 'nightly-${{ job.os }}-${{ job.target }}'
Dockerfile: '$(Agent.BuildDirectory)/Dockerfile'
buildContext: '$(Agent.BuildDirectory)'
- task: Bash@3
displayName: '!! Docker Run Command !!'
inputs:
targetType: inline
script: echo "docker run -it --network=host --device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined rocmexternalcicd.azurecr.io/nightly-${{ job.os }}-${{ job.target }}:$(Build.BuildId)" | tr '[:upper:]' '[:lower:]'

View File

@@ -0,0 +1,23 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: catch2Version
type: string
default: "v3.7.0"
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/catch2.yml
parameters:
catch2Version: ${{ parameters.catch2Version }}

View File

@@ -0,0 +1,23 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: cli11Version
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 }}/cli11.yml
parameters:
cli11Version: ${{ parameters.cli11Version }}

View File

@@ -28,12 +28,22 @@ resources:
endpoint: ROCm endpoint: ROCm
name: ROCm/hipother name: ROCm/hipother
ref: ${{ parameters.checkoutRef }} ref: ${{ parameters.checkoutRef }}
pipelines:
- pipeline: hip_pipeline
source: \experimental\HIP
trigger: true
- pipeline: hipother_pipeline
source: \experimental\hipother
trigger: true
trigger: none trigger: none
pr: none pr: none
jobs: jobs:
- template: ${{ variables.CI_COMPONENT_PATH }}/HIP.yml - ${{ if eq(variables['Build.Reason'], 'ResourceTrigger') }}:
parameters: - template: ${{ variables.CI_COMPONENT_PATH }}/copyHIP.yml@pipelines_repo
checkoutRepo: release_repo - ${{ if ne(variables['Build.Reason'], 'ResourceTrigger') }}:
checkoutRef: ${{ parameters.checkoutRef }} - template: ${{ variables.CI_COMPONENT_PATH }}/HIP.yml@pipelines_repo
parameters:
checkoutRepo: release_repo
checkoutRef: ${{ parameters.checkoutRef }}

View File

@@ -0,0 +1,23 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: fmtlibVersion
type: string
default: "11.1.3"
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/fmtlib.yml
parameters:
fmtlibVersion: ${{ parameters.fmtlibVersion }}

View File

@@ -0,0 +1,23 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: libdivideVersion
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 }}/libdivide.yml
parameters:
libdivideVersion: ${{ parameters.libdivideVersion }}

View File

@@ -0,0 +1,23 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: spdlogVersion
type: string
default: "v1.15.1"
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/spdlog.yml
parameters:
spdlogVersion: ${{ parameters.spdlogVersion }}

View File

@@ -0,0 +1,24 @@
variables:
- group: common
- template: /.azuredevops/variables-global.yml
parameters:
- name: yamlcppVersion
type: string
default: "0.8.0"
resources:
repositories:
- repository: pipelines_repo
type: github
endpoint: ROCm
name: ROCm/ROCm
trigger: none
pr: none
jobs:
- template: ${{ variables.CI_DEPENDENCIES_PATH }}/yamlcpp.yml
parameters:
yamlcppVersion: ${{ parameters.yamlcppVersion }}

View File

@@ -12,6 +12,9 @@ parameters:
- name: fileFilter - name: fileFilter
type: string type: string
default: '' default: ''
- name: extractAndDeleteFiles
type: boolean
default: true
# set to true if doing full build of ROCm stack # set to true if doing full build of ROCm stack
# and dependencies are pulled from same pipeline # and dependencies are pulled from same pipeline
- name: aggregatePipeline - name: aggregatePipeline
@@ -19,46 +22,39 @@ parameters:
default: false default: false
steps: steps:
- task: Bash@3
displayName: Set allowPartiallySucceededBuilds
inputs:
targetType: inline
script: |
if [[ ",$ALLOWED_PARTIAL_SUCCEED_BUILDS," == *",${{ parameters.componentName }},"* ]]; then
echo "##vso[task.setvariable variable=allowPartiallySucceededBuilds;]true"
else
echo "##vso[task.setvariable variable=allowPartiallySucceededBuilds;]false"
fi
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: Download ${{ parameters.componentName }} displayName: Download ${{ parameters.componentName }}
retryCountOnTaskFailure: 3
inputs: inputs:
${{ if eq(parameters.aggregatePipeline, false) }}: ${{ if eq(parameters.componentName, 'clr') }}:
itemPattern: '**/*${{ parameters.componentName }}*${{ parameters.fileFilter }}*amd*' # filter out nvidia clr artifacts
${{ else }}:
itemPattern: '**/*${{ parameters.componentName }}*${{ parameters.fileFilter }}*'
targetPath: '$(Pipeline.Workspace)/d'
allowPartiallySucceededBuilds: true
${{ if parameters.aggregatePipeline }}:
buildType: 'current'
${{ else }}:
buildType: 'specific' buildType: 'specific'
project: ROCm-CI project: ROCm-CI
definition: ${{ parameters.pipelineId }}
specificBuildWithTriggering: true specificBuildWithTriggering: true
itemPattern: '**/*${{ parameters.fileFilter }}*' definition: ${{ parameters.pipelineId }}
# aomp is a special case, since the trigger file is under ROCm/ROCm instead of the component repo
${{ if notIn(parameters.componentName, 'aomp') }}:
buildVersionToDownload: latestFromBranch # default is 'latest'
branchName: refs/heads/${{ parameters.branchName }} branchName: refs/heads/${{ parameters.branchName }}
allowPartiallySucceededBuilds: $(allowPartiallySucceededBuilds) ${{ if eq(parameters.componentName, 'aomp') }}:
targetPath: '$(Pipeline.Workspace)/d' buildVersionToDownload: latest # aomp trigger lives in ROCm/ROCm, so cannot use ROCm/aomp branch names
${{ else }}: ${{ else }}:
buildType: 'current' buildVersionToDownload: latestFromBranch
itemPattern: '**/${{ parameters.componentName }}*${{ parameters.fileFilter }}*' - ${{ if eq(parameters.extractAndDeleteFiles, true) }}:
allowPartiallySucceededBuilds: $(allowPartiallySucceededBuilds) - task: ExtractFiles@1
targetPath: '$(Pipeline.Workspace)/d' displayName: Extract ${{ parameters.componentName }}
- task: ExtractFiles@1 inputs:
displayName: Extract ${{ parameters.componentName }} archiveFilePatterns: '$(Pipeline.Workspace)/d/**/*.tar.gz'
inputs: destinationFolder: '$(Agent.BuildDirectory)/rocm'
archiveFilePatterns: '$(Pipeline.Workspace)/d/**/*.tar.gz' cleanDestinationFolder: false
destinationFolder: '$(Agent.BuildDirectory)/rocm' overwriteExistingFiles: true
cleanDestinationFolder: false - task: DeleteFiles@1
overwriteExistingFiles: true displayName: Clean up Compressed ${{ parameters.componentName }}
- task: DeleteFiles@1 inputs:
displayName: Cleanup Compressed ${{ parameters.componentName }} SourceFolder: '$(Pipeline.Workspace)/d'
inputs: Contents: '**/*.tar.gz'
SourceFolder: '$(Pipeline.Workspace)/d' RemoveDotFiles: true
Contents: '**/*.tar.gz'
RemoveDotFiles: true

View File

@@ -15,8 +15,8 @@ steps:
URL_BEGIN="https://artprodcus3.artifacts.visualstudio.com/" URL_BEGIN="https://artprodcus3.artifacts.visualstudio.com/"
URL_MIDDLE="/_apis/artifact/" URL_MIDDLE="/_apis/artifact/"
URL_END="/content?format=file&subPath=%2F" URL_END="/content?format=file&subPath=%2F"
FORMATTED_JOB_NAME=$(echo $(Agent.JobName) | sed 's/ /./g; s/[-_]//g') ARTIFACT_NAME="$(Agent.JobName)_$(System.JobAttempt)"
ARTIFACT_STRING="pipelineartifact://ROCm-CI/projectId/$(DOWNLOAD_PROJECT_ID)/buildId/$(Build.BuildId)/artifactName/${FORMATTED_JOB_NAME}" ARTIFACT_STRING="pipelineartifact://ROCm-CI/projectId/$(DOWNLOAD_PROJECT_ID)/buildId/$(Build.BuildId)/artifactName/${ARTIFACT_NAME}"
ENCODED_STRING=$(echo -n "${ARTIFACT_STRING}" | base64 -w 0) ENCODED_STRING=$(echo -n "${ARTIFACT_STRING}" | base64 -w 0)
PADDING_COUNT=$(echo -n "${ENCODED_STRING}" | awk -F= '{print NF-1}') PADDING_COUNT=$(echo -n "${ENCODED_STRING}" | awk -F= '{print NF-1}')
if [ "$PADDING_COUNT" -gt 0 ]; then if [ "$PADDING_COUNT" -gt 0 ]; then

View File

@@ -26,7 +26,7 @@ steps:
includeRootFolder: false includeRootFolder: false
archiveType: 'tar' archiveType: 'tar'
tarCompression: 'gz' tarCompression: 'gz'
archiveFile: '$(Build.ArtifactStagingDirectory)/${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.tar.gz' archiveFile: '$(Build.ArtifactStagingDirectory)/${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}_$(System.JobAttempt).tar.gz'
- task: DeleteFiles@1 - task: DeleteFiles@1
displayName: 'Cleanup Staging Area' displayName: 'Cleanup Staging Area'
inputs: inputs:
@@ -38,7 +38,7 @@ steps:
inputs: inputs:
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
targetType: inline targetType: inline
script: echo "${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.tar.gz" >> pipelineArtifacts.txt script: echo "${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}_$(System.JobAttempt).tar.gz" >> pipelineArtifacts.txt
# then publish it # then publish it
- ${{ if parameters.publish }}: - ${{ if parameters.publish }}:
- task: PublishPipelineArtifact@1 - task: PublishPipelineArtifact@1
@@ -46,4 +46,6 @@ steps:
displayName: '${{ parameters.artifactName }} Publish' displayName: '${{ parameters.artifactName }} Publish'
retryCountOnTaskFailure: 3 retryCountOnTaskFailure: 3
inputs: inputs:
# if this artifact name is changed, please also update $ARTIFACT_URL inside miopen-get-ck-build.yml
artifactName: $(Agent.JobName)_$(System.JobAttempt)
targetPath: '$(Build.ArtifactStagingDirectory)' targetPath: '$(Build.ArtifactStagingDirectory)'

View File

@@ -1,4 +1,7 @@
parameters: parameters:
- name: os
type: string
default: 'ubuntu2204'
- name: componentName - name: componentName
type: string type: string
default: '' default: ''
@@ -20,17 +23,23 @@ steps:
displayName: '${{ parameters.componentName }} configure flags' displayName: '${{ parameters.componentName }} configure flags'
inputs: inputs:
targetType: inline targetType: inline
script: ./configure --prefix=${{ parameters.installDir }} ${{ parameters.configureFlags }}
workingDirectory: ${{ parameters.buildDir }} workingDirectory: ${{ parameters.buildDir }}
script: |
${{ iif(eq(parameters.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
./configure --prefix=${{ parameters.installDir }} ${{ parameters.configureFlags }}
- task: Bash@3 - task: Bash@3
displayName: '${{ parameters.componentName }} make' displayName: '${{ parameters.componentName }} make'
inputs: inputs:
targetType: inline targetType: inline
script: ${{ parameters.makeCallPrefix }} make -j$(nproc)
workingDirectory: ${{ parameters.buildDir }} workingDirectory: ${{ parameters.buildDir }}
script: |
${{ iif(eq(parameters.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
${{ parameters.makeCallPrefix }} make -j$(nproc)
- task: Bash@3 - task: Bash@3
displayName: '${{ parameters.componentName }} make install' displayName: '${{ parameters.componentName }} make install'
inputs: inputs:
targetType: inline targetType: inline
script: make install
workingDirectory: ${{ parameters.buildDir }} workingDirectory: ${{ parameters.buildDir }}
script: |
${{ iif(eq(parameters.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
make install

View File

@@ -20,7 +20,7 @@ steps:
retryCountOnTaskFailure: 3 retryCountOnTaskFailure: 3
fetchFilter: blob:none fetchFilter: blob:none
${{ if ne(parameters.sparseCheckoutDir, '') }}: ${{ if ne(parameters.sparseCheckoutDir, '') }}:
sparseCheckoutDirectories: ${{ parameters.sparseCheckoutDir }} sparseCheckoutDirectories: ${{ parameters.sparseCheckoutDir }} shared
path: sparse path: sparse
- ${{ if ne(parameters.sparseCheckoutDir, '') }}: - ${{ if ne(parameters.sparseCheckoutDir, '') }}:
- task: Bash@3 - task: Bash@3

View File

@@ -1,10 +1,15 @@
parameters: parameters:
- name: os
type: string
default: ubuntu2204
- name: repositoryUrl - name: repositoryUrl
type: string type: string
default: https://download.amd.com/developer/eula/aocl/aocl-4-2 default: https://download.amd.com/developer/eula/aocl/aocl-4-2
- name: packageName - name: packageName
type: string type: object
default: aocl-linux-gcc-4.2.0_1_amd64.deb default:
ubuntu2204: aocl-linux-gcc-4.2.0_1_amd64.deb
almalinux8: aocl-linux-gcc-4.2.0-1.x86_64.rpm
steps: steps:
- task: Bash@3 - task: Bash@3
@@ -12,16 +17,19 @@ steps:
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
script: wget -nv ${{ parameters.repositoryUrl }}/${{ parameters.packageName }} script: wget -nv ${{ parameters.repositoryUrl }}/${{ parameters.packageName[parameters.os] }}
- task: Bash@3 - task: Bash@3
displayName: Install AOCL displayName: Install AOCL
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
script: sudo apt install -y ./${{ parameters.packageName }} ${{ if eq(parameters.os, 'ubuntu2204') }}:
script: sudo apt install -y ./${{ parameters.packageName[parameters.os] }}
${{ elseif eq(parameters.os, 'almalinux8') }}:
script: sudo dnf install -y ./${{ parameters.packageName[parameters.os] }}
- task: Bash@3 - task: Bash@3
displayName: Clean up AOCL displayName: Clean up AOCL
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
script: rm -f ${{ parameters.packageName }} script: rm -f ${{ parameters.packageName[parameters.os] }}

View File

@@ -10,6 +10,7 @@ steps:
- ${{ if eq(parameters.registerROCmPackages, true) }}: - ${{ if eq(parameters.registerROCmPackages, true) }}:
- task: Bash@3 - task: Bash@3
displayName: 'Register AMDGPU & ROCm repos (apt)' displayName: 'Register AMDGPU & ROCm repos (apt)'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
@@ -20,7 +21,8 @@ steps:
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600 echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
sudo apt update sudo apt update
- task: Bash@3 - task: Bash@3
displayName: 'sudo apt-get update' displayName: 'APT update and install packages'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
@@ -28,15 +30,6 @@ steps:
echo "deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list echo "deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list
echo "deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list echo "deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list
echo "deb http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list echo "deb http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/default.list
sudo DEBIAN_FRONTEND=noninteractive apt-get --yes update sudo DEBIAN_FRONTEND=noninteractive apt-get --yes update && \
- task: Bash@3 sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --fix-broken install && \
displayName: 'sudo apt-get fix' sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --fix-missing install ${{ join(' ', parameters.aptPackages) }}
inputs:
targetType: inline
script: sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --fix-broken install
- ${{ if gt(length(parameters.aptPackages), 0) }}:
- task: Bash@3
displayName: 'sudo apt-get install ...'
inputs:
targetType: inline
script: sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --fix-missing install ${{ join(' ', parameters.aptPackages) }}

View File

@@ -1,36 +1,32 @@
parameters:
- name: os
type: string
default: ubuntu2204
steps: steps:
- task: Bash@3 - task: Bash@3
displayName: Get aqlprofile package name displayName: Download and install aqlprofile
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Agent.BuildDirectory)
script: | script: |
export packageName=$(curl -s https://repo.radeon.com/rocm/apt/$(REPO_RADEON_VERSION)/pool/main/h/hsa-amd-aqlprofile/ | grep -oP "href=\"\K[^\"]*$(lsb_release -rs)[^\"]*\.deb") set -e
echo "##vso[task.setvariable variable=packageName;isreadonly=true]$packageName" if [ "${{ parameters.os }}" = "ubuntu2204" ]; then
- task: Bash@3 packageName=$(curl -s https://repo.radeon.com/rocm/apt/$(REPO_RADEON_VERSION)/pool/main/h/hsa-amd-aqlprofile/ | grep -oP "href=\"\K[^\"]*$(lsb_release -rs)[^\"]*\.deb") && \
displayName: 'Download aqlprofile' wget -nv https://repo.radeon.com/rocm/apt/$(REPO_RADEON_VERSION)/pool/main/h/hsa-amd-aqlprofile/$packageName && \
inputs: mkdir -p hsa-amd-aqlprofile && \
targetType: inline dpkg-deb -R $packageName hsa-amd-aqlprofile
script: wget -nv https://repo.radeon.com/rocm/apt/$(REPO_RADEON_VERSION)/pool/main/h/hsa-amd-aqlprofile/$(packageName) elif [ "${{ parameters.os }}" = "almalinux8" ]; then
workingDirectory: '$(Pipeline.Workspace)' sudo dnf -y install rpm-build cpio && \
- task: Bash@3 packageName=$(curl -s https://repo.radeon.com/rocm/rhel8/$(REPO_RADEON_VERSION)/main/ | grep -oP "hsa-amd-aqlprofile-[^\"]+\.rpm" | head -n1) && \
displayName: 'Extract aqlprofile' wget -nv https://repo.radeon.com/rocm/rhel8/$(REPO_RADEON_VERSION)/main/$packageName && \
inputs: mkdir -p hsa-amd-aqlprofile && \
targetType: inline rpm2cpio $packageName | (cd hsa-amd-aqlprofile && cpio -idmv)
script: | else
mkdir hsa-amd-aqlprofile echo "Unsupported OS: ${{ parameters.os }}"
dpkg-deb -R $(packageName) hsa-amd-aqlprofile exit 1
workingDirectory: '$(Pipeline.Workspace)' fi && \
- task: Bash@3 mkdir -p $(Agent.BuildDirectory)/rocm && \
displayName: 'Copy aqlprofile files' cp -R hsa-amd-aqlprofile/opt/rocm-*/* $(Agent.BuildDirectory)/rocm && \
inputs: rm -rf hsa-amd-aqlprofile $packageName
targetType: inline
script: |
mkdir -p $(Agent.BuildDirectory)/rocm
cp -R hsa-amd-aqlprofile/opt/rocm-*/* $(Agent.BuildDirectory)/rocm
workingDirectory: '$(Pipeline.Workspace)'
- task: Bash@3
displayName: 'Clean up aqlprofile'
inputs:
targetType: inline
script: rm -rf hsa-amd-aqlprofile $(packageName)
workingDirectory: '$(Pipeline.Workspace)'

View File

@@ -0,0 +1,28 @@
parameters:
- name: cmakeVersion
type: string
default: '3.31.0'
steps:
- task: Bash@3
displayName: Install CMake ${{ parameters.cmakeVersion }}
inputs:
targetType: inline
script: |
CMAKE_VERSION=${{ parameters.cmakeVersion }}
CMAKE_ROOT="$(Pipeline.Workspace)/cmake"
echo "Downloading CMake $CMAKE_VERSION..."
curl -fsSL -o cmake.tar.gz https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
echo "Extracting to $CMAKE_ROOT..."
sudo mkdir -p $CMAKE_ROOT
sudo tar --strip-components=1 -xz -C $CMAKE_ROOT -f cmake.tar.gz
echo "##vso[task.prependpath]$CMAKE_ROOT/bin"
- task: Bash@3
displayName: cmake --version
inputs:
targetType: inline
script: |
cmake --version

View File

@@ -1,10 +0,0 @@
# replace cmake from apt install with newest version using snap install
steps:
- task: Bash@3
displayName: update cmake
inputs:
targetType: inline
script: |
sudo apt purge cmake -y
sudo snap install cmake --classic --channel=3.31/stable
hash -r

View File

@@ -28,8 +28,9 @@ parameters:
bison: bison bison: bison
ccache: ccache ccache: ccache
cmake: cmake cmake: cmake
cuda-toolkit: cuda-toolkit cuda-toolkit-12-9: cuda-compiler-12-9 cuda-toolkit-12-9
cudnn: libcudnn9-cuda-11 libcudnn9-dev-cuda-12: libcudnn9-cuda-12
dejagnu: dejagnu
doxygen: doxygen doxygen: doxygen
# note: doxygen-doc is not available in dnf # note: doxygen-doc is not available in dnf
# libavcodec-dev, libavformat-dev, libavutil-dev come with ffmpeg-devel # libavcodec-dev, libavformat-dev, libavutil-dev come with ffmpeg-devel
@@ -42,19 +43,27 @@ parameters:
graphviz: graphviz graphviz: graphviz
libbabeltrace-dev: libbabeltrace-devel libbabeltrace-dev: libbabeltrace-devel
libbison-dev: bison-devel libbison-dev: bison-devel
libboost-program-options-dev: boost-devel
# note: libdrm-amdgpu1 is not available in dnf # note: libdrm-amdgpu1 is not available in dnf
libdrm-dev: libdrm-devel libdrm-dev: libdrm-devel
libdrm-amdgpu-dev: libdrm-amdgpu-devel libdrm-amdgpu-dev: libdrm-amdgpu-devel
libdw-dev: libdw-devel libdw-dev: elfutils-devel
libelf-dev: elfutils-libelf-devel elfutils-devel libelf-dev: elfutils-libelf-devel
libffi-dev: libffi-devellibtool libexpat-dev: expat-devel
libffi-dev: libffi-devel
libfftw3-dev: fftw-devel
libfmt-dev: fmt-devel
libgmp-dev: gmp-devel libgmp-dev: gmp-devel
liblapack-dev: lapack-devel
liblzma-dev: xz-devel liblzma-dev: xz-devel
libmpfr-dev: mpfr-devel libmpfr-dev: mpfr-devel
libmsgpack-dev: msgpack-devel
libncurses5-dev: ncurses-devel libncurses5-dev: ncurses-devel
libnuma-dev: numactl-devel libnuma-dev: numactl-devel
libopenblas-dev: openblas-devel
libopenmpi-dev: openmpi-devel libopenmpi-dev: openmpi-devel
libpci-dev: libpciaccess-devel libpci-dev: libpciaccess-devel
libsimde-dev: simde-devel
libssl-dev: openssl-devel libssl-dev: openssl-devel
# note: libstdc++-devel is in the base packages list # note: libstdc++-devel is in the base packages list
libsystemd-dev: systemd-devel libsystemd-dev: systemd-devel
@@ -63,6 +72,7 @@ parameters:
libva-amdgpu-dev: libva-amdgpu-devel libva-amdgpu-dev: libva-amdgpu-devel
mesa-amdgpu-va-drivers: mesa-amdgpu-va-drivers mesa-amdgpu-va-drivers: mesa-amdgpu-va-drivers
mesa-common-dev: mesa-libGL-devel mesa-common-dev: mesa-libGL-devel
ncurses-dev: ncurses-devel
# note: llvm needs ninja-build version newer than what dnf provides # note: llvm needs ninja-build version newer than what dnf provides
ocl-icd-libopencl1: ocl-icd ocl-icd-libopencl1: ocl-icd
ocl-icd-opencl-dev: ocl-icd-devel ocl-icd-opencl-dev: ocl-icd-devel
@@ -80,6 +90,7 @@ steps:
- ${{ if eq(parameters.registerROCmPackages, true) }}: - ${{ if eq(parameters.registerROCmPackages, true) }}:
- task: Bash@3 - task: Bash@3
displayName: 'Register AMDGPU & ROCm repos (dnf)' displayName: 'Register AMDGPU & ROCm repos (dnf)'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
@@ -100,12 +111,13 @@ steps:
sudo dnf makecache sudo dnf makecache
- task: Bash@3 - task: Bash@3
displayName: 'Install base dnf packages' displayName: 'Install base dnf packages'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
sudo dnf config-manager --set-enabled powertools
# rpm fusion free repo for some dependencies # rpm fusion free repo for some dependencies
sudo dnf -y install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm sudo dnf config-manager --set-enabled powertools && \
sudo dnf -y install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm && \
sudo dnf -y install ${{ join(' ', parameters.basePackages) }} sudo dnf -y install ${{ join(' ', parameters.basePackages) }}
- task: Bash@3 - task: Bash@3
displayName: 'Check gcc environment' displayName: 'Check gcc environment'
@@ -119,6 +131,7 @@ steps:
g++ -print-file-name=libstdc++.so g++ -print-file-name=libstdc++.so
- task: Bash@3 - task: Bash@3
displayName: 'Set python 3.11 as default' displayName: 'Set python 3.11 as default'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
@@ -133,18 +146,20 @@ steps:
- ${{ if eq(pkg, 'ninja-build') }}: - ${{ if eq(pkg, 'ninja-build') }}:
- task: Bash@3 - task: Bash@3
displayName: 'Install ninja 1.11.1' displayName: 'Install ninja 1.11.1'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
curl -LO https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-linux.zip sudo dnf -y install unzip && \
sudo dnf -y install unzip curl -LO https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-linux.zip && \
unzip ninja-linux.zip unzip ninja-linux.zip && \
sudo mv ninja /usr/local/bin/ninja sudo mv ninja /usr/local/bin/ninja && \
sudo chmod +x /usr/local/bin/ninja sudo chmod +x /usr/local/bin/ninja && \
echo "##vso[task.prependpath]/usr/local/bin" echo "##vso[task.prependpath]/usr/local/bin"
- ${{ if ne(parameters.aptToDnfMap[pkg], '') }}: - ${{ if ne(parameters.aptToDnfMap[pkg], '') }}:
- task: Bash@3 - task: Bash@3
displayName: 'dnf install ${{ parameters.aptToDnfMap[pkg] }}' displayName: 'dnf install ${{ parameters.aptToDnfMap[pkg] }}'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: | script: |

View File

@@ -27,6 +27,7 @@ steps:
- ${{ if gt(length(parameters.pipModules), 0) }}: - ${{ if gt(length(parameters.pipModules), 0) }}:
- task: Bash@3 - task: Bash@3
displayName: 'pip install ...' displayName: 'pip install ...'
retryCountOnTaskFailure: 3
inputs: inputs:
targetType: inline targetType: inline
script: python3 -m pip install -v --force-reinstall ${{ join(' ', parameters.pipModules) }} script: python3 -m pip install -v --force-reinstall ${{ join(' ', parameters.pipModules) }}

View File

@@ -3,13 +3,6 @@ parameters:
- name: checkoutRef - name: checkoutRef
type: string type: string
default: '' default: ''
- name: dependencySource # optional, overrides checkoutRef
type: string
default: null
values:
- null # empty strings aren't allowed as values, use null instead
- staging
- mainline
- name: dependencyList - name: dependencyList
type: object type: object
default: [] default: []
@@ -19,16 +12,6 @@ parameters:
- name: gpuTarget - name: gpuTarget
type: string type: string
default: '' default: ''
# set to true if you're calling this template file multiple files in same pipeline
# only leave last call false to optimize sequence
- name: skipLibraryLinking
type: boolean
default: false
# set to true if llvm-project is not downloaded in a particular call
# or if you just don't want the symlink
- name: skipLlvmSymlink
type: boolean
default: false
# set to true if dlopen calls for HIP libraries are causing failures # set to true if dlopen calls for HIP libraries are causing failures
# because they do not follow shared library symlink convention # because they do not follow shared library symlink convention
- name: setupHIPLibrarySymlinks - name: setupHIPLibrarySymlinks
@@ -48,309 +31,248 @@ parameters:
type: object type: object
default: default:
AMDMIGraphX: AMDMIGraphX:
pipelineId: $(AMDMIGRAPHX_PIPELINE_ID) pipelineId: 113
stagingBranch: develop developBranch: develop
mainlineBranch: master
hasGpuTarget: true hasGpuTarget: true
amdsmi: amdsmi:
pipelineId: $(AMDSMI_PIPELINE_ID) pipelineId: 376
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
aomp-extras: aomp-extras:
pipelineId: $(AOMP_EXTRAS_PIPELINE_ID) pipelineId: 111
stagingBranch: aomp-dev developBranch: aomp-dev
mainlineBranch: aomp-dev
hasGpuTarget: false hasGpuTarget: false
aomp: aomp:
pipelineId: $(AOMP_PIPELINE_ID) pipelineId: 115
stagingBranch: aomp-dev developBranch: aomp-dev
mainlineBranch: amd-mainline hasGpuTarget: false
aqlprofile:
pipelineId: 365
developBranch: develop
hasGpuTarget: false hasGpuTarget: false
clr: clr:
pipelineId: $(CLR_PIPELINE_ID) pipelineId: 335
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
composable_kernel: composable_kernel:
pipelineId: $(COMPOSABLE_KERNEL_PIPELINE_ID) pipelineId: 86
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
half: half:
pipelineId: $(HALF_PIPELINE_ID) pipelineId: 101
stagingBranch: rocm developBranch: rocm
mainlineBranch: rocm
hasGpuTarget: false hasGpuTarget: false
HIP: HIP:
pipelineId: $(HIP_PIPELINE_ID) pipelineId: 335
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
hip-tests: hip-tests:
pipelineId: $(HIP_TESTS_PIPELINE_ID) pipelineId: 362
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
hipBLAS: hipBLAS:
pipelineId: $(HIPBLAS_PIPELINE_ID) pipelineId: 317
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipBLASLt: hipBLASLt:
pipelineId: $(HIPBLASLT_PIPELINE_ID) pipelineId: 301
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipBLAS-common: hipBLAS-common:
pipelineId: $(HIPBLAS_COMMON_PIPELINE_ID) pipelineId: 300
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
hipCUB: hipCUB:
pipelineId: $(HIPCUB_PIPELINE_ID) pipelineId: 277
stagingBranch: develop developBranch: develop
mainlineBranch: develop
hasGpuTarget: true hasGpuTarget: true
hipFFT: hipFFT:
pipelineId: $(HIPFFT_PIPELINE_ID) pipelineId: 283
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipfort: hipfort:
pipelineId: $(HIPFORT_PIPELINE_ID) pipelineId: 102
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
HIPIFY: HIPIFY:
pipelineId: $(HIPIFY_PIPELINE_ID) pipelineId: 92
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
hipRAND: hipRAND:
pipelineId: $(HIPRAND_PIPELINE_ID) pipelineId: 275
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipSOLVER: hipSOLVER:
pipelineId: $(HIPSOLVER_PIPELINE_ID) pipelineId: 84
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipSPARSE: hipSPARSE:
pipelineId: $(HIPSPARSE_PIPELINE_ID) pipelineId: 315
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipSPARSELt: hipSPARSELt:
pipelineId: $(HIPSPARSELT_PIPELINE_ID) pipelineId: 309
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
hipTensor: hipTensor:
pipelineId: $(HIPTENSOR_PIPELINE_ID) pipelineId: 374
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
llvm-project: llvm-project:
pipelineId: $(LLVM_PROJECT_PIPELINE_ID) pipelineId: 2
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
MIOpen: MIOpen:
pipelineId: $(MIOpen_PIPELINE_ID) pipelineId: 320
stagingBranch: develop developBranch: develop
mainlineBranch: amd-master
hasGpuTarget: true hasGpuTarget: true
MIVisionX: MIVisionX:
pipelineId: $(MIVISIONX_PIPELINE_ID) pipelineId: 80
stagingBranch: develop developBranch: develop
mainlineBranch: master
hasGpuTarget: true hasGpuTarget: true
omnitrace: # deprecated origami:
pipelineId: $(OMNITRACE_PIPELINE_ID) pipelineId: 364
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rccl: rccl:
pipelineId: $(RCCL_PIPELINE_ID) pipelineId: 107
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rdc: rdc:
pipelineId: $(RDC_PIPELINE_ID) pipelineId: 360
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocAL: rocAL:
pipelineId: $(ROCAL_PIPELINE_ID) pipelineId: 151
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rocALUTION: rocALUTION:
pipelineId: $(ROCALUTION_PIPELINE_ID) pipelineId: 89
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rocBLAS: rocBLAS:
pipelineId: $(ROCBLAS_PIPELINE_ID) pipelineId: 302
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
ROCdbgapi: ROCdbgapi:
pipelineId: $(ROCDBGAPI_PIPELINE_ID) pipelineId: 135
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocDecode: rocDecode:
pipelineId: $(ROCDECODE_PIPELINE_ID) pipelineId: 79
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
rocFFT: rocFFT:
pipelineId: $(ROCFFT_PIPELINE_ID) pipelineId: 282
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
ROCgdb: ROCgdb:
pipelineId: $(ROCGDB_PIPELINE_ID) pipelineId: 134
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline-rocgdb-15
hasGpuTarget: false hasGpuTarget: false
rocJPEG: rocJPEG:
pipelineId: $(ROCJPEG_PIPELINE_ID) pipelineId: 262
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
rocm-cmake: rocm-cmake:
pipelineId: $(ROCM_CMAKE_PIPELINE_ID) pipelineId: 6
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
rocm-core: rocm-core:
pipelineId: $(ROCM_CORE_PIPELINE_ID) pipelineId: 349
stagingBranch: master developBranch: develop
mainlineBranch: amd-master
hasGpuTarget: false hasGpuTarget: false
rocm-examples: rocm-examples:
pipelineId: $(ROCM_EXAMPLES_PIPELINE_ID) pipelineId: 216
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rocminfo: rocminfo:
pipelineId: $(ROCMINFO_PIPELINE_ID) pipelineId: 356
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocMLIR: rocMLIR:
pipelineId: $(ROCMLIR_PIPELINE_ID) pipelineId: 229
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: false hasGpuTarget: false
ROCmValidationSuite: ROCmValidationSuite:
pipelineId: $(ROCMVALIDATIONSUITE_PIPELINE_ID) pipelineId: 106
stagingBranch: master developBranch: master
mainlineBranch: master
hasGpuTarget: true hasGpuTarget: true
rocm_bandwidth_test: rocm_bandwidth_test:
pipelineId: $(ROCM_BANDWIDTH_TEST_PIPELINE_ID) pipelineId: 88
stagingBranch: master developBranch: master
mainlineBranch: master
hasGpuTarget: false hasGpuTarget: false
rocm_smi_lib: rocm_smi_lib:
pipelineId: $(ROCM_SMI_LIB_PIPELINE_ID) pipelineId: 358
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocPRIM: rocPRIM:
pipelineId: $(ROCPRIM_PIPELINE_ID) pipelineId: 273
stagingBranch: develop developBranch: develop
mainlineBranch: develop
hasGpuTarget: true hasGpuTarget: true
rocprofiler: rocprofiler:
pipelineId: $(ROCPROFILER_PIPELINE_ID) pipelineId: 329
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-master
hasGpuTarget: true hasGpuTarget: true
rocprofiler-compute: rocprofiler-compute:
pipelineId: $(ROCPROFILER_COMPUTE_PIPELINE_ID) pipelineId: 344
stagingBranch: develop developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rocprofiler-register: rocprofiler-register:
pipelineId: $(ROCPROFILER_REGISTER_PIPELINE_ID) pipelineId: 327
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocprofiler-sdk: rocprofiler-sdk:
pipelineId: $(ROCPROFILER_SDK_PIPELINE_ID) pipelineId: 347
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rocprofiler-systems: rocprofiler-systems:
pipelineId: $(ROCPROFILER_SYSTEMS_PIPELINE_ID) pipelineId: 345
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rocPyDecode: rocPyDecode:
pipelineId: $(ROCPYDECODE_PIPELINE_ID) pipelineId: 239
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
ROCR-Runtime: ROCR-Runtime:
pipelineId: $(ROCR_RUNTIME_PIPELINE_ID) pipelineId: 354
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocRAND: rocRAND:
pipelineId: $(ROCRAND_PIPELINE_ID) pipelineId: 274
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rocr_debug_agent: rocr_debug_agent:
pipelineId: $(ROCR_DEBUG_AGENT_PIPELINE_ID) pipelineId: 136
stagingBranch: amd-staging developBranch: amd-staging
mainlineBranch: amd-mainline
hasGpuTarget: false hasGpuTarget: false
rocSOLVER: rocSOLVER:
pipelineId: $(ROCSOLVER_PIPELINE_ID) pipelineId: 81
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rocSPARSE: rocSPARSE:
pipelineId: $(ROCSPARSE_PIPELINE_ID) pipelineId: 314
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
ROCT-Thunk-Interface: # deprecated
pipelineId: $(ROCT_THUNK_INTERFACE_PIPELINE_ID)
stagingBranch: master
mainlineBranch: master
hasGpuTarget: false
rocThrust: rocThrust:
pipelineId: $(ROCTHRUST_PIPELINE_ID) pipelineId: 276
stagingBranch: develop developBranch: develop
mainlineBranch: develop
hasGpuTarget: true hasGpuTarget: true
roctracer: roctracer:
pipelineId: $(ROCTRACER_PIPELINE_ID) pipelineId: 331
stagingBranch: amd-staging developBranch: develop
mainlineBranch: amd-mainline
hasGpuTarget: true hasGpuTarget: true
rocWMMA: rocWMMA:
pipelineId: $(ROCWMMA_PIPELINE_ID) pipelineId: 370
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
rpp: rpp:
pipelineId: $(RPP_PIPELINE_ID) pipelineId: 78
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
TransferBench: TransferBench:
pipelineId: $(TRANSFERBENCH_PIPELINE_ID) pipelineId: 265
stagingBranch: develop developBranch: develop
mainlineBranch: mainline
hasGpuTarget: true hasGpuTarget: true
steps: steps:
@@ -366,86 +288,67 @@ steps:
parameters: parameters:
componentName: ${{ split(dependency, ':')[0] }} componentName: ${{ split(dependency, ':')[0] }}
pipelineId: ${{ parameters.componentVarList[split(dependency, ':')[0]].pipelineId }} pipelineId: ${{ parameters.componentVarList[split(dependency, ':')[0]].pipelineId }}
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].developBranch }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
${{ if parameters.componentVarList[split(dependency, ':')[0]].hasGpuTarget }}: extractAndDeleteFiles: false
fileFilter: "${{ split(dependency, ':')[1] }}*_${{ parameters.os }}_${{ parameters.gpuTarget }}"
# dependencySource = staging
${{ if eq(parameters.dependencySource, 'staging')}}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].stagingBranch }}
# dependencySource = mainline
${{ elseif eq(parameters.dependencySource, 'mainline')}}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].mainlineBranch }}
# checkoutRef = staging
${{ elseif eq(parameters.checkoutRef, parameters.componentVarList[variables['Build.DefinitionName']].stagingBranch) }}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].stagingBranch }}
# checkoutRef = mainline
${{ elseif eq(parameters.checkoutRef, parameters.componentVarList[variables['Build.DefinitionName']].mainlineBranch) }}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].mainlineBranch }}
# SourceBranchName = staging
${{ elseif eq(variables['Build.SourceBranchName'], parameters.componentVarlist[variables['Build.DefinitionName']].stagingBranch) }}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].stagingBranch }}
# SourceBranchName = mainline
${{ elseif eq(variables['Build.SourceBranchName'], parameters.componentVarlist[variables['Build.DefinitionName']].mainlineBranch) }}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].mainlineBranch }}
# default = staging
${{ else }}:
branchName: ${{ parameters.componentVarList[split(dependency, ':')[0]].stagingBranch }}
# no colon (:) found in this item in the list # no colon (:) found in this item in the list
- ${{ elseif containsValue(split(parameters.downstreamAggregateNames, '+'), dependency) }}: - ${{ elseif containsValue(split(parameters.downstreamAggregateNames, '+'), dependency) }}:
- template: local-artifact-download.yml - template: local-artifact-download.yml
parameters: parameters:
buildType: current
preTargetFilter: ${{ dependency }}
os: ${{ parameters.os }}
${{ if parameters.componentVarList[dependency].hasGpuTarget }}: ${{ if parameters.componentVarList[dependency].hasGpuTarget }}:
gpuTarget: ${{ parameters.gpuTarget }} gpuTarget: ${{ parameters.gpuTarget }}
preTargetFilter: ${{ dependency }}
buildType: current
- ${{ else }}: - ${{ else }}:
- template: artifact-download.yml - template: artifact-download.yml
parameters: parameters:
componentName: ${{ dependency }} componentName: ${{ dependency }}
pipelineId: ${{ parameters.componentVarList[dependency].pipelineId }} pipelineId: ${{ parameters.componentVarList[dependency].pipelineId }}
branchName: ${{ parameters.componentVarList[dependency].developBranch }}
aggregatePipeline: ${{ parameters.aggregatePipeline }} aggregatePipeline: ${{ parameters.aggregatePipeline }}
extractAndDeleteFiles: false
${{ if parameters.componentVarList[dependency].hasGpuTarget }}: ${{ if parameters.componentVarList[dependency].hasGpuTarget }}:
fileFilter: ${{ parameters.os }}_${{ parameters.gpuTarget }} fileFilter: ${{ parameters.os }}_${{ parameters.gpuTarget }}
${{ else }}: ${{ else }}:
fileFilter: ${{ parameters.os }} fileFilter: ${{ parameters.os }}
# dependencySource = staging - task: ExtractFiles@1
${{ if eq(parameters.dependencySource, 'staging')}}: displayName: Extract ROCm artifacts
branchName: ${{ parameters.componentVarList[dependency].stagingBranch }} inputs:
# dependencySource = mainline archiveFilePatterns: $(Pipeline.Workspace)/d/**/*.tar.gz
${{ elseif eq(parameters.dependencySource, 'mainline')}}: destinationFolder: $(Agent.BuildDirectory)/rocm
branchName: ${{ parameters.componentVarList[dependency].mainlineBranch }} cleanDestinationFolder: false
# checkoutRef = staging overwriteExistingFiles: true
${{ elseif eq(parameters.checkoutRef, parameters.componentVarList[variables['Build.DefinitionName']].stagingBranch) }}: - task: DeleteFiles@1
branchName: ${{ parameters.componentVarList[dependency].stagingBranch }} displayName: Clean up ROCm artifacts
# checkoutRef = mainline inputs:
${{ elseif eq(parameters.checkoutRef, parameters.componentVarList[variables['Build.DefinitionName']].mainlineBranch) }}: SourceFolder: $(Pipeline.Workspace)/d
branchName: ${{ parameters.componentVarList[dependency].mainlineBranch }} Contents: '**/*.tar.gz'
# SourceBranchName = staging RemoveDotFiles: true
${{ elseif eq(variables['Build.SourceBranchName'], parameters.componentVarlist[variables['Build.DefinitionName']].stagingBranch) }}: - ${{ if containsValue(parameters.dependencyList, 'llvm-project') }}:
branchName: ${{ parameters.componentVarList[dependency].stagingBranch }}
# SourceBranchName = mainline
${{ elseif eq(variables['Build.SourceBranchName'], parameters.componentVarlist[variables['Build.DefinitionName']].mainlineBranch) }}:
branchName: ${{ parameters.componentVarList[dependency].mainlineBranch }}
# default = staging
${{ else }}:
branchName: ${{ parameters.componentVarList[dependency].stagingBranch }}
# Set link to redirect llvm folder
- ${{ if eq(parameters.skipLlvmSymlink, false) }}:
- task: Bash@3 - task: Bash@3
displayName: Symlink from rocm/llvm to rocm/lib/llvm displayName: Symlink from rocm/llvm to rocm/lib/llvm
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
sudo mkdir -p $(Agent.BuildDirectory)/rocm/lib sudo mkdir -p $(Agent.BuildDirectory)/rocm/lib
sudo ln -s $(Agent.BuildDirectory)/rocm/llvm $(Agent.BuildDirectory)/rocm/lib/llvm sudo ln -sr $(Agent.BuildDirectory)/rocm/llvm $(Agent.BuildDirectory)/rocm/lib/llvm
echo "Created symlink from rocm/llvm to rocm/lib/llvm"
- task: Bash@3 - task: Bash@3
displayName: Symlink executables from rocm/llvm/bin to rocm/bin displayName: Symlink executables from rocm/llvm/bin to rocm/bin
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
for file in amdclang amdclang++ amdclang-cl amdclang-cpp amdflang amdlld aompcc mygpu mycpu offload-arch; do for file in amdclang amdclang++ amdclang-cl amdclang-cpp amdflang amdlld aompcc mygpu mycpu offload-arch; do
sudo ln -s $(Agent.BuildDirectory)/rocm/llvm/bin/$file $(Agent.BuildDirectory)/rocm/bin/$file sudo ln -sr $(Agent.BuildDirectory)/rocm/llvm/bin/$file $(Agent.BuildDirectory)/rocm/bin/$file
echo "Created symlink from rocm/llvm/bin/$file to rocm/bin/$file"
done done
- ${{ if containsValue(parameters.dependencyList, 'rocm-core') }}:
- task: Bash@3
displayName: Print rocm/.info/version
inputs:
targetType: inline
script: cat $(Agent.BuildDirectory)/rocm/.info/version
# dlopen calls within a ctest or pytest sequence runs into issues when shared library symlink convention is not followed # dlopen calls within a ctest or pytest sequence runs into issues when shared library symlink convention is not followed
# the convention is as follows: # the convention is as follows:
# unversioned .so is a symlink to major version .so # unversioned .so is a symlink to major version .so
@@ -482,17 +385,16 @@ steps:
inputs: inputs:
targetType: inline targetType: inline
script: ls -la1R $(Agent.BuildDirectory)/rocm script: ls -la1R $(Agent.BuildDirectory)/rocm
- ${{ if eq(parameters.skipLibraryLinking, false) }}: - task: Bash@3
- task: Bash@3 displayName: 'Link ROCm shared libraries'
displayName: 'Link ROCm shared libraries' inputs:
inputs: targetType: inline
targetType: inline # OS ignores if the ROCm lib folder shows up more than once
# OS ignores if the ROCm lib folder shows up more than once script: |
script: | echo $(Agent.BuildDirectory)/rocm/lib | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf
echo $(Agent.BuildDirectory)/rocm/lib | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf echo $(Agent.BuildDirectory)/rocm/llvm/lib | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf
echo $(Agent.BuildDirectory)/rocm/llvm/lib | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf echo $(Agent.BuildDirectory)/rocm/lib64 | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf
echo $(Agent.BuildDirectory)/rocm/lib64 | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf echo $(Agent.BuildDirectory)/rocm/llvm/lib64 | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf
echo $(Agent.BuildDirectory)/rocm/llvm/lib64 | sudo tee -a /etc/ld.so.conf.d/rocm-ci.conf sudo cat /etc/ld.so.conf.d/rocm-ci.conf
sudo cat /etc/ld.so.conf.d/rocm-ci.conf sudo ldconfig -v
sudo ldconfig -v ldconfig -p
ldconfig -p

View File

@@ -8,15 +8,20 @@ parameters:
type: object type: object
default: default:
boost: 250 boost: 250
catch2: 343
fmtlib: 341
grpc: 72 grpc: 72
gtest: 73 gtest: 73
half560: 68 half560: 68
lapack: 69 lapack: 69
libdivide: 342
spdlog: 340
steps: steps:
- ${{ each dependency in parameters.dependencyList }}: - ${{ each dependency in parameters.dependencyList }}:
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: Download ${{ dependency }} displayName: Download ${{ dependency }}
retryCountOnTaskFailure: 3
inputs: inputs:
project: ROCm-CI project: ROCm-CI
buildType: specific buildType: specific
@@ -28,7 +33,7 @@ steps:
inputs: inputs:
archiveFilePatterns: '$(Pipeline.Workspace)/d/**/*.tar.gz' archiveFilePatterns: '$(Pipeline.Workspace)/d/**/*.tar.gz'
destinationFolder: $(Agent.BuildDirectory)/vendor destinationFolder: $(Agent.BuildDirectory)/vendor
cleanDestinationFolder: true cleanDestinationFolder: false
overwriteExistingFiles: true overwriteExistingFiles: true
- task: DeleteFiles@1 - task: DeleteFiles@1
displayName: Clean up ${{ dependency }} displayName: Clean up ${{ dependency }}

View File

@@ -33,6 +33,7 @@ parameters:
steps: steps:
- task: DownloadPipelineArtifact@2 - task: DownloadPipelineArtifact@2
displayName: Download ${{ parameters.preTargetFilter}}*${{ parameters.os }}_${{ parameters.gpuTarget}}*${{ parameters.postTargetFilter}} displayName: Download ${{ parameters.preTargetFilter}}*${{ parameters.os }}_${{ parameters.gpuTarget}}*${{ parameters.postTargetFilter}}
retryCountOnTaskFailure: 3
inputs: inputs:
${{ if eq(parameters.buildType, 'specific') }}: ${{ if eq(parameters.buildType, 'specific') }}:
buildType: specific buildType: specific

View File

@@ -23,13 +23,14 @@ steps:
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
sudo apt-get install -y jq ${{ iif(or(eq(parameters.os, 'ubuntu2204'), eq(parameters.os, 'ubuntu2404')), 'sudo apt-get install -y jq', '') }}
# RESOURCES_REPOSITORIES is a runtime variable (not an env var!) that contains quotations and newlines # RESOURCES_REPOSITORIES is a runtime variable (not an env var!) that contains quotations and newlines
# So we need to save it to a file to properly preserve its formatting and contents # So we need to save it to a file to properly preserve its formatting and contents
cat <<EOF > resources.repositories cat <<EOF > resources.repositories
$(RESOURCES_REPOSITORIES) $(RESOURCES_REPOSITORIES)
EOF EOF
echo "Value of resources.repositories:"
cat resources.repositories cat resources.repositories
IS_TAG_BUILD=$(jq 'has("release_repo")' resources.repositories) IS_TAG_BUILD=$(jq 'has("release_repo")' resources.repositories)
@@ -66,8 +67,6 @@ steps:
) )
' resources.repositories) ' resources.repositories)
manifest_json=$(Build.ArtifactStagingDirectory)/manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.json
dependencies=() dependencies=()
for manifest_file in $(Pipeline.Workspace)/d/**/manifest_*.json; do for manifest_file in $(Pipeline.Workspace)/d/**/manifest_*.json; do
echo "Processing $manifest_file" echo "Processing $manifest_file"
@@ -78,6 +77,10 @@ steps:
done done
dependencies_json=$(printf '%s\n' "${dependencies[@]}" | jq -s '.') dependencies_json=$(printf '%s\n' "${dependencies[@]}" | jq -s '.')
manifest_filename="manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}"
echo "##vso[task.setvariable variable=manifest_filename]$manifest_filename"
manifest_json=$(Build.ArtifactStagingDirectory)/$manifest_filename.json
jq -n \ jq -n \
--argjson current "$current" \ --argjson current "$current" \
--argjson dependencies "$dependencies_json" \ --argjson dependencies "$dependencies_json" \
@@ -111,8 +114,14 @@ steps:
') ')
dependencies_rows=$(echo $dependencies_rows) dependencies_rows=$(echo $dependencies_rows)
echo "##vso[task.setvariable variable=dependencies_rows;]$dependencies_rows" echo "##vso[task.setvariable variable=dependencies_rows;]$dependencies_rows"
- task: Bash@3
cat $manifest_json displayName: Print manifest.json
condition: always()
continueOnError: true
inputs:
targetType: inline
script: |
cat $(Build.ArtifactStagingDirectory)/$(manifest_filename).json
- task: Bash@3 - task: Bash@3
displayName: Create manifest.html displayName: Create manifest.html
condition: always() condition: always()
@@ -120,10 +129,10 @@ steps:
inputs: inputs:
targetType: inline targetType: inline
script: | script: |
manifest_html=$(Build.ArtifactStagingDirectory)/manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.html manifest_html="$(Build.ArtifactStagingDirectory)/$(manifest_filename).html"
cat <<EOF > $manifest_html cat <<EOF > $manifest_html
<html> <html>
<h1>Manifest</h1> <h1>$(manifest_filename)</h1>
<h2>Current</h2> <h2>Current</h2>
<table border="1"> <table border="1">
<tr> <tr>
@@ -163,7 +172,7 @@ steps:
continueOnError: true continueOnError: true
inputs: inputs:
tabName: Manifest tabName: Manifest
reportDir: $(Build.ArtifactStagingDirectory)/manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.html reportDir: $(Build.ArtifactStagingDirectory)/$(manifest_filename).html
- task: Bash@3 - task: Bash@3
displayName: Save manifest artifact file name displayName: Save manifest artifact file name
condition: always() condition: always()
@@ -172,5 +181,5 @@ steps:
workingDirectory: $(Pipeline.Workspace) workingDirectory: $(Pipeline.Workspace)
targetType: inline targetType: inline
script: | script: |
echo "manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.html" >> pipelineArtifacts.txt echo "$(manifest_filename).html" >> pipelineArtifacts.txt
echo "manifest_${{ parameters.componentName }}_$(Build.BuildId)_$(Build.BuildNumber)_${{ parameters.os }}_${{ parameters.gpuTarget }}_${{ parameters.artifactName }}.json" >> pipelineArtifacts.txt echo "$(manifest_filename).json" >> pipelineArtifacts.txt

View File

@@ -7,17 +7,16 @@ steps:
- task: Bash@3 - task: Bash@3
name: downloadCKBuild name: downloadCKBuild
displayName: Download specific CK build displayName: Download specific CK build
continueOnError: true retryCountOnTaskFailure: 3
env: env:
CXX: $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++ CXX: $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang++
CC: $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang CC: $(Agent.BuildDirectory)/rocm/llvm/bin/amdclang
inputs: inputs:
targetType: inline targetType: inline
workingDirectory: $(Build.SourcesDirectory) workingDirectory: $(Agent.BuildDirectory)/s
script: | script: |
AZ_API="https://dev.azure.com/ROCm-CI/ROCm-CI/_apis" AZ_API="https://dev.azure.com/ROCm-CI/ROCm-CI/_apis"
GH_API="https://api.github.com/repos/ROCm" GH_API="https://api.github.com/repos/ROCm"
ARTIFACT_NAME="composablekernelbuild${{ parameters.gpuTarget }}"
EXIT_CODE=0 EXIT_CODE=0
# Try to find an Azure build for the specific CK commit called out in MIOpen's requirements.txt # Try to find an Azure build for the specific CK commit called out in MIOpen's requirements.txt
@@ -39,8 +38,15 @@ steps:
echo "Found specific CK build ID: $CK_BUILD_ID" echo "Found specific CK build ID: $CK_BUILD_ID"
fi fi
AZURE_URL="$AZ_API/build/builds/$CK_BUILD_ID/artifacts?artifactName=$ARTIFACT_NAME&api-version=7.1" AZURE_URL="$AZ_API/build/builds/$CK_BUILD_ID/artifacts?api-version=7.1"
ARTIFACT_URL=$(curl -s $AZURE_URL | jq '.resource.downloadUrl' | tr -d '"') ARTIFACT_URL=$(curl -s $AZURE_URL | \
jq --arg gfx "${{ parameters.gpuTarget }}" '
.value
| map(select(.name | test($gfx)))
| max_by(.name | capture("_(?<dropNumber>\\d+)").dropNumber | tonumber)
| .resource.downloadUrl
' | \
tr -d '"')
# If using the specific CK commit and it doesn't have any valid artifacts, use latest successful CK build instead # If using the specific CK commit and it doesn't have any valid artifacts, use latest successful CK build instead
if { [[ -z "$ARTIFACT_URL" ]] || [[ "$ARTIFACT_URL" == "null" ]]; } && [[ $EXIT_CODE -eq 0 ]]; then if { [[ -z "$ARTIFACT_URL" ]] || [[ "$ARTIFACT_URL" == "null" ]]; } && [[ $EXIT_CODE -eq 0 ]]; then
@@ -48,17 +54,45 @@ steps:
LATEST_BUILD_URL="$AZ_API/build/builds?definitions=$(COMPOSABLE_KERNEL_PIPELINE_ID)&statusFilter=completed&resultFilter=succeeded&\$top=1&api-version=7.1" LATEST_BUILD_URL="$AZ_API/build/builds?definitions=$(COMPOSABLE_KERNEL_PIPELINE_ID)&statusFilter=completed&resultFilter=succeeded&\$top=1&api-version=7.1"
CK_BUILD_ID=$(curl -s $LATEST_BUILD_URL | jq '.value[0].id') CK_BUILD_ID=$(curl -s $LATEST_BUILD_URL | jq '.value[0].id')
echo "Found latest CK build ID: $CK_BUILD_ID" echo "Found latest CK build ID: $CK_BUILD_ID"
AZURE_URL="$AZ_API/build/builds/$CK_BUILD_ID/artifacts?artifactName=$ARTIFACT_NAME&api-version=7.1" AZURE_URL="$AZ_API/build/builds/$CK_BUILD_ID/artifacts?api-version=7.1"
ARTIFACT_URL=$(curl -s $AZURE_URL | jq '.resource.downloadUrl' | tr -d '"') ARTIFACT_URL=$(curl -s $AZURE_URL | \
jq --arg os "ubuntu2204" --arg gfx "${{ parameters.gpuTarget }}" '
.value
| map(select(.name | test($os) and test($gfx)))
| max_by(.name | capture("_(?<dropNumber>\\d+)").dropNumber | tonumber)
| .resource.downloadUrl
' | \
tr -d '"')
EXIT_CODE=2 EXIT_CODE=2
fi fi
echo "Downloading CK artifact from $ARTIFACT_URL" echo "Downloading CK artifact from $ARTIFACT_URL"
wget --tries=5 --waitretry=10 --retry-connrefused -nv $ARTIFACT_URL -O $(System.ArtifactsDirectory)/ck.zip
unzip $(System.ArtifactsDirectory)/ck.zip -d $(System.ArtifactsDirectory) RETRIES=0
mkdir -p $(Agent.BuildDirectory)/rocm MAX_RETRIES=5
tar -zxvf $(System.ArtifactsDirectory)/$ARTIFACT_NAME/*.tar.gz -C $(Agent.BuildDirectory)/rocm SUCCESS=false
rm -r $(System.ArtifactsDirectory)/ck.zip $(System.ArtifactsDirectory)/$ARTIFACT_NAME while [ $RETRIES -lt $MAX_RETRIES ]; do
wget -nv $ARTIFACT_URL -O $(System.ArtifactsDirectory)/ck.zip && \
unzip $(System.ArtifactsDirectory)/ck.zip -d $(System.ArtifactsDirectory) && \
mkdir -p $(Agent.BuildDirectory)/rocm && \
tar -zxvf $(System.ArtifactsDirectory)/composable_kernel*/*.tar.gz -C $(Agent.BuildDirectory)/rocm && \
rm -r $(System.ArtifactsDirectory)/ck.zip $(System.ArtifactsDirectory)/composable_kernel*
if [ $? -eq 0 ]; then
SUCCESS=true
echo "Successfully downloaded CK."
break
else
RETRIES=$((RETRIES + 1))
echo "Failed to download CK on attempt $RETRIES/$MAX_RETRIES, retrying..."
sleep 1
fi
done
if [ "$SUCCESS" = false ]; then
echo "ERROR: failed to download CK after $MAX_RETRIES attempts."
exit 1
fi
if [[ $EXIT_CODE -ne 0 ]]; then if [[ $EXIT_CODE -ne 0 ]]; then
BUILD_COMMIT=$(curl -s $AZ_API/build/builds/$CK_BUILD_ID | jq '.sourceVersion' | tr -d '"') BUILD_COMMIT=$(curl -s $AZ_API/build/builds/$CK_BUILD_ID | jq '.sourceVersion' | tr -d '"')
@@ -69,4 +103,3 @@ steps:
fi fi
echo "Instead used latest CK build $CK_BUILD_ID for commit $BUILD_COMMIT" echo "Instead used latest CK build $CK_BUILD_ID for commit $BUILD_COMMIT"
fi fi
exit $EXIT_CODE

View File

@@ -1,25 +1,28 @@
parameters: parameters:
- name: os
type: string
default: 'ubuntu2204'
- name: componentName - name: componentName
type: string type: string
default: '' default: ''
- name: os
type: string
default: ubuntu2204
- name: testDir - name: testDir
type: string type: string
default: 'build' default: build
- name: testExecutable - name: testExecutable
type: string type: string
default: 'ctest' default: ctest
- name: testParameters - name: testParameters
type: string type: string
default: '--output-on-failure --force-new-ctest-process --output-junit test_output.xml' default: --extra-verbose --output-on-failure --force-new-ctest-process --output-junit test_output.xml
- name: extraTestParameters
type: string
default: ''
- name: testOutputFile - name: testOutputFile
type: string type: string
default: test_output.xml default: test_output.xml
- name: testOutputFormat - name: testOutputFormat
type: string type: string
default: 'JUnit' default: JUnit
values: values:
- JUnit - JUnit
- NUnit - NUnit
@@ -29,31 +32,28 @@ parameters:
- name: testPublishResults - name: testPublishResults
type: boolean type: boolean
default: true default: true
- name: allowPartiallySucceededBuilds - name: allowComponentTestFailure
type: object type: object
default: default:
- amdsmi - amdsmi
- aomp
- HIPIFY - HIPIFY
- MIVisionX
- rocm_smi_lib - rocm_smi_lib
- rocprofiler-sdk
- roctracer - roctracer
# the following do not use this template but allow test failures, included for completeness
- aomp
- ROCgdb
steps: steps:
# run test, continue on failure to publish results # run test, continue on failure to publish results
# and to publish build artifacts # and to publish build artifacts
- task: Bash@3 - task: Bash@3
displayName: '${{ parameters.componentName }} Test' displayName: '${{ parameters.componentName }} Test'
continueOnError: ${{ containsValue(parameters.allowPartiallySucceededBuilds, parameters.componentName) }} continueOnError: ${{ containsValue(parameters.allowComponentTestFailure, parameters.componentName) }}
inputs: inputs:
targetType: inline targetType: inline
${{ if ne(parameters.os, 'almalinux8') }}: script: |
script: ${{ parameters.testExecutable }} ${{ parameters.testParameters }} ${{ iif(eq(parameters.os, 'almalinux8'), 'source /opt/rh/gcc-toolset-14/enable', '') }}
${{ else }}: ${{ parameters.testExecutable }} ${{ parameters.testParameters }} ${{ parameters.extraTestParameters }}
script: |
source /opt/rh/gcc-toolset-14/enable
${{ parameters.testExecutable }} ${{ parameters.testParameters }}
workingDirectory: ${{ parameters.testDir }} workingDirectory: ${{ parameters.testDir }}
- ${{ if parameters.testPublishResults }}: - ${{ if parameters.testPublishResults }}:
- task: PublishTestResults@2 - task: PublishTestResults@2

View File

@@ -3,6 +3,8 @@
variables: variables:
- name: RESOURCES_REPOSITORIES - name: RESOURCES_REPOSITORIES
value: $[ convertToJson(resources.repositories) ] value: $[ convertToJson(resources.repositories) ]
- name: CCACHE_DIR
value: $(Pipeline.Workspace)/ccache
- name: CI_ROOT_PATH - name: CI_ROOT_PATH
value: /.azuredevops value: /.azuredevops
- name: CI_COMPONENT_PATH - name: CI_COMPONENT_PATH
@@ -21,329 +23,25 @@ variables:
value: rocm-ci_high_build_pool value: rocm-ci_high_build_pool
- name: ULTRA_BUILD_POOL - name: ULTRA_BUILD_POOL
value: rocm-ci_ultra_build_pool value: rocm-ci_ultra_build_pool
- name: ON_PREM_BUILD_POOL
value: rocm-ci_build_pool
- name: LARGE_DISK_BUILD_POOL
value: rocm-ci_larger_base_disk_pool
- name: GFX942_TEST_POOL - name: GFX942_TEST_POOL
value: gfx942_test_pool value: gfx942_test_pool
- name: GFX90A_TEST_POOL - name: GFX90A_TEST_POOL
value: gfx90a_test_pool value: gfx90a_test_pool
- name: LATEST_RELEASE_VERSION - name: LATEST_RELEASE_VERSION
value: 6.4.0 value: 6.4.3
- name: REPO_RADEON_VERSION - name: REPO_RADEON_VERSION
value: 6.4 value: 6.4.3
- name: NEXT_RELEASE_VERSION - name: NEXT_RELEASE_VERSION
value: 6.5.0 value: 7.0.0
- name: LATEST_RELEASE_TAG - name: LATEST_RELEASE_TAG
value: rocm-6.4.0 value: rocm-6.4.3
- name: DOCKER_SKIP_GFX - name: DOCKER_SKIP_GFX
value: gfx90a value: gfx90a
- name: AMDMIGRAPHX_GFX942_TEST_PIPELINE_ID
value: 197
- name: AMDMIGRAPHX_PIPELINE_ID
value: 113
- name: AMDMIGRAPHX_TAGGED_PIPELINE_ID
value: 60
- name: AMDSMI_PIPELINE_ID
value: 99
- name: AMDSMI_TAGGED_PIPELINE_ID
value: 33
- name: AOMP_EXTRAS_PIPELINE_ID
value: 111
- name: AOMP_EXTRAS_TAGGED_PIPELINE_ID
value: 75
- name: AOMP_PIPELINE_ID
value: 115
- name: AOMP_TAGGED_PIPELINE_ID
value: 76
- name: CCACHE_DIR
value: $(Pipeline.Workspace)/ccache
- name: CLR_PIPELINE_ID
value: 145
- name: CLR_TAGGED_PIPELINE_ID
value: 71
- name: COMPOSABLE_KERNEL_GFX942_TEST_PIPELINE_ID
value: 179
- name: COMPOSABLE_KERNEL_PIPELINE_ID - name: COMPOSABLE_KERNEL_PIPELINE_ID
value: 86 value: 86
- name: COMPOSABLE_KERNEL_TAGGED_PIPELINE_ID
value: 38
- name: FLANG_LEGACY_PIPELINE_ID
value: 77
- name: FLANG_LEGACY_TAGGED_PIPELINE_ID
value: 77
- name: HALF_PIPELINE_ID
value: 101
- name: HALF_TAGGED_PIPELINE_ID
value: 11
- name: HALF560_PIPELINE_ID - name: HALF560_PIPELINE_ID
value: 68 value: 68
- name: HALF560_BUILD_ID - name: HALF560_BUILD_ID
value: 621 value: 621
- name: HIP_PIPELINE_ID - name: HIP_PIPELINE_ID
value: 93 value: 93
- name: HIP_TAGGED_PIPELINE_ID
value: 31
- name: HIP_TESTS_PIPELINE_ID
value: 233
- name: HIP_TESTS_TAGGED_PIPELINE_ID
value: 220
- name: HIPBLAS_COMMON_PIPELINE_ID
value: 223
- name: HIPBLAS_COMMON_TAGGED_PIPELINE_ID
value: 224
- name: HIPBLAS_GFX942_TEST_PIPELINE_ID
value: 202
- name: HIPBLAS_PIPELINE_ID
value: 87
- name: HIPBLAS_TAGGED_PIPELINE_ID
value: 44
- name: HIPBLASLT_GFX942_TEST_PIPELINE_ID
value: 187
- name: HIPBLASLT_PIPELINE_ID
value: 112
- name: HIPBLASLT_TAGGED_PIPELINE_ID
value: 45
- name: HIPCUB_GFX942_TEST_PIPELINE_ID
value: 186
- name: HIPCUB_PIPELINE_ID
value: 277
- name: HIPCUB_TAGGED_PIPELINE_ID
value: 46
- name: HIPFFT_GFX942_TEST_PIPELINE_ID
value: 198
- name: HIPFFT_PIPELINE_ID
value: 121
- name: HIPFFT_TAGGED_PIPELINE_ID
value: 12
- name: HIPFORT_PIPELINE_ID
value: 102
- name: HIPFORT_TAGGED_PIPELINE_ID
value: 34
- name: HIPIFY_PIPELINE_ID
value: 92
- name: HIPIFY_TAGGED_PIPELINE_ID
value: 13
- name: HIPRAND_GFX942_TEST_PIPELINE_ID
value: 188
- name: HIPRAND_PIPELINE_ID
value: 90
- name: HIPRAND_TAGGED_PIPELINE_ID
value: 42
- name: HIPSOLVER_GFX942_TEST_PIPELINE_ID
value: 201
- name: HIPSOLVER_PIPELINE_ID
value: 84
- name: HIPSOLVER_TAGGED_PIPELINE_ID
value: 52
- name: HIPSPARSE_GFX942_TEST_PIPELINE_ID
value: 195
- name: HIPSPARSE_PIPELINE_ID
value: 83
- name: HIPSPARSE_TAGGED_PIPELINE_ID
value: 14
- name: HIPSPARSELT_GFX942_TEST_PIPELINE_ID
value: 200
- name: HIPSPARSELT_PIPELINE_ID
value: 104
- name: HIPSPARSELT_TAGGED_PIPELINE_ID
value: 53
- name: HIPTENSOR_GFX942_TEST_PIPELINE_ID
value: 192
- name: HIPTENSOR_PIPELINE_ID
value: 105
- name: HIPTENSOR_TAGGED_PIPELINE_ID
value: 56
- name: LLVM_PROJECT_PIPELINE_ID
value: 2
- name: LLVM_PROJECT_TAGGED_PIPELINE_ID
value: 8
- name: MIOPEN_PIPELINE_ID
value: 108
- name: MIOPEN_TAGGED_PIPELINE_ID
value: 58
- name: MIVISIONX_PIPELINE_ID
value: 80
- name: MIVISIONX_TAGGED_PIPELINE_ID
value: 18
- name: OMNIPERF_PIPELINE_ID
value: 241
- name: OMNIPERF_TAGGED_PIPELINE_ID
value: 242
- name: OMNITRACE_PIPELINE_ID
value: 253
- name: OMNITRACE_TAGGED_PIPELINE_ID
value: 252
- name: RCCL_GFX942_TEST_PIPELINE_ID
value: 184
- name: RCCL_PIPELINE_ID
value: 107
- name: RCCL_TAGGED_PIPELINE_ID
value: 15
- name: RDC_PIPELINE_ID
value: 100
- name: RDC_TAGGED_PIPELINE_ID
value: 59
- name: ROCAL_PIPELINE_ID
value: 151
- name: ROCALUTION_GFX942_TEST_PIPELINE_ID
value: 196
- name: ROCALUTION_PIPELINE_ID
value: 89
- name: ROCALUTION_TAGGED_PIPELINE_ID
value: 16
- name: ROCBLAS_GFX942_TEST_PIPELINE_ID
value: 185
- name: ROCBLAS_PIPELINE_ID
value: 85
- name: ROCBLAS_TAGGED_PIPELINE_ID
value: 32
- name: ROCDBGAPI_PIPELINE_ID
value: 135
- name: ROCDBGAPI_TAGGED_PIPELINE_ID
value: 17
- name: ROCDECODE_PIPELINE_ID
value: 79
- name: ROCDECODE_TAGGED_PIPELINE_ID
value: 21
- name: ROCFFT_GFX942_TEST_PIPELINE_ID
value: 189
- name: ROCFFT_PIPELINE_ID
value: 120
- name: ROCFFT_TAGGED_PIPELINE_ID
value: 19
- name: ROCGDB_PIPELINE_ID
value: 134
- name: ROCGDB_TAGGED_PIPELINE_ID
value: 50
- name: ROCJPEG_PIPELINE_ID
value: 262
- name: ROCJPEG_TAGGED_PIPELINE_ID
value: 263
- name: ROCM_BANDWIDTH_TEST_PIPELINE_ID
value: 88
- name: ROCM_BANDWIDTH_TEST_TAGGED_PIPELINE_ID
value: 23
- name: ROCM_CMAKE_PIPELINE_ID
value: 6
- name: ROCM_CMAKE_TAGGED_PIPELINE_ID
value: 7
- name: ROCM_CORE_PIPELINE_ID
value: 103
- name: ROCM_CORE_TAGGED_PIPELINE_ID
value: 22
- name: ROCM_EXAMPLES_GFX942_TEST_PIPELINE_ID
value: 204
- name: ROCM_EXAMPLES_PIPELINE_ID
value: 216
- name: ROCM_EXAMPLES_TAGGED_PIPELINE_ID
value: 245
- name: ROCM_SMI_LIB_PIPELINE_ID
value: 96
- name: ROCM_SMI_LIB_TAGGED_PIPELINE_ID
value: 47
- name: ROCMINFO_PIPELINE_ID
value: 91
- name: ROCMINFO_TAGGED_PIPELINE_ID
value: 27
- name: ROCMLIR_PIPELINE_ID
value: 229
- name: ROCMLIR_TAGGED_PIPELINE_ID
value: 62
- name: ROCMVALIDATIONSUITE_PIPELINE_ID
value: 106
- name: ROCMVALIDATIONSUITE_TAGGED_PIPELINE_ID
value: 43
- name: ROCPRIM_GFX942_TEST_PIPELINE_ID
value: 180
- name: ROCPRIM_PIPELINE_ID
value: 273
- name: ROCPRIM_TAGGED_PIPELINE_ID
value: 20
- name: ROCPROFILER_GFX942_TEST_PIPELINE_ID
value: 190
- name: ROCPROFILER_COMPUTE_PIPELINE_ID
value: 257
- name: ROCPROFILER_COMPUTE_TAGGED_PIPELINE_ID
value: 258
- name: ROCPROFILER_REGISTER_PIPELINE_ID
value: 1
- name: ROCPROFILER_REGISTER_TAGGED_PIPELINE_ID
value: 25
- name: ROCPROFILER_SDK_PIPELINE_ID
value: 246
- name: ROCPROFILER_SDK_TAGGED_PIPELINE_ID
value: 234
- name: ROCPROFILER_SYSTEMS_PIPELINE_ID
value: 255
- name: ROCPROFILER_SYSTEMS_TAGGED_PIPELINE_ID
value: 254
- name: ROCPROFILER_PIPELINE_ID
value: 143
- name: ROCPROFILER_TAGGED_PIPELINE_ID
value: 28
- name: ROCPYDECODE_PIPELINE_ID
value: 239
- name: ROCPYDECODE_TAGGED_PIPELINE_ID
value: 232
- name: ROCR_DEBUG_AGENT_PIPELINE_ID
value: 136
- name: ROCR_DEBUG_AGENT_TAGGED_PIPELINE_ID
value: 29
- name: ROCR_RUNTIME_PIPELINE_ID
value: 10
- name: ROCR_RUNTIME_TAGGED_PIPELINE_ID
value: 24
- name: ROCRAND_GFX942_TEST_PIPELINE_ID
value: 183
- name: ROCRAND_PIPELINE_ID
value: 95
- name: ROCRAND_TAGGED_PIPELINE_ID
value: 41
- name: ROCSOLVER_GFX942_TEST_PIPELINE_ID
value: 199
- name: ROCSOLVER_PIPELINE_ID
value: 81
- name: ROCSOLVER_TAGGED_PIPELINE_ID
value: 55
- name: ROCSPARSE_GFX942_TEST_PIPELINE_ID
value: 191
- name: ROCSPARSE_PIPELINE_ID
value: 98
- name: ROCSPARSE_TAGGED_PIPELINE_ID
value: 67
- name: ROCT_THUNK_INTERFACE_PIPELINE_ID
value: 3
- name: ROCT_THUNK_INTERFACE_TAGGED_PIPELINE_ID
value: 9
- name: ROCTHRUST_GFX942_TEST_PIPELINE_ID
value: 194
- name: ROCTHRUST_PIPELINE_ID
value: 276
- name: ROCTHRUST_TAGGED_PIPELINE_ID
value: 26
- name: ROCTRACER_GFX942_TEST_PIPELINE_ID
value: 181
- name: ROCTRACER_PIPELINE_ID
value: 141
- name: ROCTRACER_TAGGED_PIPELINE_ID
value: 30
- name: ROCWMMA_GFX942_TEST_PIPELINE_ID
value: 193
- name: ROCWMMA_PIPELINE_ID
value: 109
- name: ROCWMMA_TAGGED_PIPELINE_ID
value: 57
- name: RPP_GFX942_TEST_PIPELINE_ID
value: 182
- name: RPP_PIPELINE_ID
value: 78
- name: RPP_TAGGED_PIPELINE_ID
value: 39
- name: TRANSFERBENCH_PIPELINE_ID
value: 265
- name: TRANSFERBENCH_TAGGED_PIPELINE_ID
value: 266
- name: BOOST_DEPENDENCY_PIPELINE_ID
value: 250

1
.gitignore vendored
View File

@@ -1,6 +1,7 @@
.venv .venv
.vscode .vscode
build build
__pycache__
# documentation artifacts # documentation artifacts
_build/ _build/

View File

@@ -5,7 +5,9 @@ ACEs
ACS ACS
AccVGPR AccVGPR
AccVGPRs AccVGPRs
AITER
ALU ALU
AllReduce
AMD AMD
AMDGPU AMDGPU
AMDGPUs AMDGPUs
@@ -13,6 +15,7 @@ AMDMIGraphX
AMI AMI
AOCC AOCC
AOMP AOMP
AOT
AOTriton AOTriton
APBDIS APBDIS
APIC APIC
@@ -24,6 +27,7 @@ ASICs
ASan ASan
ASAN ASAN
ASm ASm
Async
ATI ATI
atomicRMW atomicRMW
AddressSanitizer AddressSanitizer
@@ -31,7 +35,9 @@ AlexNet
Andrej Andrej
Arb Arb
Autocast Autocast
autograd
BARs BARs
BatchNorm
BLAS BLAS
BMC BMC
BabelStream BabelStream
@@ -39,9 +45,11 @@ Blit
Blockwise Blockwise
Bluefield Bluefield
Bootloader Bootloader
Broadcom
CAS CAS
CCD CCD
CDNA CDNA
CGUI
CHTML CHTML
CIFAR CIFAR
CLI CLI
@@ -57,6 +65,7 @@ CPU
CPUs CPUs
Cron Cron
CSC CSC
CSDATA
CSE CSE
CSV CSV
CSn CSn
@@ -66,9 +75,11 @@ CU
CUDA CUDA
CUs CUs
CXX CXX
CX
Cavium Cavium
CentOS CentOS
ChatGPT ChatGPT
Cholesky
CoRR CoRR
Codespaces Codespaces
Commitizen Commitizen
@@ -76,19 +87,26 @@ CommonMark
Concretized Concretized
Conda Conda
ConnectX ConnectX
CountOnes
CuPy CuPy
customizable
da da
Dashboarding Dashboarding
Dataloading
dataflows
DBRX DBRX
DDR DDR
DF DF
DGEMM DGEMM
DGL
DGLGraph
dGPU dGPU
dGPUs dGPUs
DIMM DIMM
DKMS DKMS
DL DL
DMA DMA
DOMContentLoaded
DNN DNN
DNNL DNNL
DPM DPM
@@ -100,20 +118,31 @@ DataFrame
DataLoader DataLoader
DataParallel DataParallel
Debian Debian
decompositions
DeepSeek DeepSeek
DeepSpeed DeepSpeed
Dependabot Dependabot
Deprecations Deprecations
DevCap DevCap
DirectX DirectX
Disaggregated
disaggregated
Dockerfile Dockerfile
Dockerized
Doxygen Doxygen
dropless
ELMo ELMo
ENDPGM ENDPGM
EPYC EPYC
ESXi ESXi
EP
EoS EoS
etcd
equalto
fas
FBGEMM FBGEMM
FiLM
FIFOs
FFT FFT
FFTs FFTs
FFmpeg FFmpeg
@@ -125,14 +154,20 @@ FX
Filesystem Filesystem
FindDb FindDb
Flang Flang
FlashAttention
FlashInfers
FlashInfer
FluxBenchmark FluxBenchmark
Fortran Fortran
Fuyu Fuyu
GALB GALB
GAT
GATNE
GCC GCC
GCD GCD
GCDs GCDs
GCN GCN
GCNN
GDB GDB
GDDR GDDR
GDR GDR
@@ -142,6 +177,7 @@ GEMMs
GFLOPS GFLOPS
GFortran GFortran
GFXIP GFXIP
GGUF
Gemma Gemma
GiB GiB
GIM GIM
@@ -150,13 +186,19 @@ Glibc
GLXT GLXT
Gloo Gloo
GMI GMI
GNN
GNNs
GPG GPG
GPR GPR
GPT GPT
GPU GPU
GPU's GPU's
GPUDirect
GPUs GPUs
GraphBolt
GraphSage
GRBM GRBM
GRE
GenAI GenAI
GenZ GenZ
GitHub GitHub
@@ -165,9 +207,11 @@ HBM
HCA HCA
HGX HGX
HIPCC HIPCC
hipDataType
HIPExtension HIPExtension
HIPIFY HIPIFY
HIPification HIPification
hipification
HIPify HIPify
HPC HPC
HPCG HPCG
@@ -179,17 +223,26 @@ HWE
HWS HWS
Haswell Haswell
Higgs Higgs
href
Hyperparameters Hyperparameters
HybridEngine
Huggingface Huggingface
Hunyuan
HunyuanVideo
IB
ICD ICD
ICT
ICV ICV
IDE IDE
IDEs IDEs
IFWI IFWI
IMDb IMDb
IncDec IncDec
instrSize
interpolators
IOMMU IOMMU
IOP IOP
IOPS
IOPM IOPM
IOV IOV
IRQ IRQ
@@ -206,7 +259,9 @@ Intersphinx
Intra Intra
Ioffe Ioffe
JAX's JAX's
JAXLIB
Jinja Jinja
js
JSON JSON
Jupyter Jupyter
KFD KFD
@@ -216,6 +271,7 @@ KV
KVM KVM
Karpathy's Karpathy's
KiB KiB
Kineto
Keras Keras
Khronos Khronos
LAPACK LAPACK
@@ -225,11 +281,16 @@ LLM
LLMs LLMs
LLVM LLVM
LM LM
logsumexp
LRU
LSAN LSAN
LSan LSan
LTS LTS
LSTMs
LteAll
LanguageCrossEntropy LanguageCrossEntropy
LoRA LoRA
MECO
MEM MEM
MERCHANTABILITY MERCHANTABILITY
MFMA MFMA
@@ -248,6 +309,7 @@ MNIST
MPI MPI
MPT MPT
MSVC MSVC
mul
MVAPICH MVAPICH
MVFFR MVFFR
Makefile Makefile
@@ -255,6 +317,8 @@ Makefiles
Matplotlib Matplotlib
Matrox Matrox
MaxText MaxText
MBT
Megablocks
Megatrends Megatrends
Megatron Megatron
Mellanox Mellanox
@@ -263,11 +327,18 @@ Meta's
Miniconda Miniconda
MirroredStrategy MirroredStrategy
Mixtral Mixtral
MLA
MosaicML MosaicML
MoEs
Mooncake
Mpops
Multicore Multicore
Multithreaded Multithreaded
mx
MXFP
MyEnvironment MyEnvironment
MyST MyST
NANOO
NBIO NBIO
NBIOs NBIOs
NCCL NCCL
@@ -277,6 +348,7 @@ NIC
NICs NICs
NLI NLI
NLP NLP
NN
NPKit NPKit
NPS NPS
NSP NSP
@@ -299,6 +371,7 @@ OFED
OMM OMM
OMP OMP
OMPI OMPI
OOM
OMPT OMPT
OMPX OMPX
ONNX ONNX
@@ -313,6 +386,7 @@ OpenMPI
OpenSSL OpenSSL
OpenVX OpenVX
OpenXLA OpenXLA
Optim
Oversubscription Oversubscription
PagedAttention PagedAttention
Pallas Pallas
@@ -320,9 +394,11 @@ PCC
PCI PCI
PCIe PCIe
PEFT PEFT
perf
PEQT PEQT
PIL PIL
PILImage PILImage
PJRT
POR POR
PRNG PRNG
PRs PRs
@@ -337,10 +413,12 @@ PowerEdge
PowerShell PowerShell
Pretrained Pretrained
Pretraining Pretraining
Primus
Profiler's Profiler's
PyPi PyPi
Pytest Pytest
PyTorch PyTorch
QPS
Qcycles Qcycles
Qwen Qwen
RAII RAII
@@ -351,6 +429,7 @@ RDC's
RDMA RDMA
RDNA RDNA
README README
Recomputation
RHEL RHEL
RMW RMW
RNN RNN
@@ -383,11 +462,13 @@ Ryzen
SALU SALU
SBIOS SBIOS
SCA SCA
ScaledGEMM
SDK SDK
SDMA SDMA
SDPA SDPA
SDRAM SDRAM
SENDMSG SENDMSG
SGLang
SGPR SGPR
SGPRs SGPRs
SHA SHA
@@ -399,7 +480,9 @@ SKU
SKUs SKUs
SLES SLES
SLURM SLURM
Slurm
SMEM SMEM
SMFMA
SMI SMI
SMT SMT
SPI SPI
@@ -411,18 +494,26 @@ SWE
SerDes SerDes
ShareGPT ShareGPT
Shlens Shlens
simd
Skylake Skylake
Softmax Softmax
Spack Spack
SplitK SplitK
Supermicro Supermicro
Szegedy Szegedy
TagRAM
TCA TCA
TCC TCC
TCCs
TCI TCI
TCIU TCIU
TCP TCP
TCR TCR
TVM
THREADGROUPS
threadgroups
TensorRT
TensorFloat
TF TF
TFLOPS TFLOPS
TP TP
@@ -435,6 +526,7 @@ TensileLite
TensorBoard TensorBoard
TensorFlow TensorFlow
TensorParallel TensorParallel
TheRock
ToC ToC
TorchAudio TorchAudio
torchaudio torchaudio
@@ -452,6 +544,7 @@ UAC
UC UC
UCC UCC
UCX UCX
ud
UE UE
UIF UIF
UMC UMC
@@ -462,9 +555,11 @@ UltraChat
Uncached Uncached
Unittests Unittests
Unhandled Unhandled
unwindowed
VALU VALU
VBIOS VBIOS
VCN VCN
verl's
VGPR VGPR
VGPRs VGPRs
VM VM
@@ -477,11 +572,13 @@ Vanhoucke
Vulkan Vulkan
WGP WGP
WGPs WGPs
WR
WX WX
WikiText WikiText
Wojna Wojna
Workgroups Workgroups
Writebacks Writebacks
xcc
XCD XCD
XCDs XCDs
XGBoost XGBoost
@@ -494,6 +591,7 @@ Xilinx
Xnack Xnack
Xteam Xteam
YAML YAML
YAMLs
YML YML
YModel YModel
ZeRO ZeRO
@@ -501,6 +599,7 @@ ZenDNN
accuracies accuracies
activations activations
addr addr
addEventListener
ade ade
ai ai
alloc alloc
@@ -509,12 +608,14 @@ allocator
allocators allocators
amdgpu amdgpu
api api
aten
atmi atmi
atomics atomics
autogenerated autogenerated
autotune autotune
avx avx
awk awk
az
backend backend
backends backends
bb bb
@@ -532,6 +633,7 @@ boson
bosons bosons
br br
BrainFloat BrainFloat
btn
buildable buildable
bursty bursty
bzip bzip
@@ -543,17 +645,21 @@ centric
changelog changelog
checkpointing checkpointing
chiplet chiplet
classList
cmake cmake
cmd cmd
coalescable coalescable
codename codename
collater collater
comgr comgr
compat
completers completers
composable composable
concretization concretization
config config
configs
conformant conformant
const
constructible constructible
convolutional convolutional
convolves convolves
@@ -588,12 +694,14 @@ denoised
denoises denoises
denormalize denormalize
dequantization dequantization
dequantized
dequantizes dequantizes
deserializers deserializers
detections detections
dev dev
devicelibs devicelibs
devsel devsel
dgl
dimensionality dimensionality
disambiguates disambiguates
distro distro
@@ -617,6 +725,7 @@ exascale
executables executables
ffmpeg ffmpeg
filesystem filesystem
forEach
fortran fortran
fp fp
framebuffer framebuffer
@@ -625,13 +734,16 @@ galb
gcc gcc
gdb gdb
gemm gemm
getAttribute
gfortran gfortran
gfx gfx
githooks githooks
github github
globals globals
gnupg gnupg
gpu
grayscale grayscale
gx
gzip gzip
heterogenous heterogenous
hipBLAS hipBLAS
@@ -679,10 +791,12 @@ installable
interop interop
interprocedural interprocedural
intra intra
intrinsics
invariants invariants
invocating invocating
ipo ipo
jax jax
json
kdb kdb
kfd kfd
kv kv
@@ -696,12 +810,17 @@ linalg
linearized linearized
linter linter
linux linux
llm
llvm llvm
lm
localscratch localscratch
logits logits
lossy lossy
macOS macOS
matchers matchers
maxtext
megablocks
megatron
microarchitecture microarchitecture
migraphx migraphx
migratable migratable
@@ -729,6 +848,7 @@ opencv
openmp openmp
openssl openssl
optimizers optimizers
ol
os os
oversubscription oversubscription
pageable pageable
@@ -736,10 +856,13 @@ pallas
parallelization parallelization
parallelizing parallelizing
param param
params
parameterization parameterization
passthrough passthrough
pe
perfcounter perfcounter
performant performant
piecewise
perl perl
pragma pragma
pre pre
@@ -760,11 +883,14 @@ preprocessing
preprocessor preprocessor
prequantized prequantized
prerequisites prerequisites
pretrain
pretraining pretraining
primus
profiler profiler
profilers profilers
protobuf protobuf
pseudorandom pseudorandom
px
py py
pytorch pytorch
recommender recommender
@@ -772,8 +898,12 @@ recommenders
quantile quantile
quantizer quantizer
quasirandom quasirandom
querySelector
querySelectorAll
queueing queueing
qwen
radeon radeon
rc
rccl rccl
rdc rdc
rdma rdma
@@ -781,6 +911,7 @@ reStructuredText
redirections redirections
refactorization refactorization
reformats reformats
reinforcememt
repo repo
repos repos
representativeness representativeness
@@ -788,6 +919,9 @@ req
resampling resampling
rescaling rescaling
reusability reusability
rhel
rl
RLHF
roadmap roadmap
roc roc
rocAL rocAL
@@ -825,22 +959,30 @@ roctracer
rst rst
runtime runtime
runtimes runtimes
ResNet
sL sL
scalability scalability
scalable scalable
scipy scipy
seealso seealso
selectattr
selectedTag
sendmsg sendmsg
seqs seqs
serializers serializers
setAttribute
sglang
shader shader
sharding sharding
sigmoid sigmoid
sles
sm sm
smi smi
softmax softmax
spack spack
spmm
src src
stanford
stochastically stochastically
strided strided
subcommand subcommand
@@ -848,6 +990,7 @@ subdirectory
subexpression subexpression
subfolder subfolder
subfolders subfolders
submatrix
submodule submodule
submodules submodules
subnet subnet
@@ -856,8 +999,10 @@ symlink
symlinks symlinks
sys sys
tabindex tabindex
targetContainer
td td
tensorfloat tensorfloat
tf
th th
tokenization tokenization
tokenize tokenize
@@ -866,12 +1011,16 @@ tokenizer
tokenizes tokenizes
toolchain toolchain
toolchains toolchains
topk
toolset toolset
toolsets toolsets
torchtitan
torchvision torchvision
tp
tqdm tqdm
tracebacks tracebacks
txt txt
TopK
uarch uarch
uncached uncached
uncacheable uncacheable
@@ -890,6 +1039,7 @@ USM
UTCL UTCL
UTIL UTIL
utils utils
UX
vL vL
variational variational
vdi vdi
@@ -899,6 +1049,7 @@ vectorize
vectorized vectorized
vectorizer vectorizer
vectorizes vectorizes
verl
virtualize virtualize
virtualized virtualized
vjxb vjxb
@@ -918,6 +1069,8 @@ writebacks
wrreq wrreq
wzo wzo
xargs xargs
xdit
xDiT
xGMI xGMI
xPacked xPacked
xz xz

File diff suppressed because it is too large Load Diff

140
README.md
View File

@@ -19,142 +19,14 @@ ROCm supports programming models, such as OpenMP and OpenCL, and includes all ne
source software compilers, debuggers, and libraries. ROCm is fully integrated into machine learning source software compilers, debuggers, and libraries. ROCm is fully integrated into machine learning
(ML) frameworks, such as PyTorch and TensorFlow. (ML) frameworks, such as PyTorch and TensorFlow.
## Getting the ROCm Source Code > [!IMPORTANT]
> A new open source build platform for ROCm is under development at
> https://github.com/ROCm/TheRock, featuring a unified CMake build with bundled
> dependencies, Windows support, and more.
AMD ROCm is built from open source software. It is, therefore, possible to modify the various components of ROCm by downloading the source code and rebuilding the components. The source code for ROCm components can be cloned from each of the GitHub repositories using git. For easy access to download the correct versions of each of these tools, the ROCm repository contains a repo manifest file called [default.xml](./default.xml). You can use this manifest file to download the source code for ROCm software. ## Getting and Building ROCm from Source
### Installing the repo tool Please use [TheRock](https://github.com/ROCm/TheRock) build system to build ROCm from source.
The repo tool from Google allows you to manage multiple git repositories simultaneously. Run the following commands to install the repo tool:
```bash
mkdir -p ~/bin/
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
```
**Note:** The ```~/bin/``` folder is used as an example. You can specify a different folder to install the repo tool into if you desire.
### Installing git-lfs
Some ROCm projects use the Git Large File Storage (LFS) format that may require you to install git-lfs. Refer to [Git Large File Storage](https://github.com/git-lfs/git-lfs/blob/main/INSTALLING.md) for more information. For example, to install git-lfs for Ubuntu, use the following command:
```bash
sudo apt-get install git-lfs
```
### Downloading the ROCm source code
The following example shows how to use the repo tool to download the ROCm source code. If you choose a directory other than ~/bin/ to install the repo tool, you must use that chosen directory in the code as shown below:
```bash
mkdir -p ~/ROCm/
cd ~/ROCm/
export ROCM_VERSION=6.4.1
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.4.x -m tools/rocm-build/rocm-${ROCM_VERSION}.xml
~/bin/repo sync
```
**Note:** Using this sample code will cause the repo tool to download the open source code associated with the specified ROCm release. Ensure that you have ssh-keys configured on your machine for your GitHub ID prior to the download as explained at [Connecting to GitHub with SSH](https://docs.github.com/en/authentication/connecting-to-github-with-ssh).
## Building the ROCm source code
Each ROCm component repository contains directions for building that component, such as the rocSPARSE documentation [Installation and Building for Linux](https://rocm.docs.amd.com/projects/rocSPARSE/en/latest/install/Linux_Install_Guide.html). Refer to the specific component documentation for instructions on building the repository.
Each release of the ROCm software supports specific hardware and software configurations. Refer to [System requirements (Linux)](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html) for the current supported hardware and OS.
## Build ROCm from source
The Build will use as many processors as it can find to build in parallel. Some of the compiles can consume as much as 10GB of RAM, so make sure you have plenty of Swap Space !
By default the ROCm build will compile for all supported GPU architectures and will take approximately 500 CPU hours.
The Build time will reduce significantly if we limit the GPU Architecture/s against which we need to build by using the environment variable GPU_ARCHS as mentioned below.
```bash
# --------------------------------------
# Step1: clone source code
# --------------------------------------
mkdir -p ~/WORKSPACE/ # Or any folder name other than WORKSPACE
cd ~/WORKSPACE/
export ROCM_VERSION=6.4.1
~/bin/repo init -u http://github.com/ROCm/ROCm.git -b roc-6.4.x -m tools/rocm-build/rocm-${ROCM_VERSION}.xml
~/bin/repo sync
# --------------------------------------
# Step 2: Prepare build environment
# --------------------------------------
# Option 1: Start a docker container
# Pulling required base docker images:
# Ubuntu22.04 built from ROCm/tools/rocm-build/docker/ubuntu22/Dockerfile
docker pull rocm/rocm-build-ubuntu-22.04:6.4
# Ubuntu24.04 built from ROCm/tools/rocm-build/docker/ubuntu24/Dockerfile
docker pull rocm/rocm-build-ubuntu-24.04:6.4
# Start docker container and mount the source code folder:
docker run -ti \
-e ROCM_VERSION=${ROCM_VERSION} \
-e CCACHE_DIR=$HOME/.ccache \
-e CCACHE_ENABLED=true \
-e DOCK_WORK_FOLD=/src \
-w /src \
-v $PWD:/src \
-v /etc/passwd:/etc/passwd \
-v /etc/shadow:/etc/shadow \
-v ${HOME}/.ccache:${HOME}/.ccache \
-u $(id -u):$(id -g) \
<replace_with_required_ubuntu_base_docker_image> bash
# Option 2: Install required packages into the host machine
# For ubuntu22.04 system
cd ROCm/tools/rocm-build/docker/ubuntu22
cp * /tmp && cd /tmp
bash install-prerequisites.sh
# For ubuntu24.04 system
cd ROCm/tools/rocm-build/docker/ubuntu24
cp * /tmp && cd /tmp
bash install-prerequisites.sh
# --------------------------------------
# Step 3: Run build command line
# --------------------------------------
# Select GPU targets before building:
# When GPU_ARCHS is not set, default GPU targets supported by ROCm6.1 will be used.
# To build against a subset of GFX architectures you can use the below env variable.
# Support MI300 (gfx940, gfx941, gfx942).
export GPU_ARCHS="gfx942" # Example
export GPU_ARCHS="gfx940;gfx941;gfx942" # Example
# Pick and run build commands in the docker container:
# Build rocm-dev packages
make -f ROCm/tools/rocm-build/ROCm.mk -j ${NPROC:-$(nproc)} rocm-dev
# Build all ROCm packages
make -f ROCm/tools/rocm-build/ROCm.mk -j ${NPROC:-$(nproc)} all
# list all ROCm components to find required components
make -f ROCm/tools/rocm-build/ROCm.mk list_components
# Build a single ROCm packages
make -f ROCm/tools/rocm-build/ROCm.mk T_rocblas
# Find built packages in ubuntu22.04:
out/ubuntu-22.04/22.04/deb/
# Find built packages in ubuntu24.04:
out/ubuntu-24.04/24.04/deb/
# Find built logs in ubuntu22.04:
out/ubuntu-22.04/22.04/logs/
# Find built logs in ubuntu24.04:
out/ubuntu-24.04/24.04/logs/
# All logs pertaining to failed components, end with .errrors extension.
out/ubuntu-22.04/22.04/logs/rocblas.errors # Example
# All logs pertaining to building components, end with .inprogress extension.
out/ubuntu-22.04/22.04/logs/rocblas.inprogress # Example
# All logs pertaining to passed components, use the component names.
out/ubuntu-22.04/22.04/logs/rocblas # Example
```
Note: [Overview for ROCm.mk](tools/rocm-build/README.md)
## ROCm documentation ## ROCm documentation

File diff suppressed because it is too large Load Diff

View File

@@ -1,32 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<manifest> <manifest>
<remote name="rocm-org" fetch="https://github.com/ROCm/" /> <remote name="rocm-org" fetch="https://github.com/ROCm/" />
<default revision="refs/tags/rocm-6.4.1" <default revision="refs/tags/rocm-7.1.1"
remote="rocm-org" remote="rocm-org"
sync-c="true" sync-c="true"
sync-j="4" /> sync-j="4" />
<!--list of projects for ROCm--> <!--list of projects for ROCm-->
<project name="ROCK-Kernel-Driver" /> <project name="ROCK-Kernel-Driver" />
<project name="ROCR-Runtime" />
<project name="amdsmi" /> <project name="amdsmi" />
<project name="rdc" />
<project name="rocm_bandwidth_test" /> <project name="rocm_bandwidth_test" />
<project name="rocm_smi_lib" />
<project name="rocm-core" />
<project name="rocm-examples" /> <project name="rocm-examples" />
<project name="rocminfo" />
<project name="rocprofiler" />
<project name="rocprofiler-register" />
<project name="rocprofiler-sdk" />
<project name="rocprofiler-compute" />
<project name="rocprofiler-systems" />
<project name="roctracer" />
<!--HIP Projects--> <!--HIP Projects-->
<project name="HIP" />
<project name="hip-tests" />
<project name="HIPIFY" /> <project name="HIPIFY" />
<project name="clr" />
<project name="hipother" />
<!-- The following projects are all associated with the AMDGPU LLVM compiler --> <!-- The following projects are all associated with the AMDGPU LLVM compiler -->
<project name="half" /> <project name="half" />
<project name="llvm-project" /> <project name="llvm-project" />
@@ -37,36 +22,32 @@
<project name="rocr_debug_agent" /> <project name="rocr_debug_agent" />
<!-- ROCm Libraries --> <!-- ROCm Libraries -->
<project groups="mathlibs" name="AMDMIGraphX" /> <project groups="mathlibs" name="AMDMIGraphX" />
<project groups="mathlibs" name="MIOpen" />
<project groups="mathlibs" name="MIVisionX" /> <project groups="mathlibs" name="MIVisionX" />
<project groups="mathlibs" name="ROCmValidationSuite" /> <project groups="mathlibs" name="ROCmValidationSuite" />
<project groups="mathlibs" name="Tensile" />
<project groups="mathlibs" name="composable_kernel" /> <project groups="mathlibs" name="composable_kernel" />
<project groups="mathlibs" name="hipBLAS-common" />
<project groups="mathlibs" name="hipBLAS" />
<project groups="mathlibs" name="hipBLASLt" />
<project groups="mathlibs" name="hipCUB" />
<project groups="mathlibs" name="hipFFT" />
<project groups="mathlibs" name="hipRAND" />
<project groups="mathlibs" name="hipSOLVER" /> <project groups="mathlibs" name="hipSOLVER" />
<project groups="mathlibs" name="hipSPARSE" />
<project groups="mathlibs" name="hipSPARSELt" />
<project groups="mathlibs" name="hipTensor" /> <project groups="mathlibs" name="hipTensor" />
<project groups="mathlibs" name="hipfort" /> <project groups="mathlibs" name="hipfort" />
<project groups="mathlibs" name="rccl" /> <project groups="mathlibs" name="rccl" />
<project groups="mathlibs" name="rocAL" /> <project groups="mathlibs" name="rocAL" />
<project groups="mathlibs" name="rocALUTION" /> <project groups="mathlibs" name="rocALUTION" />
<project groups="mathlibs" name="rocBLAS" />
<project groups="mathlibs" name="rocDecode" /> <project groups="mathlibs" name="rocDecode" />
<project groups="mathlibs" name="rocJPEG" /> <project groups="mathlibs" name="rocJPEG" />
<!-- The following components have been migrated to rocm-libraries:
hipBLAS-common hipBLAS hipBLASLt hipCUB
hipFFT hipRAND hipSPARSE hipSPARSELt
MIOpen rocBLAS rocFFT rocPRIM rocRAND
rocSPARSE rocThrust Tensile -->
<project groups="mathlibs" name="rocm-libraries" />
<!-- The following components have been migrated to rocm-systems:
aqlprofile clr hip hip-tests hipother
rdc rocm-core rocm_smi_lib rocminfo rocprofiler-compute
rocprofiler-register rocprofiler-sdk rocprofiler-systems
rocprofiler rocr-runtime roctracer -->
<project groups="mathlibs" name="rocm-systems" />
<project groups="mathlibs" name="rocPyDecode" /> <project groups="mathlibs" name="rocPyDecode" />
<project groups="mathlibs" name="rocFFT" />
<project groups="mathlibs" name="rocPRIM" />
<project groups="mathlibs" name="rocRAND" />
<project groups="mathlibs" name="rocSHMEM" />
<project groups="mathlibs" name="rocSOLVER" /> <project groups="mathlibs" name="rocSOLVER" />
<project groups="mathlibs" name="rocSPARSE" /> <project groups="mathlibs" name="rocSHMEM" />
<project groups="mathlibs" name="rocThrust" />
<project groups="mathlibs" name="rocWMMA" /> <project groups="mathlibs" name="rocWMMA" />
<project groups="mathlibs" name="rocm-cmake" /> <project groups="mathlibs" name="rocm-cmake" />
<project groups="mathlibs" name="rpp" /> <project groups="mathlibs" name="rpp" />

View File

@@ -25,69 +25,69 @@ additional licenses. Please review individual repositories for more information.
<!-- spellcheck-disable --> <!-- spellcheck-disable -->
| Component | License | | Component | License |
|:---------------------|:-------------------------| |:---------------------|:-------------------------|
| [AMD Compute Language Runtime (CLR)](https://github.com/ROCm/clr) | [MIT](https://github.com/ROCm/clr/blob/amd-staging/LICENSE.txt) | | [AMD Compute Language Runtime (CLR)](https://github.com/ROCm/rocm-systems/tree/develop/projects/clr) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/clr/LICENSE.md) |
| [AMD SMI](https://github.com/ROCm/amdsmi) | [MIT](https://github.com/ROCm/amdsmi/blob/amd-staging/LICENSE) | | [AMD SMI](https://github.com/ROCm/amdsmi) | [MIT](https://github.com/ROCm/amdsmi/blob/amd-staging/LICENSE) |
| [aomp](https://github.com/ROCm/aomp/) | [Apache 2.0](https://github.com/ROCm/aomp/blob/aomp-dev/LICENSE) | | [aomp](https://github.com/ROCm/aomp/) | [Apache 2.0](https://github.com/ROCm/aomp/blob/aomp-dev/LICENSE) |
| [aomp-extras](https://github.com/ROCm/aomp-extras/) | [MIT](https://github.com/ROCm/aomp-extras/blob/aomp-dev/LICENSE) | | [aomp-extras](https://github.com/ROCm/aomp-extras/) | [MIT](https://github.com/ROCm/aomp-extras/blob/aomp-dev/LICENSE) |
| [AQLprofile](https://github.com/ROCm/rocm-systems/tree/develop/projects/aqlprofile/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/aqlprofile/LICENSE.md) |
| [Code Object Manager (Comgr)](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/comgr) | [The University of Illinois/NCSA](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/comgr/LICENSE.txt) | | [Code Object Manager (Comgr)](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/comgr) | [The University of Illinois/NCSA](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/comgr/LICENSE.txt) |
| [Composable Kernel](https://github.com/ROCm/composable_kernel) | [MIT](https://github.com/ROCm/composable_kernel/blob/develop/LICENSE) | | [Composable Kernel](https://github.com/ROCm/composable_kernel) | [MIT](https://github.com/ROCm/composable_kernel/blob/develop/LICENSE) |
| [half](https://github.com/ROCm/half/) | [MIT](https://github.com/ROCm/half/blob/rocm/LICENSE.txt) | | [half](https://github.com/ROCm/half/) | [MIT](https://github.com/ROCm/half/blob/rocm/LICENSE.txt) |
| [HIP](https://github.com/ROCm/HIP/) | [MIT](https://github.com/ROCm/HIP/blob/amd-staging/LICENSE.txt) | | [HIP](https://github.com/ROCm/rocm-systems/tree/develop/projects/hip/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/hip/LICENSE.md) |
| [hipamd](https://github.com/ROCm/clr/tree/amd-staging/hipamd) | [MIT](https://github.com/ROCm/clr/blob/amd-staging/hipamd/LICENSE.txt) | | [hipamd](https://github.com/ROCm/rocm-systems/tree/develop/projects/clr/hipamd/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/clr/hipamd/LICENSE.md) |
| [hipBLAS](https://github.com/ROCm/hipBLAS/) | [MIT](https://github.com/ROCm/hipBLAS/blob/develop/LICENSE.md) | | [hipBLAS](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipblas/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipblas/LICENSE.md) |
| [hipBLASLt](https://github.com/ROCm/hipBLASLt/) | [MIT](https://github.com/ROCm/hipBLASLt/blob/develop/LICENSE.md) | | [hipBLASLt](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipblaslt/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipblaslt/LICENSE.md) |
| [HIPCC](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/hipcc) | [MIT](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/hipcc/LICENSE.txt) | | [HIPCC](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/hipcc) | [MIT](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/hipcc/LICENSE.txt) |
| [hipCUB](https://github.com/ROCm/hipCUB/) | [Custom](https://github.com/ROCm/hipCUB/blob/develop/LICENSE.txt) | | [hipCUB](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipcub/) | [Custom](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipcub/LICENSE.txt) |
| [hipFFT](https://github.com/ROCm/hipFFT/) | [MIT](https://github.com/ROCm/hipFFT/blob/develop/LICENSE.md) | | [hipFFT](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipfft/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipfft/LICENSE.md) |
| [hipfort](https://github.com/ROCm/hipfort/) | [MIT](https://github.com/ROCm/hipfort/blob/develop/LICENSE) | | [hipfort](https://github.com/ROCm/hipfort/) | [MIT](https://github.com/ROCm/hipfort/blob/develop/LICENSE) |
| [HIPIFY](https://github.com/ROCm/HIPIFY/) | [MIT](https://github.com/ROCm/HIPIFY/blob/amd-staging/LICENSE.txt) | | [HIPIFY](https://github.com/ROCm/HIPIFY/) | [MIT](https://github.com/ROCm/HIPIFY/blob/amd-staging/LICENSE.txt) |
| [hipRAND](https://github.com/ROCm/hipRAND/) | [MIT](https://github.com/ROCm/hipRAND/blob/develop/LICENSE.txt) | | [hipRAND](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hiprand/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hiprand/LICENSE.md) |
| [hipSOLVER](https://github.com/ROCm/hipSOLVER/) | [MIT](https://github.com/ROCm/hipSOLVER/blob/develop/LICENSE.md) | | [hipSOLVER](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipsolver/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipsolver/LICENSE.md) |
| [hipSPARSE](https://github.com/ROCm/hipSPARSE/) | [MIT](https://github.com/ROCm/hipSPARSE/blob/develop/LICENSE.md) | | [hipSPARSE](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipsparse/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipsparse/LICENSE.md) |
| [hipSPARSELt](https://github.com/ROCm/hipSPARSELt/) | [MIT](https://github.com/ROCm/hipSPARSELt/blob/develop/LICENSE.md) | | [hipSPARSELt](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hipsparselt/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hipsparselt/LICENSE.md) |
| [hipTensor](https://github.com/ROCm/hipTensor) | [MIT](https://github.com/ROCm/hipTensor/blob/develop/LICENSE) | | [hipTensor](https://github.com/ROCm/rocm-libraries/tree/develop/projects/hiptensor/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/hiptensor/LICENSE) |
| hsa-amd-aqlprofile | [AMD Software EULA](https://www.amd.com/en/legal/eula/amd-software-eula.html) |
| [llvm-project](https://github.com/ROCm/llvm-project/) | [Apache](https://github.com/ROCm/llvm-project/blob/amd-staging/LICENSE.TXT) | | [llvm-project](https://github.com/ROCm/llvm-project/) | [Apache](https://github.com/ROCm/llvm-project/blob/amd-staging/LICENSE.TXT) |
| [llvm-project/flang](https://github.com/ROCm/llvm-project/tree/amd-staging/flang) | [Apache 2.0](https://github.com/ROCm/llvm-project/blob/amd-staging/flang/LICENSE.TXT) | | [llvm-project/flang](https://github.com/ROCm/llvm-project/tree/amd-staging/flang) | [Apache 2.0](https://github.com/ROCm/llvm-project/blob/amd-staging/flang/LICENSE.TXT) |
| [MIGraphX](https://github.com/ROCm/AMDMIGraphX/) | [MIT](https://github.com/ROCm/AMDMIGraphX/blob/develop/LICENSE) | | [MIGraphX](https://github.com/ROCm/AMDMIGraphX/) | [MIT](https://github.com/ROCm/AMDMIGraphX/blob/develop/LICENSE) |
| [MIOpen](https://github.com/ROCm/MIOpen/) | [MIT](https://github.com/ROCm/MIOpen/blob/develop/LICENSE.txt) | | [MIOpen](https://github.com/ROCm/rocm-libraries/tree/develop/projects/miopen/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/miopen/LICENSE.md) |
| [MIVisionX](https://github.com/ROCm/MIVisionX/) | [MIT](https://github.com/ROCm/MIVisionX/blob/develop/LICENSE.txt) | | [MIVisionX](https://github.com/ROCm/MIVisionX/) | [MIT](https://github.com/ROCm/MIVisionX/blob/develop/LICENSE.txt) |
| [rocAL](https://github.com/ROCm/rocAL) | [MIT](https://github.com/ROCm/rocAL/blob/develop/LICENSE.txt) | | [rocAL](https://github.com/ROCm/rocAL) | [MIT](https://github.com/ROCm/rocAL/blob/develop/LICENSE.txt) |
| [rocALUTION](https://github.com/ROCm/rocALUTION/) | [MIT](https://github.com/ROCm/rocALUTION/blob/develop/LICENSE.md) | | [rocALUTION](https://github.com/ROCm/rocALUTION/) | [MIT](https://github.com/ROCm/rocALUTION/blob/develop/LICENSE.md) |
| [rocBLAS](https://github.com/ROCm/rocBLAS/) | [MIT](https://github.com/ROCm/rocBLAS/blob/develop/LICENSE.md) | | [rocBLAS](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocblas/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocblas/LICENSE.md) |
| [ROCdbgapi](https://github.com/ROCm/ROCdbgapi/) | [MIT](https://github.com/ROCm/ROCdbgapi/blob/amd-staging/LICENSE.txt) | | [ROCdbgapi](https://github.com/ROCm/ROCdbgapi/) | [MIT](https://github.com/ROCm/ROCdbgapi/blob/amd-staging/LICENSE.txt) |
| [rocDecode](https://github.com/ROCm/rocDecode) | [MIT](https://github.com/ROCm/rocDecode/blob/develop/LICENSE) | | [rocDecode](https://github.com/ROCm/rocDecode) | [MIT](https://github.com/ROCm/rocDecode/blob/develop/LICENSE) |
| [rocFFT](https://github.com/ROCm/rocFFT/) | [MIT](https://github.com/ROCm/rocFFT/blob/develop/LICENSE.md) | | [rocFFT](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocfft/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocfft/LICENSE.md) |
| [ROCgdb](https://github.com/ROCm/ROCgdb/) | [GNU General Public License v3.0](https://github.com/ROCm/ROCgdb/blob/amd-staging/COPYING3) | | [ROCgdb](https://github.com/ROCm/ROCgdb/) | [GNU General Public License v3.0](https://github.com/ROCm/ROCgdb/blob/amd-staging/COPYING3) |
| [rocJPEG](https://github.com/ROCm/rocJPEG/) | [MIT](https://github.com/ROCm/rocJPEG/blob/develop/LICENSE) | | [rocJPEG](https://github.com/ROCm/rocJPEG/) | [MIT](https://github.com/ROCm/rocJPEG/blob/develop/LICENSE) |
| [ROCK-Kernel-Driver](https://github.com/ROCm/ROCK-Kernel-Driver/) | [GPL 2.0 WITH Linux-syscall-note](https://github.com/ROCm/ROCK-Kernel-Driver/blob/master/COPYING) | | [ROCK-Kernel-Driver](https://github.com/ROCm/ROCK-Kernel-Driver/) | [GPL 2.0 WITH Linux-syscall-note](https://github.com/ROCm/ROCK-Kernel-Driver/blob/master/COPYING) |
| [rocminfo](https://github.com/ROCm/rocminfo/) | [The University of Illinois/NCSA](https://github.com/ROCm/rocminfo/blob/amd-staging/License.txt) | | [rocminfo](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocminfo/) | [The University of Illinois/NCSA](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocminfo/License.txt) |
| [ROCm Bandwidth Test](https://github.com/ROCm/rocm_bandwidth_test/) | [MIT](https://github.com/ROCm/rocm_bandwidth_test/blob/master/LICENSE.txt) | | [ROCm Bandwidth Test](https://github.com/ROCm/rocm_bandwidth_test/) | [MIT](https://github.com/ROCm/rocm_bandwidth_test/blob/master/LICENSE.txt) |
| [ROCm CMake](https://github.com/ROCm/rocm-cmake/) | [MIT](https://github.com/ROCm/rocm-cmake/blob/develop/LICENSE) | | [ROCm CMake](https://github.com/ROCm/rocm-cmake/) | [MIT](https://github.com/ROCm/rocm-cmake/blob/develop/LICENSE) |
| [ROCm Communication Collectives Library (RCCL)](https://github.com/ROCm/rccl/) | [Custom](https://github.com/ROCm/rccl/blob/develop/LICENSE.txt) | | [ROCm Communication Collectives Library (RCCL)](https://github.com/ROCm/rccl/) | [Custom](https://github.com/ROCm/rccl/blob/develop/LICENSE.txt) |
| [ROCm-Core](https://github.com/ROCm/rocm-core) | [MIT](https://github.com/ROCm/rocm-core/blob/master/copyright) | | [ROCm-Core](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocm-core/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocm-core/LICENSE.md) |
| [ROCm Compute Profiler](https://github.com/ROCm/rocprofiler-compute) | [MIT](https://github.com/ROCm/rocprofiler-compute/blob/amd-staging/LICENSE) | | [ROCm Compute Profiler](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler-compute/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocprofiler-compute/LICENSE.md) |
| [ROCm Data Center (RDC)](https://github.com/ROCm/rdc/) | [MIT](https://github.com/ROCm/rdc/blob/amd-staging/LICENSE) | | [ROCm Data Center (RDC)](https://github.com/ROCm/rocm-systems/tree/develop/projects/rdc/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rdc/LICENSE.md) |
| [ROCm-Device-Libs](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs) | [The University of Illinois/NCSA](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/device-libs/LICENSE.TXT) | | [ROCm-Device-Libs](https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs) | [The University of Illinois/NCSA](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/device-libs/LICENSE.TXT) |
| [ROCm-OpenCL-Runtime](https://github.com/ROCm/clr/tree/amd-staging/opencl) | [MIT](https://github.com/ROCm/clr/blob/amd-staging/opencl/LICENSE.txt) | | [ROCm-OpenCL-Runtime](https://github.com/ROCm/rocm-systems/tree/develop/projects/clr/opencl/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/clr/opencl/LICENSE.md) |
| [ROCm Performance Primitives (RPP)](https://github.com/ROCm/rpp) | [MIT](https://github.com/ROCm/rpp/blob/develop/LICENSE) | | [ROCm Performance Primitives (RPP)](https://github.com/ROCm/rpp) | [MIT](https://github.com/ROCm/rpp/blob/develop/LICENSE) |
| [ROCm SMI Lib](https://github.com/ROCm/rocm_smi_lib/) | [MIT](https://github.com/ROCm/rocm_smi_lib/blob/amd-staging/License.txt) | | [ROCm SMI Lib](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocm-smi-lib/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocm-smi-lib/LICENSE.md) |
| [ROCm Systems Profiler](https://github.com/ROCm/rocprofiler-systems) | [MIT](https://github.com/ROCm/rocprofiler-systems/blob/amd-staging/LICENSE) | | [ROCm Systems Profiler](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler-systems/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocprofiler-systems/LICENSE.md) |
| [ROCm Validation Suite](https://github.com/ROCm/ROCmValidationSuite/) | [MIT](https://github.com/ROCm/ROCmValidationSuite/blob/master/LICENSE) | | [ROCm Validation Suite](https://github.com/ROCm/ROCmValidationSuite/) | [MIT](https://github.com/ROCm/ROCmValidationSuite/blob/master/LICENSE) |
| [rocPRIM](https://github.com/ROCm/rocPRIM/) | [MIT](https://github.com/ROCm/rocPRIM/blob/develop/LICENSE.txt) | | [rocPRIM](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocprim/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocprim/LICENSE.md) |
| [ROCProfiler](https://github.com/ROCm/rocprofiler/) | [MIT](https://github.com/ROCm/rocprofiler/blob/amd-staging/LICENSE) | | [ROCProfiler](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocprofiler/LICENSE.md) |
| [ROCprofiler-SDK](https://github.com/ROCm/rocprofiler-sdk) | [MIT](https://github.com/ROCm/rocprofiler-sdk/blob/amd-mainline/LICENSE) | | [ROCprofiler-SDK](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler-sdk/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocprofiler-sdk/LICENSE.md) |
| [rocPyDecode](https://github.com/ROCm/rocPyDecode) | [MIT](https://github.com/ROCm/rocPyDecode/blob/develop/LICENSE.txt) | | [rocPyDecode](https://github.com/ROCm/rocPyDecode) | [MIT](https://github.com/ROCm/rocPyDecode/blob/develop/LICENSE.txt) |
| [rocRAND](https://github.com/ROCm/rocRAND/) | [MIT](https://github.com/ROCm/rocRAND/blob/develop/LICENSE.txt) | | [rocRAND](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocrand/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocrand/LICENSE.md) |
| [ROCr Debug Agent](https://github.com/ROCm/rocr_debug_agent/) | [The University of Illinois/NCSA](https://github.com/ROCm/rocr_debug_agent/blob/amd-staging/LICENSE.txt) | | [ROCr Debug Agent](https://github.com/ROCm/rocr_debug_agent/) | [The University of Illinois/NCSA](https://github.com/ROCm/rocr_debug_agent/blob/amd-staging/LICENSE.txt) |
| [ROCR-Runtime](https://github.com/ROCm/ROCR-Runtime/) | [The University of Illinois/NCSA](https://github.com/ROCm/ROCR-Runtime/blob/amd-staging/LICENSE.txt) | | [ROCR-Runtime](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocr-runtime/) | [The University of Illinois/NCSA](https://github.com/ROCm/rocm-systems/blob/develop/projects/rocr-runtime/LICENSE.txt) |
| [rocSHMEM](https://github.com/ROCm/rocSHMEM/) | [MIT](https://github.com/ROCm/rocSHMEM/blob/develop/LICENSE.md) | | [rocSHMEM](https://github.com/ROCm/rocSHMEM/) | [MIT](https://github.com/ROCm/rocSHMEM/blob/develop/LICENSE.md) |
| [rocSOLVER](https://github.com/ROCm/rocSOLVER/) | [BSD-2-Clause](https://github.com/ROCm/rocSOLVER/blob/develop/LICENSE.md) | | [rocSOLVER](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocsolver/) | [BSD-2-Clause](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocsolver/LICENSE.md) |
| [rocSPARSE](https://github.com/ROCm/rocSPARSE/) | [MIT](https://github.com/ROCm/rocSPARSE/blob/develop/LICENSE.md) | | [rocSPARSE](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocsparse/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocsparse/LICENSE.md) |
| [rocThrust](https://github.com/ROCm/rocThrust/) | [Apache 2.0](https://github.com/ROCm/rocThrust/blob/develop/LICENSE) | | [rocThrust](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocthrust/) | [Apache 2.0](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocthrust/LICENSE) |
| [ROCTracer](https://github.com/ROCm/roctracer/) | [MIT](https://github.com/ROCm/roctracer/blob/amd-master/LICENSE) | | [ROCTracer](https://github.com/ROCm/rocm-systems/tree/develop/projects/roctracer/) | [MIT](https://github.com/ROCm/rocm-systems/blob/develop/projects/roctracer/LICENSE.md) |
| [rocWMMA](https://github.com/ROCm/rocWMMA/) | [MIT](https://github.com/ROCm/rocWMMA/blob/develop/LICENSE.md) | | [rocWMMA](https://github.com/ROCm/rocm-libraries/tree/develop/projects/rocwmma/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/projects/rocwmma/LICENSE.md) |
| [Tensile](https://github.com/ROCm/Tensile/) | [MIT](https://github.com/ROCm/Tensile/blob/develop/LICENSE.md) | | [Tensile](https://github.com/ROCm/rocm-libraries/tree/develop/shared/tensile/) | [MIT](https://github.com/ROCm/rocm-libraries/blob/develop/shared/tensile/LICENSE.md) |
| [TransferBench](https://github.com/ROCm/TransferBench) | [MIT](https://github.com/ROCm/TransferBench/blob/develop/LICENSE.md) | | [TransferBench](https://github.com/ROCm/TransferBench) | [MIT](https://github.com/ROCm/TransferBench/blob/develop/LICENSE.md) |
Open sourced ROCm components are released via public GitHub Open sourced ROCm components are released via public GitHub
@@ -132,12 +132,10 @@ companies.
### Package licensing ### Package licensing
:::{attention} :::{attention}
AQL Profiler and AOCC CPU optimization are both provided in binary form, each ROCprof Trace Decoder and AOCC CPU optimizations are provided in binary form, subject to the license agreement enclosed on [GitHub](https://github.com/ROCm/rocprof-trace-decoder/blob/amd-mainline/LICENSE) for ROCprof Trace Decoder, and [Developer Central](https://www.amd.com/en/developer/aocc.html) for AOCC. By using, installing,
subject to the license agreement enclosed in the directory for the binary available copying or distributing ROCprof Trace Decoder or AOCC CPU Optimizations, you agree to
in `/opt/rocm/share/doc/hsa-amd-aqlprofile/EULA`. By using, installing,
copying or distributing AQL Profiler and/or AOCC CPU Optimizations, you agree to
the terms and conditions of this license agreement. If you do not agree to the the terms and conditions of this license agreement. If you do not agree to the
terms of this agreement, do not install, copy or use the AQL Profiler and/or the terms of this agreement, do not install, copy or use ROCprof Trace Decoder or the
AOCC CPU Optimizations. AOCC CPU Optimizations.
::: :::

View File

@@ -1,126 +1,136 @@
ROCm Version,6.4.1,6.4.0,6.3.3,6.3.2,6.3.1,6.3.0,6.2.4,6.2.2,6.2.1,6.2.0, 6.1.5, 6.1.2, 6.1.1, 6.1.0, 6.0.2, 6.0.0 ROCm Version,7.1.1,7.1.0,7.0.2,7.0.1/7.0.0,6.4.3,6.4.2,6.4.1,6.4.0,6.3.3,6.3.2,6.3.1,6.3.0,6.2.4,6.2.2,6.2.1,6.2.0, 6.1.5, 6.1.2, 6.1.1, 6.1.0, 6.0.2, 6.0.0
:ref:`Operating systems & kernels <OS-kernel-versions>`,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,"Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04",Ubuntu 24.04,,,,,, :ref:`Operating systems & kernels <OS-kernel-versions>` [#os-compatibility-past-60]_,Ubuntu 24.04.3,Ubuntu 24.04.3,Ubuntu 24.04.3,Ubuntu 24.04.3,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,Ubuntu 24.04.2,"Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04","Ubuntu 24.04.1, 24.04",Ubuntu 24.04,,,,,,
,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,"Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3, 22.04.2","Ubuntu 22.04.4, 22.04.3, 22.04.2" ,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,Ubuntu 22.04.5,"Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4","Ubuntu 22.04.5, 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3","Ubuntu 22.04.4, 22.04.3, 22.04.2","Ubuntu 22.04.4, 22.04.3, 22.04.2"
,,,,,,,,,,,"Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5" ,,,,,,,,,,,,,,,,,"Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5","Ubuntu 20.04.6, 20.04.5"
,"RHEL 9.6, 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.3, 9.2","RHEL 9.3, 9.2" ,"RHEL 10.1, 10.0, 9.7, 9.6, 9.4","RHEL 10.0, 9.6, 9.4","RHEL 10.0, 9.6, 9.4","RHEL 9.6, 9.4","RHEL 9.6, 9.4","RHEL 9.6, 9.4","RHEL 9.6, 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.5, 9.4","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.4, 9.3, 9.2","RHEL 9.3, 9.2","RHEL 9.3, 9.2"
,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,"RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8" ,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,RHEL 8.10,"RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.10, 8.9","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8","RHEL 8.9, 8.8"
,SLES 15 SP6,SLES 15 SP6,"SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4" ,SLES 15 SP7,SLES 15 SP7,SLES 15 SP7,SLES 15 SP7,"SLES 15 SP7, SP6","SLES 15 SP7, SP6",SLES 15 SP6,SLES 15 SP6,"SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP6, SP5","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4","SLES 15 SP5, SP4"
,,,,,,,,,,,,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9 ,,,,,,,,,,,,,,,,,,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9,CentOS 7.9
,"Oracle Linux 9, 8 [#mi300x-past-60]_","Oracle Linux 9, 8 [#mi300x-past-60]_",Oracle Linux 8.10 [#mi300x-past-60]_,Oracle Linux 8.10 [#mi300x-past-60]_,Oracle Linux 8.10 [#mi300x-past-60]_,Oracle Linux 8.10 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,Oracle Linux 8.9 [#mi300x-past-60]_,,, ,"Oracle Linux 10, 9, 8","Oracle Linux 10, 9, 8","Oracle Linux 10, 9, 8","Oracle Linux 9, 8","Oracle Linux 9, 8","Oracle Linux 9, 8","Oracle Linux 9, 8","Oracle Linux 9, 8",Oracle Linux 8.10,Oracle Linux 8.10,Oracle Linux 8.10,Oracle Linux 8.10,Oracle Linux 8.9,Oracle Linux 8.9,Oracle Linux 8.9,Oracle Linux 8.9,Oracle Linux 8.9,Oracle Linux 8.9,Oracle Linux 8.9,,,
,Debian 12 [#single-node-past-60]_,Debian 12 [#single-node-past-60]_,Debian 12 [#single-node-past-60]_,Debian 12 [#single-node-past-60]_,Debian 12 [#single-node-past-60]_,,,,,,,,,,, ,"Debian 13, 12","Debian 13, 12","Debian 13, 12",Debian 12,Debian 12,Debian 12,Debian 12,Debian 12,Debian 12,Debian 12,Debian 12,,,,,,,,,,,
,Azure Linux 3.0 [#mi300x-past-60]_,Azure Linux 3.0 [#mi300x-past-60]_,Azure Linux 3.0 [#mi300x-past-60]_,Azure Linux 3.0 [#mi300x-past-60]_,,,,,,,,,,,, ,,,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,Azure Linux 3.0,,,,,,,,,,,,
,.. _architecture-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, ,Rocky Linux 9,Rocky Linux 9,Rocky Linux 9,Rocky Linux 9,,,,,,,,,,,,,,,,,,
:doc:`Architecture <rocm-install-on-linux:reference/system-requirements>`,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3 ,.. _architecture-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2 :doc:`Architecture <rocm-install-on-linux:reference/system-requirements>`,CDNA4,CDNA4,CDNA4,CDNA4,,,,,,,,,,,,,,,,,,
,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA ,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3,CDNA3
,RDNA4,,,,,,,,,,,,,,, ,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2,CDNA2
,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3 ,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA,CDNA
,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2 ,RDNA4,RDNA4,RDNA4,RDNA4,RDNA4,RDNA4,RDNA4,,,,,,,,,,,,,,,
,.. _gpu-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, ,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3,RDNA3
:doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>`,gfx1201 [#RDNA-OS-past-60]_,,,,,,,,,,,,,,, ,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2,RDNA2
,gfx1200 [#RDNA-OS-past-60]_,,,,,,,,,,,,,,, ,.. _gpu-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
,gfx1101 [#RDNA-OS-past-60]_,,,,,,,,,,,,,,, :doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>` [#gpu-compatibility-past-60]_,gfx950,gfx950,gfx950,gfx950,,,,,,,,,,,,,,,,,,
,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100 ,gfx1201,gfx1201,gfx1201,gfx1201,gfx1201,gfx1201,gfx1201,,,,,,,,,,,,,,,
,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030 ,gfx1200,gfx1200,gfx1200,gfx1200,gfx1200,gfx1200,gfx1200,,,,,,,,,,,,,,,
,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942 [#mi300_624-past-60]_,gfx942 [#mi300_622-past-60]_,gfx942 [#mi300_621-past-60]_,gfx942 [#mi300_620-past-60]_, gfx942 [#mi300_612-past-60]_, gfx942 [#mi300_612-past-60]_, gfx942 [#mi300_611-past-60]_, gfx942 [#mi300_610-past-60]_, gfx942 [#mi300_602-past-60]_, gfx942 [#mi300_600-past-60]_ ,gfx1101,gfx1101,gfx1101,gfx1101,gfx1101,gfx1101,gfx1101,,,,,,,,,,,,,,,
,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a ,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100,gfx1100
,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908 ,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030,gfx1030
,,,,,,,,,,,,,,,, ,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942,gfx942, gfx942, gfx942, gfx942, gfx942, gfx942, gfx942
FRAMEWORK SUPPORT,.. _framework-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, ,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a,gfx90a
:doc:`PyTorch <../compatibility/ml-compatibility/pytorch-compatibility>`,"2.6, 2.5, 2.4, 2.3","2.6, 2.5, 2.4, 2.3","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13" ,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908,gfx908
:doc:`TensorFlow <../compatibility/ml-compatibility/tensorflow-compatibility>`,"2.18.1, 2.17.1, 2.16.2","2.18.1, 2.17.1, 2.16.2","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.14.0, 2.13.1, 2.12.1","2.14.0, 2.13.1, 2.12.1" ,,,,,,,,,,,,,,,,,,,,,,
:doc:`JAX <../compatibility/ml-compatibility/jax-compatibility>`,0.4.35,0.4.35,0.4.31,0.4.31,0.4.31,0.4.31,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26 FRAMEWORK SUPPORT,.. _framework-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
`ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.2,1.2,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.14.1,1.14.1 :doc:`PyTorch <../compatibility/ml-compatibility/pytorch-compatibility>`,"2.9, 2.8, 2.7","2.8, 2.7, 2.6","2.8, 2.7, 2.6","2.7, 2.6, 2.5","2.6, 2.5, 2.4, 2.3","2.6, 2.5, 2.4, 2.3","2.6, 2.5, 2.4, 2.3","2.6, 2.5, 2.4, 2.3","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 1.13","2.4, 2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.3, 2.2, 2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13","2.1, 2.0, 1.13"
,,,,,,,,,,,,,,,, :doc:`TensorFlow <../compatibility/ml-compatibility/tensorflow-compatibility>`,"2.20.0, 2.19.1, 2.18.1","2.20.0, 2.19.1, 2.18.1","2.19.1, 2.18.1, 2.17.1 [#tf-mi350-past-60]_","2.19.1, 2.18.1, 2.17.1 [#tf-mi350-past-60]_","2.18.1, 2.17.1, 2.16.2","2.18.1, 2.17.1, 2.16.2","2.18.1, 2.17.1, 2.16.2","2.18.1, 2.17.1, 2.16.2","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.17.0, 2.16.2, 2.15.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.16.1, 2.15.1, 2.14.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.15.0, 2.14.0, 2.13.1","2.14.0, 2.13.1, 2.12.1","2.14.0, 2.13.1, 2.12.1"
,,,,,,,,,,,,,,,, :doc:`JAX <../compatibility/ml-compatibility/jax-compatibility>`,0.7.1,0.7.1,0.6.0,0.6.0,0.4.35,0.4.35,0.4.35,0.4.35,0.4.31,0.4.31,0.4.31,0.4.31,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26,0.4.26
THIRD PARTY COMMS,.. _thirdpartycomms-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`verl <../compatibility/ml-compatibility/verl-compatibility>` [#verl_compat-past-60]_,N/A,N/A,N/A,0.6.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,0.3.0.post0,N/A,N/A,N/A,N/A,N/A,N/A
`UCC <https://github.com/ROCm/ucc>`_,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.2.0,>=1.2.0 :doc:`Stanford Megatron-LM <../compatibility/ml-compatibility/stanford-megatron-lm-compatibility>` [#stanford-megatron-lm_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,85f95ae,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
`UCX <https://github.com/ROCm/ucx>`_,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1 :doc:`DGL <../compatibility/ml-compatibility/dgl-compatibility>` [#dgl_compat-past-60]_,N/A,N/A,N/A,2.4.0,2.4.0,N/A,N/A,2.4.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
,,,,,,,,,,,,,,,, :doc:`Megablocks <../compatibility/ml-compatibility/megablocks-compatibility>` [#megablocks_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,0.7.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
THIRD PARTY ALGORITHM,.. _thirdpartyalgorithm-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`Ray <../compatibility/ml-compatibility/ray-compatibility>` [#ray_compat-past-60]_,N/A,N/A,N/A,2.51.1,N/A,N/A,2.48.0.post0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
Thrust,2.5.0,2.5.0,2.3.2,2.3.2,2.3.2,2.3.2,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1 :doc:`llama.cpp <../compatibility/ml-compatibility/llama-cpp-compatibility>` [#llama-cpp_compat-past-60]_,N/A,N/A,N/A,b6652,b6356,b6356,b6356,b5997,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
CUB,2.5.0,2.5.0,2.3.2,2.3.2,2.3.2,2.3.2,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1 :doc:`FlashInfer <../compatibility/ml-compatibility/flashinfer-compatibility>` [#flashinfer_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,v0.2.5,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
,,,,,,,,,,,,,,,, `ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_,1.23.1,1.22.0,1.22.0,1.22.0,1.20.0,1.20.0,1.20.0,1.20.0,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.17.3,1.14.1,1.14.1
KMD & USER SPACE [#kfd_support-past-60]_,.. _kfd-userspace-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,
:doc:`KMD versions <rocm-install-on-linux:reference/user-kernel-space-compat-matrix>`,"6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x","6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x" ,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, THIRD PARTY COMMS,.. _thirdpartycomms-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
ML & COMPUTER VISION,.. _mllibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, `UCC <https://github.com/ROCm/ucc>`_,>=1.4.0,>=1.4.0,>=1.4.0,>=1.4.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.3.0,>=1.2.0,>=1.2.0
:doc:`Composable Kernel <composable_kernel:index>`,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0 `UCX <https://github.com/ROCm/ucx>`_,>=1.17.0,>=1.17.0,>=1.17.0,>=1.17.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.15.0,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1,>=1.14.1
:doc:`MIGraphX <amdmigraphx:index>`,2.12.0,2.12.0,2.11.0,2.11.0,2.11.0,2.11.0,2.10.0,2.10.0,2.10.0,2.10.0,2.9.0,2.9.0,2.9.0,2.9.0,2.8.0,2.8.0 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`MIOpen <miopen:index>`,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.0,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0 THIRD PARTY ALGORITHM,.. _thirdpartyalgorithm-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`MIVisionX <mivisionx:index>`,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0,3.0.0,3.0.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0 Thrust,2.8.5,2.8.5,2.6.0,2.6.0,2.5.0,2.5.0,2.5.0,2.5.0,2.3.2,2.3.2,2.3.2,2.3.2,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
:doc:`rocAL <rocal:index>`,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0,2.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0 CUB,2.8.5,2.8.5,2.6.0,2.6.0,2.5.0,2.5.0,2.5.0,2.5.0,2.3.2,2.3.2,2.3.2,2.3.2,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.1,2.0.1
:doc:`rocDecode <rocdecode:index>`,0.10.0,0.10.0,0.8.0,0.8.0,0.8.0,0.8.0,0.6.0,0.6.0,0.6.0,0.6.0,0.6.0,0.6.0,0.5.0,0.5.0,N/A,N/A ,,,,,,,,,,,,,,,,,,,,,,
:doc:`rocJPEG <rocjpeg:index>`,0.8.0,0.8.0,0.6.0,0.6.0,0.6.0,0.6.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A DRIVER & USER SPACE [#kfd_support-past-60]_,.. _kfd-userspace-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`rocPyDecode <rocpydecode:index>`,0.3.1,0.3.1,0.2.0,0.2.0,0.2.0,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0,N/A,N/A,N/A,N/A,N/A,N/A :doc:`AMD GPU Driver <rocm-install-on-linux:reference/user-kernel-space-compat-matrix>`,"30.20.1, 30.20.0 [#mi325x_KVM-past-60]_, 30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x","30.20.0 [#mi325x_KVM-past-60]_, 30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x","30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x, 6.3.x","30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x, 6.3.x, 6.2.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x","6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x","6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x"
:doc:`RPP <rpp:index>`,1.9.10,1.9.10,1.9.1,1.9.1,1.9.1,1.9.1,1.8.0,1.8.0,1.8.0,1.8.0,1.5.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0 ,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ML & COMPUTER VISION,.. _mllibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
COMMUNICATION,.. _commlibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`Composable Kernel <composable_kernel:index>`,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0
:doc:`RCCL <rccl:index>`,2.22.3,2.22.3,2.21.5,2.21.5,2.21.5,2.21.5,2.20.5,2.20.5,2.20.5,2.20.5,2.18.6,2.18.6,2.18.6,2.18.6,2.18.3,2.18.3 :doc:`MIGraphX <amdmigraphx:index>`,2.14.0,2.14.0,2.13.0,2.13.0,2.12.0,2.12.0,2.12.0,2.12.0,2.11.0,2.11.0,2.11.0,2.11.0,2.10.0,2.10.0,2.10.0,2.10.0,2.9.0,2.9.0,2.9.0,2.9.0,2.8.0,2.8.0
:doc:`rocSHMEM <rocshmem:index>`,2.0.0,2.0.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A :doc:`MIOpen <miopen:index>`,3.5.1,3.5.1,3.5.0,3.5.0,3.4.0,3.4.0,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.0,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
,,,,,,,,,,,,,,,, :doc:`MIVisionX <mivisionx:index>`,3.4.0,3.4.0,3.3.0,3.3.0,3.2.0,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0,3.0.0,3.0.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0,2.5.0
MATH LIBS,.. _mathlibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`rocAL <rocal:index>`,2.4.0,2.4.0,2.3.0,2.3.0,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0,2.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
`half <https://github.com/ROCm/half>`_ ,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0 :doc:`rocDecode <rocdecode:index>`,1.4.0,1.4.0,1.0.0,1.0.0,0.10.0,0.10.0,0.10.0,0.10.0,0.8.0,0.8.0,0.8.0,0.8.0,0.6.0,0.6.0,0.6.0,0.6.0,0.6.0,0.6.0,0.5.0,0.5.0,N/A,N/A
:doc:`hipBLAS <hipblas:index>`,2.4.0,2.4.0,2.3.0,2.3.0,2.3.0,2.3.0,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0 :doc:`rocJPEG <rocjpeg:index>`,1.2.0,1.2.0,1.1.0,1.1.0,0.8.0,0.8.0,0.8.0,0.8.0,0.6.0,0.6.0,0.6.0,0.6.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
:doc:`hipBLASLt <hipblaslt:index>`,0.12.1,0.12.0,0.10.0,0.10.0,0.10.0,0.10.0,0.8.0,0.8.0,0.8.0,0.8.0,0.7.0,0.7.0,0.7.0,0.7.0,0.6.0,0.6.0 :doc:`rocPyDecode <rocpydecode:index>`,0.7.0,0.7.0,0.6.0,0.6.0,0.3.1,0.3.1,0.3.1,0.3.1,0.2.0,0.2.0,0.2.0,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0,N/A,N/A,N/A,N/A,N/A,N/A
:doc:`hipFFT <hipfft:index>`,1.0.18,1.0.18,1.0.17,1.0.17,1.0.17,1.0.17,1.0.16,1.0.15,1.0.15,1.0.14,1.0.14,1.0.14,1.0.14,1.0.14,1.0.13,1.0.13 :doc:`RPP <rpp:index>`,2.1.0,2.1.0,2.0.0,2.0.0,1.9.10,1.9.10,1.9.10,1.9.10,1.9.1,1.9.1,1.9.1,1.9.1,1.8.0,1.8.0,1.8.0,1.8.0,1.5.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0
:doc:`hipfort <hipfort:index>`,0.6.0,0.6.0,0.5.1,0.5.1,0.5.0,0.5.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`hipRAND <hiprand:index>`,2.12.0,2.12.0,2.11.1,2.11.1,2.11.1,2.11.0,2.11.1,2.11.0,2.11.0,2.11.0,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16 COMMUNICATION,.. _commlibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`hipSOLVER <hipsolver:index>`,2.4.0,2.4.0,2.3.0,2.3.0,2.3.0,2.3.0,2.2.0,2.2.0,2.2.0,2.2.0,2.1.1,2.1.1,2.1.1,2.1.0,2.0.0,2.0.0 :doc:`RCCL <rccl:index>`,2.27.7,2.27.7,2.26.6,2.26.6,2.22.3,2.22.3,2.22.3,2.22.3,2.21.5,2.21.5,2.21.5,2.21.5,2.20.5,2.20.5,2.20.5,2.20.5,2.18.6,2.18.6,2.18.6,2.18.6,2.18.3,2.18.3
:doc:`hipSPARSE <hipsparse:index>`,3.2.0,3.2.0,3.1.2,3.1.2,3.1.2,3.1.2,3.1.1,3.1.1,3.1.1,3.1.1,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0 :doc:`rocSHMEM <rocshmem:index>`,3.1.0,3.0.0,3.0.0,3.0.0,2.0.1,2.0.1,2.0.0,2.0.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
:doc:`hipSPARSELt <hipsparselt:index>`,0.2.3,0.2.3,0.2.2,0.2.2,0.2.2,0.2.2,0.2.1,0.2.1,0.2.1,0.2.1,0.2.0,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`rocALUTION <rocalution:index>`,3.2.3,3.2.2,3.2.1,3.2.1,3.2.1,3.2.1,3.2.1,3.2.0,3.2.0,3.2.0,3.1.1,3.1.1,3.1.1,3.1.1,3.0.3,3.0.3 MATH LIBS,.. _mathlibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`rocBLAS <rocblas:index>`,4.4.0,4.4.0,4.3.0,4.3.0,4.3.0,4.3.0,4.2.4,4.2.1,4.2.1,4.2.0,4.1.2,4.1.2,4.1.0,4.1.0,4.0.0,4.0.0 `half <https://github.com/ROCm/half>`_ ,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0,1.12.0
:doc:`rocFFT <rocfft:index>`,1.0.32,1.0.32,1.0.31,1.0.31,1.0.31,1.0.31,1.0.30,1.0.29,1.0.29,1.0.28,1.0.27,1.0.27,1.0.27,1.0.26,1.0.25,1.0.23 :doc:`hipBLAS <hipblas:index>`,3.1.0,3.1.0,3.0.2,3.0.0,2.4.0,2.4.0,2.4.0,2.4.0,2.3.0,2.3.0,2.3.0,2.3.0,2.2.0,2.2.0,2.2.0,2.2.0,2.1.0,2.1.0,2.1.0,2.1.0,2.0.0,2.0.0
:doc:`rocRAND <rocrand:index>`,3.3.0,3.3.0,3.2.0,3.2.0,3.2.0,3.2.0,3.1.1,3.1.0,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,2.10.17 :doc:`hipBLASLt <hipblaslt:index>`,1.1.0,1.1.0,1.0.0,1.0.0,0.12.1,0.12.1,0.12.1,0.12.0,0.10.0,0.10.0,0.10.0,0.10.0,0.8.0,0.8.0,0.8.0,0.8.0,0.7.0,0.7.0,0.7.0,0.7.0,0.6.0,0.6.0
:doc:`rocSOLVER <rocsolver:index>`,3.28.0,3.28.0,3.27.0,3.27.0,3.27.0,3.27.0,3.26.2,3.26.0,3.26.0,3.26.0,3.25.0,3.25.0,3.25.0,3.25.0,3.24.0,3.24.0 :doc:`hipFFT <hipfft:index>`,1.0.21,1.0.21,1.0.20,1.0.20,1.0.18,1.0.18,1.0.18,1.0.18,1.0.17,1.0.17,1.0.17,1.0.17,1.0.16,1.0.15,1.0.15,1.0.14,1.0.14,1.0.14,1.0.14,1.0.14,1.0.13,1.0.13
:doc:`rocSPARSE <rocsparse:index>`,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.1,3.2.0,3.2.0,3.2.0,3.1.2,3.1.2,3.1.2,3.1.2,3.0.2,3.0.2 :doc:`hipfort <hipfort:index>`,0.7.1,0.7.1,0.7.0,0.7.0,0.6.0,0.6.0,0.6.0,0.6.0,0.5.1,0.5.1,0.5.0,0.5.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0
:doc:`rocWMMA <rocwmma:index>`,1.7.0,1.7.0,1.6.0,1.6.0,1.6.0,1.6.0,1.5.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0 :doc:`hipRAND <hiprand:index>`,3.1.0,3.1.0,3.0.0,3.0.0,2.12.0,2.12.0,2.12.0,2.12.0,2.11.1,2.11.1,2.11.1,2.11.0,2.11.1,2.11.0,2.11.0,2.11.0,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16,2.10.16
:doc:`Tensile <tensile:src/index>`,4.43.0,4.43.0,4.42.0,4.42.0,4.42.0,4.42.0,4.41.0,4.41.0,4.41.0,4.41.0,4.40.0,4.40.0,4.40.0,4.40.0,4.39.0,4.39.0 :doc:`hipSOLVER <hipsolver:index>`,3.1.0,3.1.0,3.0.0,3.0.0,2.4.0,2.4.0,2.4.0,2.4.0,2.3.0,2.3.0,2.3.0,2.3.0,2.2.0,2.2.0,2.2.0,2.2.0,2.1.1,2.1.1,2.1.1,2.1.0,2.0.0,2.0.0
,,,,,,,,,,,,,,,, :doc:`hipSPARSE <hipsparse:index>`,4.1.0,4.1.0,4.0.1,4.0.1,3.2.0,3.2.0,3.2.0,3.2.0,3.1.2,3.1.2,3.1.2,3.1.2,3.1.1,3.1.1,3.1.1,3.1.1,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
PRIMITIVES,.. _primitivelibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`hipSPARSELt <hipsparselt:index>`,0.2.5,0.2.5,0.2.4,0.2.4,0.2.3,0.2.3,0.2.3,0.2.3,0.2.2,0.2.2,0.2.2,0.2.2,0.2.1,0.2.1,0.2.1,0.2.1,0.2.0,0.2.0,0.1.0,0.1.0,0.1.0,0.1.0
:doc:`hipCUB <hipcub:index>`,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.1,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0 :doc:`rocALUTION <rocalution:index>`,4.0.1,4.0.1,4.0.0,4.0.0,3.2.3,3.2.3,3.2.3,3.2.2,3.2.1,3.2.1,3.2.1,3.2.1,3.2.1,3.2.0,3.2.0,3.2.0,3.1.1,3.1.1,3.1.1,3.1.1,3.0.3,3.0.3
:doc:`hipTensor <hiptensor:index>`,1.5.0,1.5.0,1.4.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0,1.3.0,1.3.0,1.2.0,1.2.0,1.2.0,1.2.0,1.1.0,1.1.0 :doc:`rocBLAS <rocblas:index>`,5.1.1,5.1.0,5.0.2,5.0.0,4.4.1,4.4.1,4.4.0,4.4.0,4.3.0,4.3.0,4.3.0,4.3.0,4.2.4,4.2.1,4.2.1,4.2.0,4.1.2,4.1.2,4.1.0,4.1.0,4.0.0,4.0.0
:doc:`rocPRIM <rocprim:index>`,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.2,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0 :doc:`rocFFT <rocfft:index>`,1.0.35,1.0.35,1.0.34,1.0.34,1.0.32,1.0.32,1.0.32,1.0.32,1.0.31,1.0.31,1.0.31,1.0.31,1.0.30,1.0.29,1.0.29,1.0.28,1.0.27,1.0.27,1.0.27,1.0.26,1.0.25,1.0.23
:doc:`rocThrust <rocthrust:index>`,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.1.1,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0 :doc:`rocRAND <rocrand:index>`,4.1.0,4.1.0,4.0.0,4.0.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.0,3.2.0,3.2.0,3.2.0,3.1.1,3.1.0,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,2.10.17
,,,,,,,,,,,,,,,, :doc:`rocSOLVER <rocsolver:index>`,3.31.0,3.31.0,3.30.1,3.30.0,3.28.2,3.28.2,3.28.0,3.28.0,3.27.0,3.27.0,3.27.0,3.27.0,3.26.2,3.26.0,3.26.0,3.26.0,3.25.0,3.25.0,3.25.0,3.25.0,3.24.0,3.24.0
SUPPORT LIBS,,,,,,,,,,,,,,,, :doc:`rocSPARSE <rocsparse:index>`,4.1.0,4.1.0,4.0.2,4.0.2,3.4.0,3.4.0,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.1,3.2.0,3.2.0,3.2.0,3.1.2,3.1.2,3.1.2,3.1.2,3.0.2,3.0.2
`hipother <https://github.com/ROCm/hipother>`_,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830 :doc:`rocWMMA <rocwmma:index>`,2.1.0,2.0.0,2.0.0,2.0.0,1.7.0,1.7.0,1.7.0,1.7.0,1.6.0,1.6.0,1.6.0,1.6.0,1.5.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0
`rocm-core <https://github.com/ROCm/rocm-core>`_,6.4.1,6.4.0,6.3.3,6.3.2,6.3.1,6.3.0,6.2.4,6.2.2,6.2.1,6.2.0,6.1.5,6.1.2,6.1.1,6.1.0,6.0.2,6.0.0 :doc:`Tensile <tensile:src/index>`,4.44.0,4.44.0,4.44.0,4.44.0,4.43.0,4.43.0,4.43.0,4.43.0,4.42.0,4.42.0,4.42.0,4.42.0,4.41.0,4.41.0,4.41.0,4.41.0,4.40.0,4.40.0,4.40.0,4.40.0,4.39.0,4.39.0
`ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,20240607.5.7,20240607.5.7,20240607.4.05,20240607.1.4246,20240125.5.08,20240125.5.08,20240125.5.08,20240125.3.30,20231016.2.245,20231016.2.245 ,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, PRIMITIVES,.. _primitivelibs-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
SYSTEM MGMT TOOLS,.. _tools-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`hipCUB <hipcub:index>`,4.1.0,4.1.0,4.0.0,4.0.0,3.4.0,3.4.0,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.1,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`AMD SMI <amdsmi:index>`,25.4.2,25.3.0,24.7.1,24.7.1,24.7.1,24.7.1,24.6.3,24.6.3,24.6.3,24.6.2,24.5.1,24.5.1,24.5.1,24.4.1,23.4.2,23.4.2 :doc:`hipTensor <hiptensor:index>`,2.0.0,2.0.0,2.0.0,2.0.0,1.5.0,1.5.0,1.5.0,1.5.0,1.4.0,1.4.0,1.4.0,1.4.0,1.3.0,1.3.0,1.3.0,1.3.0,1.2.0,1.2.0,1.2.0,1.2.0,1.1.0,1.1.0
:doc:`ROCm Data Center Tool <rdc:index>`,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0 :doc:`rocPRIM <rocprim:index>`,4.1.0,4.1.0,4.0.1,4.0.0,3.4.1,3.4.1,3.4.0,3.4.0,3.3.0,3.3.0,3.3.0,3.3.0,3.2.2,3.2.0,3.2.0,3.2.0,3.1.0,3.1.0,3.1.0,3.1.0,3.0.0,3.0.0
:doc:`rocminfo <rocminfo:index>`,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0 :doc:`rocThrust <rocthrust:index>`,4.1.0,4.1.0,4.0.0,4.0.0,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.3.0,3.1.1,3.1.0,3.1.0,3.0.1,3.0.1,3.0.1,3.0.1,3.0.1,3.0.0,3.0.0
:doc:`ROCm SMI <rocm_smi_lib:index>`,7.5.0,7.5.0,7.4.0,7.4.0,7.4.0,7.4.0,7.3.0,7.3.0,7.3.0,7.3.0,7.2.0,7.2.0,7.0.0,7.0.0,6.0.2,6.0.0 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.0.60204,1.0.60202,1.0.60201,1.0.60200,1.0.60105,1.0.60102,1.0.60101,1.0.60100,1.0.60002,1.0.60000 SUPPORT LIBS,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, `hipother <https://github.com/ROCm/hipother>`_,7.1.52802,7.1.25424,7.0.51831,7.0.51830,6.4.43483,6.4.43483,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
PERFORMANCE TOOLS,,,,,,,,,,,,,,,, `rocm-core <https://github.com/ROCm/rocm-core>`_,7.1.1,7.1.0,7.0.2,7.0.1/7.0.0,6.4.3,6.4.2,6.4.1,6.4.0,6.3.3,6.3.2,6.3.1,6.3.0,6.2.4,6.2.2,6.2.1,6.2.0,6.1.5,6.1.2,6.1.1,6.1.0,6.0.2,6.0.0
:doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>`,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0 `ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,N/A [#ROCT-rocr-past-60]_,20240607.5.7,20240607.5.7,20240607.4.05,20240607.1.4246,20240125.5.08,20240125.5.08,20240125.5.08,20240125.3.30,20231016.2.245,20231016.2.245
:doc:`ROCm Compute Profiler <rocprofiler-compute:index>`,3.1.0,3.1.0,3.0.0,3.0.0,3.0.0,3.0.0,2.0.1,2.0.1,2.0.1,2.0.1,N/A,N/A,N/A,N/A,N/A,N/A ,,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCm Systems Profiler <rocprofiler-systems:index>`,1.0.1,1.0.0,0.1.2,0.1.1,0.1.0,0.1.0,1.11.2,1.11.2,1.11.2,1.11.2,N/A,N/A,N/A,N/A,N/A,N/A SYSTEM MGMT TOOLS,.. _tools-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCProfiler <rocprofiler:index>`,2.0.60401,2.0.60400,2.0.60303,2.0.60302,2.0.60301,2.0.60300,2.0.60204,2.0.60202,2.0.60201,2.0.60200,2.0.60105,2.0.60102,2.0.60101,2.0.60100,2.0.60002,2.0.60000 :doc:`AMD SMI <amdsmi:index>`,26.2.0,26.1.0,26.0.2,26.0.0,25.5.1,25.5.1,25.4.2,25.3.0,24.7.1,24.7.1,24.7.1,24.7.1,24.6.3,24.6.3,24.6.3,24.6.2,24.5.1,24.5.1,24.5.1,24.4.1,23.4.2,23.4.2
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,0.6.0,0.6.0,0.5.0,0.5.0,0.5.0,0.5.0,0.4.0,0.4.0,0.4.0,0.4.0,N/A,N/A,N/A,N/A,N/A,N/A :doc:`ROCm Data Center Tool <rdc:index>`,1.2.0,1.2.0,1.1.0,1.1.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0,0.3.0
:doc:`ROCTracer <roctracer:index>`,4.1.60401,4.1.60400,4.1.60303,4.1.60302,4.1.60301,4.1.60300,4.1.60204,4.1.60202,4.1.60201,4.1.60200,4.1.60105,4.1.60102,4.1.60101,4.1.60100,4.1.60002,4.1.60000 :doc:`rocminfo <rocminfo:index>`,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
,,,,,,,,,,,,,,,, :doc:`ROCm SMI <rocm_smi_lib:index>`,7.8.0,7.8.0,7.8.0,7.8.0,7.7.0,7.5.0,7.5.0,7.5.0,7.4.0,7.4.0,7.4.0,7.4.0,7.3.0,7.3.0,7.3.0,7.3.0,7.2.0,7.2.0,7.0.0,7.0.0,6.0.2,6.0.0
DEVELOPMENT TOOLS,,,,,,,,,,,,,,,, :doc:`ROCm Validation Suite <rocmvalidationsuite:index>`,1.3.0,1.2.0,1.2.0,1.2.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.1.0,1.0.60204,1.0.60202,1.0.60201,1.0.60200,1.0.60105,1.0.60102,1.0.60101,1.0.60100,1.0.60002,1.0.60000
:doc:`HIPIFY <hipify:index>`,19.0.0,19.0.0,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24455,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.13.0,0.13.0,0.13.0,0.13.0,0.12.0,0.12.0,0.12.0,0.12.0,0.11.0,0.11.0 PERFORMANCE TOOLS,,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCdbgapi <rocdbgapi:index>`,0.77.2,0.77.2,0.77.0,0.77.0,0.77.0,0.77.0,0.76.0,0.76.0,0.76.0,0.76.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0 :doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>`,2.6.0,2.6.0,2.6.0,2.6.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0,1.4.0
:doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,14.2.0,14.2.0,14.2.0,14.2.0,14.1.0,14.1.0,14.1.0,14.1.0,13.2.0,13.2.0 :doc:`ROCm Compute Profiler <rocprofiler-compute:index>`,3.3.1,3.3.0,3.2.3,3.2.3,3.1.1,3.1.1,3.1.0,3.1.0,3.0.0,3.0.0,3.0.0,3.0.0,2.0.1,2.0.1,2.0.1,2.0.1,N/A,N/A,N/A,N/A,N/A,N/A
`rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.3.0,0.3.0,0.3.0,0.3.0,N/A,N/A :doc:`ROCm Systems Profiler <rocprofiler-systems:index>`,1.2.1,1.2.0,1.1.1,1.1.0,1.0.2,1.0.2,1.0.1,1.0.0,0.1.2,0.1.1,0.1.0,0.1.0,1.11.2,1.11.2,1.11.2,1.11.2,N/A,N/A,N/A,N/A,N/A,N/A
:doc:`ROCr Debug Agent <rocr_debug_agent:index>`,2.0.4,2.0.4,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3 :doc:`ROCProfiler <rocprofiler:index>`,2.0.70101,2.0.70100,2.0.70002,2.0.70000,2.0.60403,2.0.60402,2.0.60401,2.0.60400,2.0.60303,2.0.60302,2.0.60301,2.0.60300,2.0.60204,2.0.60202,2.0.60201,2.0.60200,2.0.60105,2.0.60102,2.0.60101,2.0.60100,2.0.60002,2.0.60000
,,,,,,,,,,,,,,,, :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`,1.0.0,1.0.0,1.0.0,1.0.0,0.6.0,0.6.0,0.6.0,0.6.0,0.5.0,0.5.0,0.5.0,0.5.0,0.4.0,0.4.0,0.4.0,0.4.0,N/A,N/A,N/A,N/A,N/A,N/A
COMPILERS,.. _compilers-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, :doc:`ROCTracer <roctracer:index>`,4.1.70101,4.1.70100,4.1.70002,4.1.70000,4.1.60403,4.1.60402,4.1.60401,4.1.60400,4.1.60303,4.1.60302,4.1.60301,4.1.60300,4.1.60204,4.1.60202,4.1.60201,4.1.60200,4.1.60105,4.1.60102,4.1.60101,4.1.60100,4.1.60002,4.1.60000
`clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0 ,,,,,,,,,,,,,,,,,,,,,,
:doc:`hipCC <hipcc:index>`,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0 DEVELOPMENT TOOLS,,,,,,,,,,,,,,,,,,,,,,
`Flang <https://github.com/ROCm/flang>`_,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24455,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483 :doc:`HIPIFY <hipify:index>`,20.0.0,20.0.0,20.0.0,20.0.0,19.0.0,19.0.0,19.0.0,19.0.0,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24455,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`llvm-project <llvm-project:index>`,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24491,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483 :doc:`ROCm CMake <rocmcmakebuildtools:index>`,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.14.0,0.13.0,0.13.0,0.13.0,0.13.0,0.12.0,0.12.0,0.12.0,0.12.0,0.11.0,0.11.0
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24491,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483 :doc:`ROCdbgapi <rocdbgapi:index>`,0.77.4,0.77.4,0.77.4,0.77.3,0.77.2,0.77.2,0.77.2,0.77.2,0.77.0,0.77.0,0.77.0,0.77.0,0.76.0,0.76.0,0.76.0,0.76.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0,0.71.0
,,,,,,,,,,,,,,,, :doc:`ROCm Debugger (ROCgdb) <rocgdb:index>`,16.3.0,16.3.0,16.3.0,16.3.0,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,15.2.0,14.2.0,14.2.0,14.2.0,14.2.0,14.1.0,14.1.0,14.1.0,14.1.0,13.2.0,13.2.0
RUNTIMES,.. _runtime-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,, `rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_,0.5.0,0.5.0,0.5.0,0.5.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.4.0,0.3.0,0.3.0,0.3.0,0.3.0,N/A,N/A
:doc:`AMD CLR <hip:understand/amd_clr>`,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830 :doc:`ROCr Debug Agent <rocr_debug_agent:index>`,2.1.0,2.1.0,2.1.0,2.1.0,2.0.4,2.0.4,2.0.4,2.0.4,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3,2.0.3
:doc:`HIP <hip:index>`,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830 ,,,,,,,,,,,,,,,,,,,,,,
`OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0 COMPILERS,.. _compilers-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`ROCr Runtime <rocr-runtime:index>`,1.15.0,1.15.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.13.0,1.13.0,1.13.0,1.13.0,1.13.0,1.12.0,1.12.0 `clang-ocl <https://github.com/ROCm/clang-ocl>`_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0,0.5.0
:doc:`hipCC <hipcc:index>`,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.1.1,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0,1.0.0
`Flang <https://github.com/ROCm/flang>`_,20.0.025444,20.0.025425,20.0.0.25385,20.0.0.25314,19.0.0.25224,19.0.0.25224,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24455,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
:doc:`llvm-project <llvm-project:index>`,20.0.025444,20.0.025425,20.0.0.25385,20.0.0.25314,19.0.0.25224,19.0.0.25224,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24491,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
`OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_,20.0.025444,20.0.025425,20.0.0.25385,20.0.0.25314,19.0.0.25224,19.0.0.25224,19.0.0.25184,19.0.0.25133,18.0.0.25012,18.0.0.25012,18.0.0.24491,18.0.0.24491,18.0.0.24392,18.0.0.24355,18.0.0.24355,18.0.0.24232,17.0.0.24193,17.0.0.24193,17.0.0.24154,17.0.0.24103,17.0.0.24012,17.0.0.23483
,,,,,,,,,,,,,,,,,,,,,,
RUNTIMES,.. _runtime-support-compatibility-matrix-past-60:,,,,,,,,,,,,,,,,,,,,,
:doc:`AMD CLR <hip:understand/amd_clr>`,7.1.52802,7.1.25424,7.0.51831,7.0.51830,6.4.43484,6.4.43484,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
:doc:`HIP <hip:index>`,7.1.52802,7.1.25424,7.0.51831,7.0.51830,6.4.43484,6.4.43484,6.4.43483,6.4.43482,6.3.42134,6.3.42134,6.3.42133,6.3.42131,6.2.41134,6.2.41134,6.2.41134,6.2.41133,6.1.40093,6.1.40093,6.1.40092,6.1.40091,6.1.32831,6.1.32830
`OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0,2.0.0
:doc:`ROCr Runtime <rocr-runtime:index>`,1.18.0,1.18.0,1.18.0,1.18.0,1.15.0,1.15.0,1.15.0,1.15.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.14.0,1.13.0,1.13.0,1.13.0,1.13.0,1.13.0,1.12.0,1.12.0
1 ROCm Version 7.1.1 7.1.0 7.0.2 7.0.1/7.0.0 6.4.3 6.4.2 6.4.1 6.4.0 6.3.3 6.3.2 6.3.1 6.3.0 6.2.4 6.2.2 6.2.1 6.2.0 6.1.5 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
2 :ref:`Operating systems & kernels <OS-kernel-versions>` :ref:`Operating systems & kernels <OS-kernel-versions>` [#os-compatibility-past-60]_ Ubuntu 24.04.3 Ubuntu 24.04.3 Ubuntu 24.04.3 Ubuntu 24.04.3 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.2 Ubuntu 24.04.1, 24.04 Ubuntu 24.04.1, 24.04 Ubuntu 24.04.1, 24.04 Ubuntu 24.04
3 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4 Ubuntu 22.04.5, 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3 Ubuntu 22.04.4, 22.04.3, 22.04.2 Ubuntu 22.04.4, 22.04.3, 22.04.2
4 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5 Ubuntu 20.04.6, 20.04.5
5 RHEL 10.1, 10.0, 9.7, 9.6, 9.4 RHEL 10.0, 9.6, 9.4 RHEL 10.0, 9.6, 9.4 RHEL 9.6, 9.4 RHEL 9.6, 9.4 RHEL 9.6, 9.4 RHEL 9.6, 9.5, 9.4 RHEL 9.5, 9.4 RHEL 9.5, 9.4 RHEL 9.5, 9.4 RHEL 9.5, 9.4 RHEL 9.5, 9.4 RHEL 9.4, 9.3 RHEL 9.4, 9.3 RHEL 9.4, 9.3 RHEL 9.4, 9.3 RHEL 9.4, 9.3, 9.2 RHEL 9.4, 9.3, 9.2 RHEL 9.4, 9.3, 9.2 RHEL 9.4, 9.3, 9.2 RHEL 9.3, 9.2 RHEL 9.3, 9.2
6 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10 RHEL 8.10, 8.9 RHEL 8.10, 8.9 RHEL 8.10, 8.9 RHEL 8.10, 8.9 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8 RHEL 8.9, 8.8
7 SLES 15 SP7 SLES 15 SP7 SLES 15 SP7 SLES 15 SP7 SLES 15 SP7, SP6 SLES 15 SP7, SP6 SLES 15 SP6 SLES 15 SP6 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP6, SP5 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4 SLES 15 SP5, SP4
8 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9 CentOS 7.9
9 Oracle Linux 10, 9, 8 Oracle Linux 10, 9, 8 Oracle Linux 10, 9, 8 Oracle Linux 9, 8 Oracle Linux 9, 8 Oracle Linux 9, 8 Oracle Linux 9, 8 [#mi300x-past-60]_ Oracle Linux 9, 8 Oracle Linux 9, 8 [#mi300x-past-60]_ Oracle Linux 9, 8 Oracle Linux 8.10 [#mi300x-past-60]_ Oracle Linux 8.10 Oracle Linux 8.10 [#mi300x-past-60]_ Oracle Linux 8.10 Oracle Linux 8.10 [#mi300x-past-60]_ Oracle Linux 8.10 Oracle Linux 8.10 [#mi300x-past-60]_ Oracle Linux 8.10 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9 Oracle Linux 8.9 [#mi300x-past-60]_ Oracle Linux 8.9
10 Debian 13, 12 Debian 13, 12 Debian 13, 12 Debian 12 Debian 12 Debian 12 Debian 12 [#single-node-past-60]_ Debian 12 Debian 12 [#single-node-past-60]_ Debian 12 Debian 12 [#single-node-past-60]_ Debian 12 Debian 12 [#single-node-past-60]_ Debian 12 Debian 12 [#single-node-past-60]_ Debian 12
11 Azure Linux 3.0 Azure Linux 3.0 Azure Linux 3.0 Azure Linux 3.0 Azure Linux 3.0 [#mi300x-past-60]_ Azure Linux 3.0 Azure Linux 3.0 [#mi300x-past-60]_ Azure Linux 3.0 Azure Linux 3.0 [#mi300x-past-60]_ Azure Linux 3.0 Azure Linux 3.0 [#mi300x-past-60]_ Azure Linux 3.0
12 Rocky Linux 9 Rocky Linux 9 Rocky Linux 9 Rocky Linux 9 .. _architecture-support-compatibility-matrix-past-60:
13 :doc:`Architecture <rocm-install-on-linux:reference/system-requirements>` .. _architecture-support-compatibility-matrix-past-60: CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3
14 :doc:`Architecture <rocm-install-on-linux:reference/system-requirements>` CDNA4 CDNA4 CDNA4 CDNA4 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2
15 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3 CDNA CDNA3
16 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 RDNA4 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2 CDNA2
17 CDNA CDNA CDNA CDNA CDNA CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA RDNA3 CDNA
18 RDNA4 RDNA4 RDNA4 RDNA4 RDNA4 RDNA4 RDNA2 RDNA4 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2
19 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 .. _gpu-support-compatibility-matrix-past-60: RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3 RDNA3
20 :doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>` RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 gfx1201 [#RDNA-OS-past-60]_ RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2 RDNA2
21 .. _gpu-support-compatibility-matrix-past-60: gfx1200 [#RDNA-OS-past-60]_
22 :doc:`GPU / LLVM target <rocm-install-on-linux:reference/system-requirements>` [#gpu-compatibility-past-60]_ gfx950 gfx950 gfx950 gfx950 gfx1101 [#RDNA-OS-past-60]_
23 gfx1201 gfx1201 gfx1201 gfx1201 gfx1201 gfx1201 gfx1100 gfx1201 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100
24 gfx1200 gfx1200 gfx1200 gfx1200 gfx1200 gfx1200 gfx1030 gfx1200 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030
25 gfx1101 gfx1101 gfx1101 gfx1101 gfx1101 gfx1101 gfx942 gfx1101 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 [#mi300_624-past-60]_ gfx942 [#mi300_622-past-60]_ gfx942 [#mi300_621-past-60]_ gfx942 [#mi300_620-past-60]_ gfx942 [#mi300_612-past-60]_ gfx942 [#mi300_612-past-60]_ gfx942 [#mi300_611-past-60]_ gfx942 [#mi300_610-past-60]_ gfx942 [#mi300_602-past-60]_ gfx942 [#mi300_600-past-60]_
26 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100 gfx90a gfx1100
27 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030 gfx908 gfx1030
28 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942 gfx942
29 FRAMEWORK SUPPORT gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a .. _framework-support-compatibility-matrix-past-60: gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a gfx90a
30 :doc:`PyTorch <../compatibility/ml-compatibility/pytorch-compatibility>` gfx908 gfx908 gfx908 gfx908 gfx908 gfx908 2.6, 2.5, 2.4, 2.3 gfx908 2.6, 2.5, 2.4, 2.3 gfx908 2.4, 2.3, 2.2, 1.13 gfx908 2.4, 2.3, 2.2, 1.13 gfx908 2.4, 2.3, 2.2, 1.13 gfx908 2.4, 2.3, 2.2, 2.1, 2.0, 1.13 gfx908 2.3, 2.2, 2.1, 2.0, 1.13 gfx908 2.3, 2.2, 2.1, 2.0, 1.13 gfx908 2.3, 2.2, 2.1, 2.0, 1.13 gfx908 2.3, 2.2, 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908 2.1, 2.0, 1.13 gfx908
31 :doc:`TensorFlow <../compatibility/ml-compatibility/tensorflow-compatibility>` 2.18.1, 2.17.1, 2.16.2 2.18.1, 2.17.1, 2.16.2 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.14.0, 2.13.1, 2.12.1 2.14.0, 2.13.1, 2.12.1
32 :doc:`JAX <../compatibility/ml-compatibility/jax-compatibility>` FRAMEWORK SUPPORT .. _framework-support-compatibility-matrix-past-60: 0.4.35 0.4.35 0.4.31 0.4.31 0.4.31 0.4.31 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26
33 `ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_ :doc:`PyTorch <../compatibility/ml-compatibility/pytorch-compatibility>` 2.9, 2.8, 2.7 2.8, 2.7, 2.6 2.8, 2.7, 2.6 2.7, 2.6, 2.5 2.6, 2.5, 2.4, 2.3 2.6, 2.5, 2.4, 2.3 1.2 2.6, 2.5, 2.4, 2.3 1.2 2.6, 2.5, 2.4, 2.3 1.17.3 2.4, 2.3, 2.2, 1.13 1.17.3 2.4, 2.3, 2.2, 1.13 1.17.3 2.4, 2.3, 2.2, 1.13 1.17.3 2.4, 2.3, 2.2, 2.1, 2.0, 1.13 1.17.3 2.3, 2.2, 2.1, 2.0, 1.13 1.17.3 2.3, 2.2, 2.1, 2.0, 1.13 1.17.3 2.3, 2.2, 2.1, 2.0, 1.13 1.17.3 2.3, 2.2, 2.1, 2.0, 1.13 1.17.3 2.1, 2.0, 1.13 1.17.3 2.1, 2.0, 1.13 1.17.3 2.1, 2.0, 1.13 1.17.3 2.1, 2.0, 1.13 1.14.1 2.1, 2.0, 1.13 1.14.1 2.1, 2.0, 1.13
34 :doc:`TensorFlow <../compatibility/ml-compatibility/tensorflow-compatibility>` 2.20.0, 2.19.1, 2.18.1 2.20.0, 2.19.1, 2.18.1 2.19.1, 2.18.1, 2.17.1 [#tf-mi350-past-60]_ 2.19.1, 2.18.1, 2.17.1 [#tf-mi350-past-60]_ 2.18.1, 2.17.1, 2.16.2 2.18.1, 2.17.1, 2.16.2 2.18.1, 2.17.1, 2.16.2 2.18.1, 2.17.1, 2.16.2 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.17.0, 2.16.2, 2.15.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.16.1, 2.15.1, 2.14.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.15.0, 2.14.0, 2.13.1 2.14.0, 2.13.1, 2.12.1 2.14.0, 2.13.1, 2.12.1
35 :doc:`JAX <../compatibility/ml-compatibility/jax-compatibility>` 0.7.1 0.7.1 0.6.0 0.6.0 0.4.35 0.4.35 0.4.35 0.4.35 0.4.31 0.4.31 0.4.31 0.4.31 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26 0.4.26
36 THIRD PARTY COMMS :doc:`verl <../compatibility/ml-compatibility/verl-compatibility>` [#verl_compat-past-60]_ N/A N/A N/A 0.6.0 N/A N/A .. _thirdpartycomms-support-compatibility-matrix-past-60: N/A N/A N/A N/A N/A N/A N/A N/A N/A 0.3.0.post0 N/A N/A N/A N/A N/A N/A
37 `UCC <https://github.com/ROCm/ucc>`_ :doc:`Stanford Megatron-LM <../compatibility/ml-compatibility/stanford-megatron-lm-compatibility>` [#stanford-megatron-lm_compat-past-60]_ N/A N/A N/A N/A N/A N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 85f95ae >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.3.0 N/A >=1.2.0 N/A >=1.2.0 N/A
38 `UCX <https://github.com/ROCm/ucx>`_ :doc:`DGL <../compatibility/ml-compatibility/dgl-compatibility>` [#dgl_compat-past-60]_ N/A N/A N/A 2.4.0 2.4.0 N/A >=1.15.0 N/A >=1.15.0 2.4.0 >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.15.0 N/A >=1.14.1 N/A >=1.14.1 N/A >=1.14.1 N/A >=1.14.1 N/A >=1.14.1 N/A >=1.14.1 N/A
39 :doc:`Megablocks <../compatibility/ml-compatibility/megablocks-compatibility>` [#megablocks_compat-past-60]_ N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 0.7.0 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
40 THIRD PARTY ALGORITHM :doc:`Ray <../compatibility/ml-compatibility/ray-compatibility>` [#ray_compat-past-60]_ N/A N/A N/A 2.51.1 N/A N/A .. _thirdpartyalgorithm-support-compatibility-matrix-past-60: 2.48.0.post0 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
41 Thrust :doc:`llama.cpp <../compatibility/ml-compatibility/llama-cpp-compatibility>` [#llama-cpp_compat-past-60]_ N/A N/A N/A b6652 b6356 b6356 2.5.0 b6356 2.5.0 b5997 2.3.2 N/A 2.3.2 N/A 2.3.2 N/A 2.3.2 N/A 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.0.1 N/A 2.0.1 N/A
42 CUB :doc:`FlashInfer <../compatibility/ml-compatibility/flashinfer-compatibility>` [#flashinfer_compat-past-60]_ N/A N/A N/A N/A N/A N/A 2.5.0 v0.2.5 2.5.0 N/A 2.3.2 N/A 2.3.2 N/A 2.3.2 N/A 2.3.2 N/A 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.0.1 N/A 2.0.1 N/A
43 `ONNX Runtime <https://onnxruntime.ai/docs/build/eps.html#amd-migraphx>`_ 1.23.1 1.22.0 1.22.0 1.22.0 1.20.0 1.20.0 1.20.0 1.20.0 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.17.3 1.14.1 1.14.1
44 KMD & USER SPACE [#kfd_support-past-60]_ .. _kfd-userspace-support-compatibility-matrix-past-60:
45 :doc:`KMD versions <rocm-install-on-linux:reference/user-kernel-space-compat-matrix>` 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x 6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x 6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x
46 THIRD PARTY COMMS .. _thirdpartycomms-support-compatibility-matrix-past-60:
47 ML & COMPUTER VISION `UCC <https://github.com/ROCm/ucc>`_ >=1.4.0 >=1.4.0 >=1.4.0 >=1.4.0 >=1.3.0 >=1.3.0 .. _mllibs-support-compatibility-matrix-past-60: >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.3.0 >=1.2.0 >=1.2.0
48 :doc:`Composable Kernel <composable_kernel:index>` `UCX <https://github.com/ROCm/ucx>`_ >=1.17.0 >=1.17.0 >=1.17.0 >=1.17.0 >=1.15.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.15.0 1.1.0 >=1.14.1 1.1.0 >=1.14.1 1.1.0 >=1.14.1 1.1.0 >=1.14.1 1.1.0 >=1.14.1 1.1.0 >=1.14.1
49 :doc:`MIGraphX <amdmigraphx:index>` 2.12.0 2.12.0 2.11.0 2.11.0 2.11.0 2.11.0 2.10.0 2.10.0 2.10.0 2.10.0 2.9.0 2.9.0 2.9.0 2.9.0 2.8.0 2.8.0
50 :doc:`MIOpen <miopen:index>` THIRD PARTY ALGORITHM .. _thirdpartyalgorithm-support-compatibility-matrix-past-60: 3.4.0 3.4.0 3.3.0 3.3.0 3.3.0 3.3.0 3.2.0 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
51 :doc:`MIVisionX <mivisionx:index>` Thrust 2.8.5 2.8.5 2.6.0 2.6.0 2.5.0 2.5.0 3.2.0 2.5.0 3.2.0 2.5.0 3.1.0 2.3.2 3.1.0 2.3.2 3.1.0 2.3.2 3.1.0 2.3.2 3.0.0 2.2.0 3.0.0 2.2.0 3.0.0 2.2.0 3.0.0 2.2.0 2.5.0 2.1.0 2.5.0 2.1.0 2.5.0 2.1.0 2.5.0 2.1.0 2.5.0 2.0.1 2.5.0 2.0.1
52 :doc:`rocAL <rocal:index>` CUB 2.8.5 2.8.5 2.6.0 2.6.0 2.5.0 2.5.0 2.2.0 2.5.0 2.2.0 2.5.0 2.1.0 2.3.2 2.1.0 2.3.2 2.1.0 2.3.2 2.1.0 2.3.2 2.0.0 2.2.0 2.0.0 2.2.0 2.0.0 2.2.0 1.0.0 2.2.0 1.0.0 2.1.0 1.0.0 2.1.0 1.0.0 2.1.0 1.0.0 2.1.0 1.0.0 2.0.1 1.0.0 2.0.1
53 :doc:`rocDecode <rocdecode:index>` 0.10.0 0.10.0 0.8.0 0.8.0 0.8.0 0.8.0 0.6.0 0.6.0 0.6.0 0.6.0 0.6.0 0.6.0 0.5.0 0.5.0 N/A N/A
54 :doc:`rocJPEG <rocjpeg:index>` DRIVER & USER SPACE [#kfd_support-past-60]_ .. _kfd-userspace-support-compatibility-matrix-past-60: 0.8.0 0.8.0 0.6.0 0.6.0 0.6.0 0.6.0 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
55 :doc:`rocPyDecode <rocpydecode:index>` :doc:`AMD GPU Driver <rocm-install-on-linux:reference/user-kernel-space-compat-matrix>` 30.20.1, 30.20.0 [#mi325x_KVM-past-60]_, 30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x 30.20.0 [#mi325x_KVM-past-60]_, 30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x 30.10.2, 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x, 6.3.x 30.10.1 [#driver_patch-past-60]_, 30.10, 6.4.x, 6.3.x, 6.2.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.3.1 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.3.1 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.2.0 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.2.0 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.2.0 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.2.0 6.4.x, 6.3.x, 6.2.x, 6.1.x 0.1.0 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 0.1.0 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 0.1.0 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x 0.1.0 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x N/A 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x N/A 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x N/A 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x N/A 6.4.x, 6.3.x, 6.2.x, 6.1.x, 6.0.x, 5.7.x N/A 6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x N/A 6.2.x, 6.1.x, 6.0.x, 5.7.x, 5.6.x
56 :doc:`RPP <rpp:index>` 1.9.10 1.9.10 1.9.1 1.9.1 1.9.1 1.9.1 1.8.0 1.8.0 1.8.0 1.8.0 1.5.0 1.5.0 1.5.0 1.5.0 1.4.0 1.4.0
57 ML & COMPUTER VISION .. _mllibs-support-compatibility-matrix-past-60:
58 COMMUNICATION :doc:`Composable Kernel <composable_kernel:index>` 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 .. _commlibs-support-compatibility-matrix-past-60: 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0
59 :doc:`RCCL <rccl:index>` :doc:`MIGraphX <amdmigraphx:index>` 2.14.0 2.14.0 2.13.0 2.13.0 2.12.0 2.12.0 2.22.3 2.12.0 2.22.3 2.12.0 2.21.5 2.11.0 2.21.5 2.11.0 2.21.5 2.11.0 2.21.5 2.11.0 2.20.5 2.10.0 2.20.5 2.10.0 2.20.5 2.10.0 2.20.5 2.10.0 2.18.6 2.9.0 2.18.6 2.9.0 2.18.6 2.9.0 2.18.6 2.9.0 2.18.3 2.8.0 2.18.3 2.8.0
60 :doc:`rocSHMEM <rocshmem:index>` :doc:`MIOpen <miopen:index>` 3.5.1 3.5.1 3.5.0 3.5.0 3.4.0 3.4.0 2.0.0 3.4.0 2.0.0 3.4.0 N/A 3.3.0 N/A 3.3.0 N/A 3.3.0 N/A 3.3.0 N/A 3.2.0 N/A 3.2.0 N/A 3.2.0 N/A 3.2.0 N/A 3.1.0 N/A 3.1.0 N/A 3.1.0 N/A 3.1.0 N/A 3.0.0 N/A 3.0.0
61 :doc:`MIVisionX <mivisionx:index>` 3.4.0 3.4.0 3.3.0 3.3.0 3.2.0 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0 3.0.0 3.0.0 2.5.0 2.5.0 2.5.0 2.5.0 2.5.0 2.5.0
62 MATH LIBS :doc:`rocAL <rocal:index>` 2.4.0 2.4.0 2.3.0 2.3.0 2.2.0 2.2.0 .. _mathlibs-support-compatibility-matrix-past-60: 2.2.0 2.2.0 2.1.0 2.1.0 2.1.0 2.1.0 2.0.0 2.0.0 2.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
63 `half <https://github.com/ROCm/half>`_ :doc:`rocDecode <rocdecode:index>` 1.4.0 1.4.0 1.0.0 1.0.0 0.10.0 0.10.0 1.12.0 0.10.0 1.12.0 0.10.0 1.12.0 0.8.0 1.12.0 0.8.0 1.12.0 0.8.0 1.12.0 0.8.0 1.12.0 0.6.0 1.12.0 0.6.0 1.12.0 0.6.0 1.12.0 0.6.0 1.12.0 0.6.0 1.12.0 0.6.0 1.12.0 0.5.0 1.12.0 0.5.0 1.12.0 N/A 1.12.0 N/A
64 :doc:`hipBLAS <hipblas:index>` :doc:`rocJPEG <rocjpeg:index>` 1.2.0 1.2.0 1.1.0 1.1.0 0.8.0 0.8.0 2.4.0 0.8.0 2.4.0 0.8.0 2.3.0 0.6.0 2.3.0 0.6.0 2.3.0 0.6.0 2.3.0 0.6.0 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.2.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.1.0 N/A 2.0.0 N/A 2.0.0 N/A
65 :doc:`hipBLASLt <hipblaslt:index>` :doc:`rocPyDecode <rocpydecode:index>` 0.7.0 0.7.0 0.6.0 0.6.0 0.3.1 0.3.1 0.12.1 0.3.1 0.12.0 0.3.1 0.10.0 0.2.0 0.10.0 0.2.0 0.10.0 0.2.0 0.10.0 0.2.0 0.8.0 0.1.0 0.8.0 0.1.0 0.8.0 0.1.0 0.8.0 0.1.0 0.7.0 N/A 0.7.0 N/A 0.7.0 N/A 0.7.0 N/A 0.6.0 N/A 0.6.0 N/A
66 :doc:`hipFFT <hipfft:index>` :doc:`RPP <rpp:index>` 2.1.0 2.1.0 2.0.0 2.0.0 1.9.10 1.9.10 1.0.18 1.9.10 1.0.18 1.9.10 1.0.17 1.9.1 1.0.17 1.9.1 1.0.17 1.9.1 1.0.17 1.9.1 1.0.16 1.8.0 1.0.15 1.8.0 1.0.15 1.8.0 1.0.14 1.8.0 1.0.14 1.5.0 1.0.14 1.5.0 1.0.14 1.5.0 1.0.14 1.5.0 1.0.13 1.4.0 1.0.13 1.4.0
67 :doc:`hipfort <hipfort:index>` 0.6.0 0.6.0 0.5.1 0.5.1 0.5.0 0.5.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0
68 :doc:`hipRAND <hiprand:index>` COMMUNICATION .. _commlibs-support-compatibility-matrix-past-60: 2.12.0 2.12.0 2.11.1 2.11.1 2.11.1 2.11.0 2.11.1 2.11.0 2.11.0 2.11.0 2.10.16 2.10.16 2.10.16 2.10.16 2.10.16 2.10.16
69 :doc:`hipSOLVER <hipsolver:index>` :doc:`RCCL <rccl:index>` 2.27.7 2.27.7 2.26.6 2.26.6 2.22.3 2.22.3 2.4.0 2.22.3 2.4.0 2.22.3 2.3.0 2.21.5 2.3.0 2.21.5 2.3.0 2.21.5 2.3.0 2.21.5 2.2.0 2.20.5 2.2.0 2.20.5 2.2.0 2.20.5 2.2.0 2.20.5 2.1.1 2.18.6 2.1.1 2.18.6 2.1.1 2.18.6 2.1.0 2.18.6 2.0.0 2.18.3 2.0.0 2.18.3
70 :doc:`hipSPARSE <hipsparse:index>` :doc:`rocSHMEM <rocshmem:index>` 3.1.0 3.0.0 3.0.0 3.0.0 2.0.1 2.0.1 3.2.0 2.0.0 3.2.0 2.0.0 3.1.2 N/A 3.1.2 N/A 3.1.2 N/A 3.1.2 N/A 3.1.1 N/A 3.1.1 N/A 3.1.1 N/A 3.1.1 N/A 3.0.1 N/A 3.0.1 N/A 3.0.1 N/A 3.0.1 N/A 3.0.0 N/A 3.0.0 N/A
71 :doc:`hipSPARSELt <hipsparselt:index>` 0.2.3 0.2.3 0.2.2 0.2.2 0.2.2 0.2.2 0.2.1 0.2.1 0.2.1 0.2.1 0.2.0 0.2.0 0.1.0 0.1.0 0.1.0 0.1.0
72 :doc:`rocALUTION <rocalution:index>` MATH LIBS .. _mathlibs-support-compatibility-matrix-past-60: 3.2.3 3.2.2 3.2.1 3.2.1 3.2.1 3.2.1 3.2.1 3.2.0 3.2.0 3.2.0 3.1.1 3.1.1 3.1.1 3.1.1 3.0.3 3.0.3
73 :doc:`rocBLAS <rocblas:index>` `half <https://github.com/ROCm/half>`_ 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 1.12.0 4.4.0 1.12.0 4.4.0 1.12.0 4.3.0 1.12.0 4.3.0 1.12.0 4.3.0 1.12.0 4.3.0 1.12.0 4.2.4 1.12.0 4.2.1 1.12.0 4.2.1 1.12.0 4.2.0 1.12.0 4.1.2 1.12.0 4.1.2 1.12.0 4.1.0 1.12.0 4.1.0 1.12.0 4.0.0 1.12.0 4.0.0 1.12.0
74 :doc:`rocFFT <rocfft:index>` :doc:`hipBLAS <hipblas:index>` 3.1.0 3.1.0 3.0.2 3.0.0 2.4.0 2.4.0 1.0.32 2.4.0 1.0.32 2.4.0 1.0.31 2.3.0 1.0.31 2.3.0 1.0.31 2.3.0 1.0.31 2.3.0 1.0.30 2.2.0 1.0.29 2.2.0 1.0.29 2.2.0 1.0.28 2.2.0 1.0.27 2.1.0 1.0.27 2.1.0 1.0.27 2.1.0 1.0.26 2.1.0 1.0.25 2.0.0 1.0.23 2.0.0
75 :doc:`rocRAND <rocrand:index>` :doc:`hipBLASLt <hipblaslt:index>` 1.1.0 1.1.0 1.0.0 1.0.0 0.12.1 0.12.1 3.3.0 0.12.1 3.3.0 0.12.0 3.2.0 0.10.0 3.2.0 0.10.0 3.2.0 0.10.0 3.2.0 0.10.0 3.1.1 0.8.0 3.1.0 0.8.0 3.1.0 0.8.0 3.1.0 0.8.0 3.0.1 0.7.0 3.0.1 0.7.0 3.0.1 0.7.0 3.0.1 0.7.0 3.0.0 0.6.0 2.10.17 0.6.0
76 :doc:`rocSOLVER <rocsolver:index>` :doc:`hipFFT <hipfft:index>` 1.0.21 1.0.21 1.0.20 1.0.20 1.0.18 1.0.18 3.28.0 1.0.18 3.28.0 1.0.18 3.27.0 1.0.17 3.27.0 1.0.17 3.27.0 1.0.17 3.27.0 1.0.17 3.26.2 1.0.16 3.26.0 1.0.15 3.26.0 1.0.15 3.26.0 1.0.14 3.25.0 1.0.14 3.25.0 1.0.14 3.25.0 1.0.14 3.25.0 1.0.14 3.24.0 1.0.13 3.24.0 1.0.13
77 :doc:`rocSPARSE <rocsparse:index>` :doc:`hipfort <hipfort:index>` 0.7.1 0.7.1 0.7.0 0.7.0 0.6.0 0.6.0 3.4.0 0.6.0 3.4.0 0.6.0 3.3.0 0.5.1 3.3.0 0.5.1 3.3.0 0.5.0 3.3.0 0.5.0 3.2.1 0.4.0 3.2.0 0.4.0 3.2.0 0.4.0 3.2.0 0.4.0 3.1.2 0.4.0 3.1.2 0.4.0 3.1.2 0.4.0 3.1.2 0.4.0 3.0.2 0.4.0 3.0.2 0.4.0
78 :doc:`rocWMMA <rocwmma:index>` :doc:`hipRAND <hiprand:index>` 3.1.0 3.1.0 3.0.0 3.0.0 2.12.0 2.12.0 1.7.0 2.12.0 1.7.0 2.12.0 1.6.0 2.11.1 1.6.0 2.11.1 1.6.0 2.11.1 1.6.0 2.11.0 1.5.0 2.11.1 1.5.0 2.11.0 1.5.0 2.11.0 1.5.0 2.11.0 1.4.0 2.10.16 1.4.0 2.10.16 1.4.0 2.10.16 1.4.0 2.10.16 1.3.0 2.10.16 1.3.0 2.10.16
79 :doc:`Tensile <tensile:src/index>` :doc:`hipSOLVER <hipsolver:index>` 3.1.0 3.1.0 3.0.0 3.0.0 2.4.0 2.4.0 4.43.0 2.4.0 4.43.0 2.4.0 4.42.0 2.3.0 4.42.0 2.3.0 4.42.0 2.3.0 4.42.0 2.3.0 4.41.0 2.2.0 4.41.0 2.2.0 4.41.0 2.2.0 4.41.0 2.2.0 4.40.0 2.1.1 4.40.0 2.1.1 4.40.0 2.1.1 4.40.0 2.1.0 4.39.0 2.0.0 4.39.0 2.0.0
80 :doc:`hipSPARSE <hipsparse:index>` 4.1.0 4.1.0 4.0.1 4.0.1 3.2.0 3.2.0 3.2.0 3.2.0 3.1.2 3.1.2 3.1.2 3.1.2 3.1.1 3.1.1 3.1.1 3.1.1 3.0.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0
81 PRIMITIVES :doc:`hipSPARSELt <hipsparselt:index>` 0.2.5 0.2.5 0.2.4 0.2.4 0.2.3 0.2.3 .. _primitivelibs-support-compatibility-matrix-past-60: 0.2.3 0.2.3 0.2.2 0.2.2 0.2.2 0.2.2 0.2.1 0.2.1 0.2.1 0.2.1 0.2.0 0.2.0 0.1.0 0.1.0 0.1.0 0.1.0
82 :doc:`hipCUB <hipcub:index>` :doc:`rocALUTION <rocalution:index>` 4.0.1 4.0.1 4.0.0 4.0.0 3.2.3 3.2.3 3.4.0 3.2.3 3.4.0 3.2.2 3.3.0 3.2.1 3.3.0 3.2.1 3.3.0 3.2.1 3.3.0 3.2.1 3.2.1 3.2.0 3.2.0 3.2.0 3.1.0 3.1.1 3.1.0 3.1.1 3.1.0 3.1.1 3.1.0 3.1.1 3.0.0 3.0.3 3.0.0 3.0.3
83 :doc:`hipTensor <hiptensor:index>` :doc:`rocBLAS <rocblas:index>` 5.1.1 5.1.0 5.0.2 5.0.0 4.4.1 4.4.1 1.5.0 4.4.0 1.5.0 4.4.0 1.4.0 4.3.0 1.4.0 4.3.0 1.4.0 4.3.0 1.4.0 4.3.0 1.3.0 4.2.4 1.3.0 4.2.1 1.3.0 4.2.1 1.3.0 4.2.0 1.2.0 4.1.2 1.2.0 4.1.2 1.2.0 4.1.0 1.2.0 4.1.0 1.1.0 4.0.0 1.1.0 4.0.0
84 :doc:`rocPRIM <rocprim:index>` :doc:`rocFFT <rocfft:index>` 1.0.35 1.0.35 1.0.34 1.0.34 1.0.32 1.0.32 3.4.0 1.0.32 3.4.0 1.0.32 3.3.0 1.0.31 3.3.0 1.0.31 3.3.0 1.0.31 3.3.0 1.0.31 3.2.2 1.0.30 3.2.0 1.0.29 3.2.0 1.0.29 3.2.0 1.0.28 3.1.0 1.0.27 3.1.0 1.0.27 3.1.0 1.0.27 3.1.0 1.0.26 3.0.0 1.0.25 3.0.0 1.0.23
85 :doc:`rocThrust <rocthrust:index>` :doc:`rocRAND <rocrand:index>` 4.1.0 4.1.0 4.0.0 4.0.0 3.3.0 3.3.0 3.3.0 3.3.0 3.3.0 3.2.0 3.3.0 3.2.0 3.3.0 3.2.0 3.3.0 3.2.0 3.1.1 3.1.0 3.1.0 3.0.1 3.1.0 3.0.1 3.0.1 3.0.1 3.0.1 3.0.0 3.0.0 2.10.17
86 :doc:`rocSOLVER <rocsolver:index>` 3.31.0 3.31.0 3.30.1 3.30.0 3.28.2 3.28.2 3.28.0 3.28.0 3.27.0 3.27.0 3.27.0 3.27.0 3.26.2 3.26.0 3.26.0 3.26.0 3.25.0 3.25.0 3.25.0 3.25.0 3.24.0 3.24.0
87 SUPPORT LIBS :doc:`rocSPARSE <rocsparse:index>` 4.1.0 4.1.0 4.0.2 4.0.2 3.4.0 3.4.0 3.4.0 3.4.0 3.3.0 3.3.0 3.3.0 3.3.0 3.2.1 3.2.0 3.2.0 3.2.0 3.1.2 3.1.2 3.1.2 3.1.2 3.0.2 3.0.2
88 `hipother <https://github.com/ROCm/hipother>`_ :doc:`rocWMMA <rocwmma:index>` 2.1.0 2.0.0 2.0.0 2.0.0 1.7.0 1.7.0 6.4.43483 1.7.0 6.4.43482 1.7.0 6.3.42134 1.6.0 6.3.42134 1.6.0 6.3.42133 1.6.0 6.3.42131 1.6.0 6.2.41134 1.5.0 6.2.41134 1.5.0 6.2.41134 1.5.0 6.2.41133 1.5.0 6.1.40093 1.4.0 6.1.40093 1.4.0 6.1.40092 1.4.0 6.1.40091 1.4.0 6.1.32831 1.3.0 6.1.32830 1.3.0
89 `rocm-core <https://github.com/ROCm/rocm-core>`_ :doc:`Tensile <tensile:src/index>` 4.44.0 4.44.0 4.44.0 4.44.0 4.43.0 4.43.0 6.4.1 4.43.0 6.4.0 4.43.0 6.3.3 4.42.0 6.3.2 4.42.0 6.3.1 4.42.0 6.3.0 4.42.0 6.2.4 4.41.0 6.2.2 4.41.0 6.2.1 4.41.0 6.2.0 4.41.0 6.1.5 4.40.0 6.1.2 4.40.0 6.1.1 4.40.0 6.1.0 4.40.0 6.0.2 4.39.0 6.0.0 4.39.0
90 `ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ 20240607.5.7 20240607.5.7 20240607.4.05 20240607.1.4246 20240125.5.08 20240125.5.08 20240125.5.08 20240125.3.30 20231016.2.245 20231016.2.245
91 PRIMITIVES .. _primitivelibs-support-compatibility-matrix-past-60:
92 SYSTEM MGMT TOOLS :doc:`hipCUB <hipcub:index>` 4.1.0 4.1.0 4.0.0 4.0.0 3.4.0 3.4.0 .. _tools-support-compatibility-matrix-past-60: 3.4.0 3.4.0 3.3.0 3.3.0 3.3.0 3.3.0 3.2.1 3.2.0 3.2.0 3.2.0 3.1.0 3.1.0 3.1.0 3.1.0 3.0.0 3.0.0
93 :doc:`AMD SMI <amdsmi:index>` :doc:`hipTensor <hiptensor:index>` 2.0.0 2.0.0 2.0.0 2.0.0 1.5.0 1.5.0 25.4.2 1.5.0 25.3.0 1.5.0 24.7.1 1.4.0 24.7.1 1.4.0 24.7.1 1.4.0 24.7.1 1.4.0 24.6.3 1.3.0 24.6.3 1.3.0 24.6.3 1.3.0 24.6.2 1.3.0 24.5.1 1.2.0 24.5.1 1.2.0 24.5.1 1.2.0 24.4.1 1.2.0 23.4.2 1.1.0 23.4.2 1.1.0
94 :doc:`ROCm Data Center Tool <rdc:index>` :doc:`rocPRIM <rocprim:index>` 4.1.0 4.1.0 4.0.1 4.0.0 3.4.1 3.4.1 0.3.0 3.4.0 0.3.0 3.4.0 0.3.0 3.3.0 0.3.0 3.3.0 0.3.0 3.3.0 0.3.0 3.3.0 0.3.0 3.2.2 0.3.0 3.2.0 0.3.0 3.2.0 0.3.0 3.2.0 0.3.0 3.1.0 0.3.0 3.1.0 0.3.0 3.1.0 0.3.0 3.1.0 0.3.0 3.0.0 0.3.0 3.0.0
95 :doc:`rocminfo <rocminfo:index>` :doc:`rocThrust <rocthrust:index>` 4.1.0 4.1.0 4.0.0 4.0.0 3.3.0 3.3.0 1.0.0 3.3.0 1.0.0 3.3.0 1.0.0 3.3.0 1.0.0 3.3.0 1.0.0 3.3.0 1.0.0 3.3.0 1.0.0 3.1.1 1.0.0 3.1.0 1.0.0 3.1.0 1.0.0 3.0.1 1.0.0 3.0.1 1.0.0 3.0.1 1.0.0 3.0.1 1.0.0 3.0.1 1.0.0 3.0.0 1.0.0 3.0.0
96 :doc:`ROCm SMI <rocm_smi_lib:index>` 7.5.0 7.5.0 7.4.0 7.4.0 7.4.0 7.4.0 7.3.0 7.3.0 7.3.0 7.3.0 7.2.0 7.2.0 7.0.0 7.0.0 6.0.2 6.0.0
97 :doc:`ROCm Validation Suite <rocmvalidationsuite:index>` SUPPORT LIBS 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.0.60204 1.0.60202 1.0.60201 1.0.60200 1.0.60105 1.0.60102 1.0.60101 1.0.60100 1.0.60002 1.0.60000
98 `hipother <https://github.com/ROCm/hipother>`_ 7.1.52802 7.1.25424 7.0.51831 7.0.51830 6.4.43483 6.4.43483 6.4.43483 6.4.43482 6.3.42134 6.3.42134 6.3.42133 6.3.42131 6.2.41134 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
99 PERFORMANCE TOOLS `rocm-core <https://github.com/ROCm/rocm-core>`_ 7.1.1 7.1.0 7.0.2 7.0.1/7.0.0 6.4.3 6.4.2 6.4.1 6.4.0 6.3.3 6.3.2 6.3.1 6.3.0 6.2.4 6.2.2 6.2.1 6.2.0 6.1.5 6.1.2 6.1.1 6.1.0 6.0.2 6.0.0
100 :doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>` `ROCT-Thunk-Interface <https://github.com/ROCm/ROCT-Thunk-Interface>`_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 N/A [#ROCT-rocr-past-60]_ 1.4.0 20240607.5.7 1.4.0 20240607.5.7 1.4.0 20240607.4.05 1.4.0 20240607.1.4246 1.4.0 20240125.5.08 1.4.0 20240125.5.08 1.4.0 20240125.5.08 1.4.0 20240125.3.30 1.4.0 20231016.2.245 1.4.0 20231016.2.245
101 :doc:`ROCm Compute Profiler <rocprofiler-compute:index>` 3.1.0 3.1.0 3.0.0 3.0.0 3.0.0 3.0.0 2.0.1 2.0.1 2.0.1 2.0.1 N/A N/A N/A N/A N/A N/A
102 :doc:`ROCm Systems Profiler <rocprofiler-systems:index>` SYSTEM MGMT TOOLS .. _tools-support-compatibility-matrix-past-60: 1.0.1 1.0.0 0.1.2 0.1.1 0.1.0 0.1.0 1.11.2 1.11.2 1.11.2 1.11.2 N/A N/A N/A N/A N/A N/A
103 :doc:`ROCProfiler <rocprofiler:index>` :doc:`AMD SMI <amdsmi:index>` 26.2.0 26.1.0 26.0.2 26.0.0 25.5.1 25.5.1 2.0.60401 25.4.2 2.0.60400 25.3.0 2.0.60303 24.7.1 2.0.60302 24.7.1 2.0.60301 24.7.1 2.0.60300 24.7.1 2.0.60204 24.6.3 2.0.60202 24.6.3 2.0.60201 24.6.3 2.0.60200 24.6.2 2.0.60105 24.5.1 2.0.60102 24.5.1 2.0.60101 24.5.1 2.0.60100 24.4.1 2.0.60002 23.4.2 2.0.60000 23.4.2
104 :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>` :doc:`ROCm Data Center Tool <rdc:index>` 1.2.0 1.2.0 1.1.0 1.1.0 0.3.0 0.3.0 0.6.0 0.3.0 0.6.0 0.3.0 0.5.0 0.3.0 0.5.0 0.3.0 0.5.0 0.3.0 0.5.0 0.3.0 0.4.0 0.3.0 0.4.0 0.3.0 0.4.0 0.3.0 0.4.0 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A 0.3.0
105 :doc:`ROCTracer <roctracer:index>` :doc:`rocminfo <rocminfo:index>` 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 4.1.60401 1.0.0 4.1.60400 1.0.0 4.1.60303 1.0.0 4.1.60302 1.0.0 4.1.60301 1.0.0 4.1.60300 1.0.0 4.1.60204 1.0.0 4.1.60202 1.0.0 4.1.60201 1.0.0 4.1.60200 1.0.0 4.1.60105 1.0.0 4.1.60102 1.0.0 4.1.60101 1.0.0 4.1.60100 1.0.0 4.1.60002 1.0.0 4.1.60000 1.0.0
106 :doc:`ROCm SMI <rocm_smi_lib:index>` 7.8.0 7.8.0 7.8.0 7.8.0 7.7.0 7.5.0 7.5.0 7.5.0 7.4.0 7.4.0 7.4.0 7.4.0 7.3.0 7.3.0 7.3.0 7.3.0 7.2.0 7.2.0 7.0.0 7.0.0 6.0.2 6.0.0
107 DEVELOPMENT TOOLS :doc:`ROCm Validation Suite <rocmvalidationsuite:index>` 1.3.0 1.2.0 1.2.0 1.2.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.0.60204 1.0.60202 1.0.60201 1.0.60200 1.0.60105 1.0.60102 1.0.60101 1.0.60100 1.0.60002 1.0.60000
108 :doc:`HIPIFY <hipify:index>` 19.0.0 19.0.0 18.0.0.25012 18.0.0.25012 18.0.0.24491 18.0.0.24455 18.0.0.24392 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
109 :doc:`ROCm CMake <rocmcmakebuildtools:index>` PERFORMANCE TOOLS 0.14.0 0.14.0 0.14.0 0.14.0 0.14.0 0.14.0 0.13.0 0.13.0 0.13.0 0.13.0 0.12.0 0.12.0 0.12.0 0.12.0 0.11.0 0.11.0
110 :doc:`ROCdbgapi <rocdbgapi:index>` :doc:`ROCm Bandwidth Test <rocm_bandwidth_test:index>` 2.6.0 2.6.0 2.6.0 2.6.0 1.4.0 1.4.0 0.77.2 1.4.0 0.77.2 1.4.0 0.77.0 1.4.0 0.77.0 1.4.0 0.77.0 1.4.0 0.77.0 1.4.0 0.76.0 1.4.0 0.76.0 1.4.0 0.76.0 1.4.0 0.76.0 1.4.0 0.71.0 1.4.0 0.71.0 1.4.0 0.71.0 1.4.0 0.71.0 1.4.0 0.71.0 1.4.0 0.71.0 1.4.0
111 :doc:`ROCm Debugger (ROCgdb) <rocgdb:index>` :doc:`ROCm Compute Profiler <rocprofiler-compute:index>` 3.3.1 3.3.0 3.2.3 3.2.3 3.1.1 3.1.1 15.2.0 3.1.0 15.2.0 3.1.0 15.2.0 3.0.0 15.2.0 3.0.0 15.2.0 3.0.0 15.2.0 3.0.0 14.2.0 2.0.1 14.2.0 2.0.1 14.2.0 2.0.1 14.2.0 2.0.1 14.1.0 N/A 14.1.0 N/A 14.1.0 N/A 14.1.0 N/A 13.2.0 N/A 13.2.0 N/A
112 `rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_ :doc:`ROCm Systems Profiler <rocprofiler-systems:index>` 1.2.1 1.2.0 1.1.1 1.1.0 1.0.2 1.0.2 0.4.0 1.0.1 0.4.0 1.0.0 0.4.0 0.1.2 0.4.0 0.1.1 0.4.0 0.1.0 0.4.0 0.1.0 0.4.0 1.11.2 0.4.0 1.11.2 0.4.0 1.11.2 0.4.0 1.11.2 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A 0.3.0 N/A N/A N/A
113 :doc:`ROCr Debug Agent <rocr_debug_agent:index>` :doc:`ROCProfiler <rocprofiler:index>` 2.0.70101 2.0.70100 2.0.70002 2.0.70000 2.0.60403 2.0.60402 2.0.4 2.0.60401 2.0.4 2.0.60400 2.0.3 2.0.60303 2.0.3 2.0.60302 2.0.3 2.0.60301 2.0.3 2.0.60300 2.0.3 2.0.60204 2.0.3 2.0.60202 2.0.3 2.0.60201 2.0.3 2.0.60200 2.0.3 2.0.60105 2.0.3 2.0.60102 2.0.3 2.0.60101 2.0.3 2.0.60100 2.0.3 2.0.60002 2.0.3 2.0.60000
114 :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>` 1.0.0 1.0.0 1.0.0 1.0.0 0.6.0 0.6.0 0.6.0 0.6.0 0.5.0 0.5.0 0.5.0 0.5.0 0.4.0 0.4.0 0.4.0 0.4.0 N/A N/A N/A N/A N/A N/A
115 COMPILERS :doc:`ROCTracer <roctracer:index>` 4.1.70101 4.1.70100 4.1.70002 4.1.70000 4.1.60403 4.1.60402 .. _compilers-support-compatibility-matrix-past-60: 4.1.60401 4.1.60400 4.1.60303 4.1.60302 4.1.60301 4.1.60300 4.1.60204 4.1.60202 4.1.60201 4.1.60200 4.1.60105 4.1.60102 4.1.60101 4.1.60100 4.1.60002 4.1.60000
116 `clang-ocl <https://github.com/ROCm/clang-ocl>`_ N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0
117 :doc:`hipCC <hipcc:index>` DEVELOPMENT TOOLS 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
118 `Flang <https://github.com/ROCm/flang>`_ :doc:`HIPIFY <hipify:index>` 20.0.0 20.0.0 20.0.0 20.0.0 19.0.0 19.0.0 19.0.0.25184 19.0.0 19.0.0.25133 19.0.0 18.0.0.25012 18.0.0.25012 18.0.0.24491 18.0.0.24455 18.0.0.24392 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
119 :doc:`llvm-project <llvm-project:index>` :doc:`ROCm CMake <rocmcmakebuildtools:index>` 0.14.0 0.14.0 0.14.0 0.14.0 0.14.0 0.14.0 19.0.0.25184 0.14.0 19.0.0.25133 0.14.0 18.0.0.25012 0.14.0 18.0.0.25012 0.14.0 18.0.0.24491 0.14.0 18.0.0.24491 0.14.0 18.0.0.24392 0.13.0 18.0.0.24355 0.13.0 18.0.0.24355 0.13.0 18.0.0.24232 0.13.0 17.0.0.24193 0.12.0 17.0.0.24193 0.12.0 17.0.0.24154 0.12.0 17.0.0.24103 0.12.0 17.0.0.24012 0.11.0 17.0.0.23483 0.11.0
120 `OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_ :doc:`ROCdbgapi <rocdbgapi:index>` 0.77.4 0.77.4 0.77.4 0.77.3 0.77.2 0.77.2 19.0.0.25184 0.77.2 19.0.0.25133 0.77.2 18.0.0.25012 0.77.0 18.0.0.25012 0.77.0 18.0.0.24491 0.77.0 18.0.0.24491 0.77.0 18.0.0.24392 0.76.0 18.0.0.24355 0.76.0 18.0.0.24355 0.76.0 18.0.0.24232 0.76.0 17.0.0.24193 0.71.0 17.0.0.24193 0.71.0 17.0.0.24154 0.71.0 17.0.0.24103 0.71.0 17.0.0.24012 0.71.0 17.0.0.23483 0.71.0
121 :doc:`ROCm Debugger (ROCgdb) <rocgdb:index>` 16.3.0 16.3.0 16.3.0 16.3.0 15.2.0 15.2.0 15.2.0 15.2.0 15.2.0 15.2.0 15.2.0 15.2.0 14.2.0 14.2.0 14.2.0 14.2.0 14.1.0 14.1.0 14.1.0 14.1.0 13.2.0 13.2.0
122 RUNTIMES `rocprofiler-register <https://github.com/ROCm/rocprofiler-register>`_ 0.5.0 0.5.0 0.5.0 0.5.0 0.4.0 0.4.0 .. _runtime-support-compatibility-matrix-past-60: 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.4.0 0.3.0 0.3.0 0.3.0 0.3.0 N/A N/A
123 :doc:`AMD CLR <hip:understand/amd_clr>` :doc:`ROCr Debug Agent <rocr_debug_agent:index>` 2.1.0 2.1.0 2.1.0 2.1.0 2.0.4 2.0.4 6.4.43483 2.0.4 6.4.43482 2.0.4 6.3.42134 2.0.3 6.3.42134 2.0.3 6.3.42133 2.0.3 6.3.42131 2.0.3 6.2.41134 2.0.3 6.2.41134 2.0.3 6.2.41134 2.0.3 6.2.41133 2.0.3 6.1.40093 2.0.3 6.1.40093 2.0.3 6.1.40092 2.0.3 6.1.40091 2.0.3 6.1.32831 2.0.3 6.1.32830 2.0.3
124 :doc:`HIP <hip:index>` 6.4.43483 6.4.43482 6.3.42134 6.3.42134 6.3.42133 6.3.42131 6.2.41134 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
125 `OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_ COMPILERS .. _compilers-support-compatibility-matrix-past-60: 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0
126 :doc:`ROCr Runtime <rocr-runtime:index>` `clang-ocl <https://github.com/ROCm/clang-ocl>`_ N/A N/A N/A N/A N/A N/A 1.15.0 N/A 1.15.0 N/A 1.14.0 N/A 1.14.0 N/A 1.14.0 N/A 1.14.0 N/A 1.14.0 N/A 1.14.0 N/A 1.14.0 N/A 1.13.0 N/A 1.13.0 0.5.0 1.13.0 0.5.0 1.13.0 0.5.0 1.13.0 0.5.0 1.12.0 0.5.0 1.12.0 0.5.0
127 :doc:`hipCC <hipcc:index>` 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 1.0.0
128 `Flang <https://github.com/ROCm/flang>`_ 20.0.025444 20.0.025425 20.0.0.25385 20.0.0.25314 19.0.0.25224 19.0.0.25224 19.0.0.25184 19.0.0.25133 18.0.0.25012 18.0.0.25012 18.0.0.24491 18.0.0.24455 18.0.0.24392 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
129 :doc:`llvm-project <llvm-project:index>` 20.0.025444 20.0.025425 20.0.0.25385 20.0.0.25314 19.0.0.25224 19.0.0.25224 19.0.0.25184 19.0.0.25133 18.0.0.25012 18.0.0.25012 18.0.0.24491 18.0.0.24491 18.0.0.24392 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
130 `OpenMP <https://github.com/ROCm/llvm-project/tree/amd-staging/openmp>`_ 20.0.025444 20.0.025425 20.0.0.25385 20.0.0.25314 19.0.0.25224 19.0.0.25224 19.0.0.25184 19.0.0.25133 18.0.0.25012 18.0.0.25012 18.0.0.24491 18.0.0.24491 18.0.0.24392 18.0.0.24355 18.0.0.24355 18.0.0.24232 17.0.0.24193 17.0.0.24193 17.0.0.24154 17.0.0.24103 17.0.0.24012 17.0.0.23483
131
132 RUNTIMES .. _runtime-support-compatibility-matrix-past-60:
133 :doc:`AMD CLR <hip:understand/amd_clr>` 7.1.52802 7.1.25424 7.0.51831 7.0.51830 6.4.43484 6.4.43484 6.4.43483 6.4.43482 6.3.42134 6.3.42134 6.3.42133 6.3.42131 6.2.41134 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
134 :doc:`HIP <hip:index>` 7.1.52802 7.1.25424 7.0.51831 7.0.51830 6.4.43484 6.4.43484 6.4.43483 6.4.43482 6.3.42134 6.3.42134 6.3.42133 6.3.42131 6.2.41134 6.2.41134 6.2.41134 6.2.41133 6.1.40093 6.1.40093 6.1.40092 6.1.40091 6.1.32831 6.1.32830
135 `OpenCL Runtime <https://github.com/ROCm/clr/tree/develop/opencl>`_ 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0
136 :doc:`ROCr Runtime <rocr-runtime:index>` 1.18.0 1.18.0 1.18.0 1.18.0 1.15.0 1.15.0 1.15.0 1.15.0 1.14.0 1.14.0 1.14.0 1.14.0 1.14.0 1.14.0 1.14.0 1.13.0 1.13.0 1.13.0 1.13.0 1.13.0 1.12.0 1.12.0

Some files were not shown because too many files have changed in this diff Show More