Skip to content
55 changes: 47 additions & 8 deletions project-infrastructure/project-ci-documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,27 +99,66 @@ Software Versions:
oneDAL
------

Representative: Nikolay Petrov
Representative: Nikolay Petrov[https://github.com/napetrov]
Comment thread
napetrov marked this conversation as resolved.
Outdated

Support contact for CI:
Support contacts for CI:

| Area | Owner |
| ------------------ | ----------------------------------------------------------------------------------------------- |
| AArch64 | Hamza Butt[https://github.com/theComputeKid] Rakshith G B[https://github.com/rakshithgb-fujitsu]|
| RISC-V | Keeran Rothenfusser[https://github.com/keeranroth] |
| x64, new platforms | Nikolay Petrov[https://github.com/napetrov] |

More details available in - https://github.com/uxlfoundation/oneDAL/blob/main/MAINTAINERS.md

*Existing public CI*

| Owner | Type | OS | Number | Active? | How to access logs |
oneDAL

| Platform | Type | OS | Number | Active? | Comments |
| --- | --- | --- | --- | --- | --- |
| ? | ? | ? | ? | ? | ? |
| Github | CPU AArch64 | Linux | 2 | Yes | 2 Pipelines on Physical ARM systems Github hosted and ARM hosted. ci-aarch64.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/ci-aarch64.yml] |
| Github | Intel GPU (ICX compiler) | Linux | 1 | Yes* | Pipelene configured for GPU valdiation on uxlfoundation GPU runners, currently disabled due to issues with Tiber Cloud. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/ci.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Github | ABI conformance | Linux | 1 | Yes | 2 Pipelines on Physical ARM systems Github hosted and ARM hosted. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/ci.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Github | Docker validation | Linux | 1 | Yes | Validation of oneDAL development env docker file. docker-validation-ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/docker-validation-ci.yml] |
| Github | CPU Nightly | Linux, Windwos | 2 | Yes | Nightly builds and broaer validation for oneDAL. nightly-build.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/nightly-build.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There was some talk on separating the Nightly CI from those needed for PR acceptance: #218 (comment)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interesting - this puts whole another question on separation between PR level checks, CI level and scheduled tasks

| Github | Copyright headers check | Linux | 1 | Yes | Check for proper copyright headers. skywalking-eyes.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/skywalking-eyes.yml] |
| Github | PR checklist validation | Linux | 1 | Yes | Validation of PR conformacne. pr-checklist.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/pr-checklist.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Github | Documentation deployment to gh-pages | Linux | 1 | Yes | Automatic docs deployemnt with release tag creation. docs-release.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/workflows/docs-release.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Mergify | Helper automation for merges/backporting | Linux | 1 | Yes | Automated labels asigment, removal of renovate branches. .mergify.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.github/.mergify.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Renovate | Automated dependency upadates | Linux | 1 | Yes | Dependabot alternative, manages dependency updates for components. renovate.json[https://github.com/uxlfoundation/oneDAL/blob/main/.github/renovate.json] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Azure DevOps | Clang format check| Linux | 1 | Yes | Enforce coding standards. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.ci/pipeline/ci.yml] |
| Azure DevOps | CI build/test for x86/ARM/RISC-V with OS compilers | Linux, Windows | 8 | Yes | Intel build natively, ARM and RISC-V with crosplatform build and QEMU emulation. Build with GCC/VC compilers. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.ci/pipeline/ci.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Azure DevOps | CI build/test with Bazel | Linux | 1 | Yes | Bazel based build and validation. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.ci/pipeline/ci.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Azure DevOps | oneDAL documentation build | Linux | 1 | Yes | Build documentation for validation purposese in CI. docs.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.ci/pipeline/docs.yml] |
Comment thread
napetrov marked this conversation as resolved.
Outdated
| Azure DevOps | sklearnex validation | Linux | 1 | Yes | Checking out sklearnex sources, doing build and validation with oneDAL PR changes. ci.yml[https://github.com/uxlfoundation/oneDAL/blob/main/.ci/pipeline/ci.yml] |
| Codefactor | Codefactor checks | N/A | 1 | Yes | Enforcing code checks in PRs, Bandit, and other code quality checks. Codefactor[https://www.codefactor.io/repository/github/uxlfoundation/onedal] |


*Required Public CI Infrastruture Needed To Confidently Accept Contributions*
Currently internal intel CI validation is requred for code verification.
Comment thread
napetrov marked this conversation as resolved.
Outdated
Intel employees can start internal CI with comment "/intelci: run" and corresponding CI would be triggered.
It's not possible to access logs without access to Intel network
Comment thread
napetrov marked this conversation as resolved.
Outdated

Migration to public validation is possible but would requere more x86 systems availabe in public - currenlty public validation covers only ~20% in validation scopes
Comment thread
napetrov marked this conversation as resolved.
Outdated
Comment thread
napetrov marked this conversation as resolved.
Outdated

| Instruction set architecture | Hardware Vendor | Processor Type | Operating System |
| --- | --- | --- | --- |
| x86 | Intel | CPU | Ubuntu |
| x86 | Intel | CPU | Ubuntu, Windows |
| AArch64 | Arm | CPU | Ubuntu |
| Xe, Xe2, Xe3 | Intel | GPU | Ubuntu, Windows |

Software Versions:
* CMake
* glibc
* ...
* C/C++ Compiler
* DPC++ Compiler and oneMKL if building with SYCL support
* BLAS and LAPACK libraries - both provided by oneMKL or openBLAS could be used
* Python version 3.9 or higher
* oneTBB library (repository contains script to download it)
* oneDPL library if building with SYCL support
* Microsoft Visual Studio* (Windows* only)
* MSYS2 (Windows* only)
* make and dos2unix tools
Full list of SW requerements and steps defined in INSTALL.md[https://github.com/uxlfoundation/oneDAL/blob/main/INSTALL.md]
Comment thread
napetrov marked this conversation as resolved.
Outdated

oneCCL
------
Expand Down